:root{color:#152336;background:#f5f6f8;font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--brand: #277eff;--brand-dark: #1a6ade;--brand-soft: #f0f6ff;--ink: #152336;--muted: #66728f;--line: #e4e7ed;--surface: #ffffff;--success: #168568;--success-soft: #eaf7f3;--danger: #c53d3d;--danger-soft: #fff0f0;--focus: #277eff}*{box-sizing:border-box}html{background:#f5f6f8}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.app-shell{min-height:100vh;padding-bottom:calc(84px + env(safe-area-inset-bottom))}.app-header{position:sticky;z-index:20;top:0;display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 max(16px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.app-header__brand{display:flex;align-items:center;gap:10px}.app-header__brand img{flex:none}.app-header__brand div{display:grid;gap:1px}.app-header__brand strong{font-size:16px}.app-header__brand span{color:var(--muted);font-size:11px}.app-header>button{display:grid;width:40px;height:40px;padding:0;place-items:center;border:0;border-radius:50%;color:#66728f;background:transparent}.app-header>button:active{color:var(--brand);background:var(--brand-soft)}.app-content{width:min(100%,720px);margin:0 auto}.voice-tool{position:relative;min-height:300px;padding:22px 20px 20px;overflow:hidden;border-bottom:1px solid var(--line);background:var(--surface);text-align:center}.voice-tool__status{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px}.voice-tool__status time{margin-left:auto;color:var(--ink);font-variant-numeric:tabular-nums}.voice-tool__status-dot{width:8px;height:8px;border-radius:50%;background:#a9adb4}.voice-tool--recording .voice-tool__status-dot{background:var(--danger);box-shadow:0 0 0 5px #c53d3d1f}.voice-tool__wave{display:flex;align-items:center;justify-content:center;height:50px;margin:20px auto 8px;gap:4px}.voice-tool__wave span{width:3px;height:7px;border-radius:2px;background:#d7e5fb}.voice-tool--recording .voice-tool__wave span{background:var(--brand);animation:wave .85s ease-in-out infinite alternate;animation-delay:calc(var(--wave-index) * -45ms)}.voice-tool__button{display:grid;width:104px;height:104px;margin:0 auto;padding:0;place-items:center;border:8px solid var(--brand-soft);border-radius:50%;color:#fff;background:var(--brand);box-shadow:0 8px 26px #277eff3d;transition:transform .16s ease,background .16s ease}.voice-tool__button:active{transform:scale(.96)}.voice-tool--recording .voice-tool__button{background:var(--danger);box-shadow:0 8px 26px #c53d3d3d}.voice-tool__hint,.voice-tool__error,.voice-tool__interim{min-height:22px;margin:14px 0 0;font-size:14px}.voice-tool__hint{color:var(--muted)}.voice-tool__error{color:var(--danger)}.voice-tool__interim{display:-webkit-box;overflow:hidden;color:var(--ink);-webkit-box-orient:vertical;-webkit-line-clamp:2}.voice-tool__sample{display:inline-flex;align-items:center;margin-top:10px;padding:6px 9px;gap:6px;border:0;color:var(--focus);background:transparent;font-size:13px}.transcript-section,.form-section{padding:20px 16px 22px;border-bottom:1px solid var(--line);background:var(--surface)}.transcript-section{margin-top:10px}.transcript-section textarea{width:100%;min-height:94px;padding:12px;resize:vertical;border:1px solid var(--line);border-radius:6px;outline:none;color:var(--ink);background:#f8fbff;font-size:15px;line-height:1.65}.section-heading,.section-heading>div{display:flex;align-items:center;gap:8px}.section-heading{margin-bottom:17px;color:var(--brand)}.section-heading h2{margin:0;color:var(--ink);font-size:16px;line-height:1.4}.section-heading--actions{justify-content:space-between}.text-button{display:inline-flex;align-items:center;padding:7px 4px;gap:5px;border:0;color:var(--focus);background:transparent;font-size:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 12px}.form-grid__full{grid-column:1 / -1}.field{display:grid;min-width:0;gap:7px}.field>span{color:#4e5969;font-size:13px}.field>span b{color:var(--danger);font-weight:500}.form-control{width:100%;min-width:0;min-height:44px;padding:10px 11px;border:1px solid #d6d9dd;border-radius:6px;outline:none;color:var(--ink);background:#fff;font-size:16px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}textarea.form-control{min-height:84px;resize:vertical;line-height:1.55}.form-control:focus,.transcript-section textarea:focus{border-color:var(--focus);box-shadow:0 0 0 3px #277eff1f}.form-control--recognized{border-color:#7aaeff;background:var(--brand-soft)}.mobile-select{min-width:0}.mobile-select__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:10px 11px;gap:10px;border:1px solid #d6d9dd;border-radius:6px;outline:none;color:var(--ink);background:#fff;font-size:16px;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.mobile-select__trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-select__trigger>svg{flex:none;color:#86909c}.mobile-select__trigger:focus-visible{border-color:var(--focus);box-shadow:0 0 0 3px #277eff1f}.mobile-select__trigger--recognized{border-color:#7aaeff;background:var(--brand-soft)}.mobile-select__placeholder{color:#a9adb4}.empty-contact{display:grid;min-height:96px;place-items:center;align-content:center;gap:7px;border:1px dashed #d5dadd;border-radius:6px;color:var(--muted);font-size:13px}.contact-editor{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fbfcfc}.contact-editor:first-of-type{margin-top:0}.contact-editor__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;font-size:14px}.contact-editor__header button{display:grid;width:34px;height:34px;padding:0;place-items:center;border:0;color:var(--danger);background:transparent}.check-field{display:flex;align-items:center;gap:9px;color:#4e5969;font-size:14px}.check-field input{width:19px;height:19px;accent-color:var(--brand)}.form-details{margin-top:10px;border-bottom:1px solid var(--line);background:var(--surface)}.form-details summary{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:0 16px;list-style:none;cursor:pointer}.form-details summary::-webkit-details-marker{display:none}.form-details summary span{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600}.form-details[open] summary>svg{transform:rotate(180deg)}.form-section--details{padding-top:4px;border-bottom:0}.page-message{display:flex;align-items:flex-start;margin:10px 16px;padding:11px 12px;gap:9px;border:1px solid;border-radius:6px;font-size:14px;line-height:1.45}.page-message span{flex:1}.page-message button{display:grid;padding:0;place-items:center;border:0;color:currentColor;background:transparent}.page-message--success{border-color:#9bd2c0;color:#116b54;background:var(--success-soft)}.page-message--error{border-color:#efb4b4;color:#9e2d2d;background:var(--danger-soft)}.submit-bar{position:fixed;z-index:30;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:10px max(16px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-top:1px solid var(--line);background:#fffffff7;box-shadow:0 -8px 24px #0000000d}.submit-bar>div{display:grid;gap:2px}.submit-bar span{font-size:14px;font-weight:600}.submit-bar small{color:var(--muted);font-size:11px}.primary-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:0 20px;gap:8px;border:0;border-radius:6px;color:#fff;background:var(--brand);font-weight:600}.primary-button--compact{width:auto;min-width:142px}.primary-button:active{background:var(--brand-dark)}.login-page{display:grid;min-height:100vh;padding:28px 20px;place-items:center;background:#f5f6f8}.login-panel{width:min(100%,400px);padding:28px 24px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 16px 48px #20212414}.login-panel>img{display:block;margin:0 auto}.login-panel h1{margin:12px 0 26px;text-align:center;font-size:22px}.login-panel form,.login-panel label{display:grid}.login-panel form{gap:17px}.login-panel label{gap:7px;color:#4e5969;font-size:13px}.login-panel input{min-height:46px;padding:0 12px;border:1px solid #d6d9dd;border-radius:6px;outline:none;font-size:16px}.login-panel input:focus{border-color:var(--focus);box-shadow:0 0 0 3px #277eff1f}.select-overlay{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;background:#15233666}.select-sheet{display:flex;width:min(100%,600px);max-height:min(72vh,640px);padding-bottom:env(safe-area-inset-bottom);overflow:hidden;flex-direction:column;border-radius:8px 8px 0 0;background:#fff;box-shadow:0 -16px 42px #15233629}.select-sheet__header{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 12px 0 18px;border-bottom:1px solid var(--line)}.select-sheet__header strong{color:var(--ink);font-size:16px}.select-sheet__header button{display:grid;width:40px;height:40px;padding:0;place-items:center;border:0;border-radius:50%;color:#66728f;background:transparent}.select-sheet__header button:active{background:#f5f6f8}.select-sheet__search{display:flex;align-items:center;min-height:44px;margin:12px 16px 6px;padding:0 12px;gap:8px;border:1px solid #d6d9dd;border-radius:6px;color:#86909c;background:#f8f9fb}.select-sheet__search:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #277eff1a;background:#fff}.select-sheet__search input{width:100%;min-width:0;height:42px;padding:0;border:0;outline:none;color:var(--ink);background:transparent;font-size:16px}.select-sheet__options{min-height:0;padding:4px 16px 12px;overflow-y:auto;overscroll-behavior:contain}.select-option{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;padding:0 10px;gap:10px;border:0;border-bottom:1px solid #f0f1f3;color:#4e5969;background:#fff;font-size:15px;text-align:left}.select-option--active{color:var(--brand);background:var(--brand-soft);font-weight:600}.select-option--custom{justify-content:flex-start;color:var(--brand)}.select-sheet__empty{display:grid;min-height:120px;place-items:center;color:#a9adb4;font-size:14px}.select-sheet-enter-active,.select-sheet-leave-active{transition:opacity .18s ease}.select-sheet-enter-active .select-sheet,.select-sheet-leave-active .select-sheet{transition:transform .18s ease}.select-sheet-enter-from,.select-sheet-leave-to{opacity:0}.select-sheet-enter-from .select-sheet,.select-sheet-leave-to .select-sheet{transform:translateY(24px)}.form-error{margin:-5px 0 0;color:var(--danger);font-size:13px}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes wave{0%{height:7px}to{height:calc(12px + (var(--wave-index) % 5) * 6px)}}@media (min-width: 721px){.app-content{margin-top:18px;margin-bottom:18px;overflow:hidden;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 40px #20212412}.submit-bar{right:50%;left:auto;width:720px;transform:translate(50%);border-right:1px solid var(--line);border-left:1px solid var(--line)}}@media (max-width: 520px){.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid__full{grid-column:auto}.voice-tool{min-height:284px}.submit-bar>div{max-width:110px}.primary-button--compact{min-width:138px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
