:root{--ink: #000000;--ink-soft: #6e6e6e;--paper: #ffffff;--hover: #f5f5f5;--accent: #d10000;--accent-wash: rgba(209, 0, 0, .1);--font-sans: "Segoe UI", system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans)}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}input,select,textarea{font-size:16px}.app{height:100%;position:relative;display:flex;flex-direction:column;background:var(--paper)}.topbar{display:flex;align-items:center;justify-content:flex-end;padding:14px 16px 0;background:var(--paper)}.topbar__back{display:grid;place-items:center;width:40px;height:40px;margin-right:auto;border:none;border-radius:50%;background:transparent;color:var(--ink-soft);cursor:pointer;transition:background .15s ease,color .15s ease}.topbar__back:hover{background:var(--hover);color:var(--ink)}.settings-menu{position:relative}.settings-menu__trigger{display:grid;place-items:center;width:40px;height:40px;border:none;border-radius:50%;background:transparent;color:var(--ink-soft);cursor:pointer;transition:background .15s ease,color .15s ease}.settings-menu__trigger:hover{background:var(--hover);color:var(--ink)}.settings-menu__panel{position:absolute;top:calc(100% + 8px);right:0;z-index:10;display:flex;flex-direction:column;gap:14px;width:max-content;min-width:200px;max-width:calc(100vw - 32px);padding:16px;background:var(--paper);border-radius:10px;box-shadow:0 12px 32px -12px #00000038}.settings-menu__field{display:flex;flex-direction:column;gap:4px;font-size:.7rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em}.settings-menu__field select,.settings-menu__field input{font-family:inherit;text-transform:none;letter-spacing:normal;width:100%;padding:10px;border:none;border-radius:6px;background:var(--hover);color:var(--ink)}.settings-menu__field input:focus,.settings-menu__field select:focus{outline:2px solid var(--accent-wash);outline-offset:1px}.layout{flex:1;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(200px,44vh) minmax(220px,1fr);gap:0;min-height:0;background:var(--paper)}.control-panel{min-height:0;padding:20px 18px 24px;display:flex;flex-direction:column;align-items:center;gap:20px;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--paper)}.record-control{position:relative;display:inline-flex}.record-button{position:relative;width:152px;height:152px;border-radius:50%;border:none;background:transparent;cursor:pointer;display:grid;place-items:center}.record-button.is-disabled{cursor:not-allowed;opacity:.45}.record-button.is-disabled:hover .record-button__core{transform:none;box-shadow:0 8px 20px -8px #f0132f8c}.record-button__ring{position:absolute;top:8px;right:8px;bottom:8px;left:8px;border-radius:50%;border:2px solid var(--accent);opacity:0;pointer-events:none}.record-button:not(.is-recording):hover .record-button__ring,.record-button:not(.is-recording):focus-visible .record-button__ring{animation:recordRingPulse 1.7s cubic-bezier(.2,.6,.35,1) infinite}@keyframes recordRingPulse{0%{transform:scale(.86);opacity:.5}70%{transform:scale(1.28);opacity:0}to{transform:scale(1.28);opacity:0}}.record-button__pulse{position:absolute;top:8px;right:8px;bottom:8px;left:8px;border-radius:50%;background:var(--accent-wash);transition:transform 90ms linear}.record-button:not(.is-recording):not(.is-paused) .record-button__pulse{display:none}.record-button__core{position:relative;width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;box-shadow:0 8px 20px -8px #f0132f8c;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s ease,background .15s ease}.record-button:hover .record-button__core{transform:scale(1.045);box-shadow:0 12px 28px -8px #f0132fa6}.record-button:active .record-button__core{transform:scale(.97)}.record-button.is-paused .record-button__core{background:var(--ink);box-shadow:0 8px 20px -8px #0006}.record-stop{position:absolute;right:-4px;bottom:4px;display:grid;place-items:center;width:38px;height:38px;border:none;border-radius:50%;background:#fff;color:var(--ink);box-shadow:0 4px 12px -4px #00000059;cursor:pointer;transition:transform .15s ease,color .15s ease}.record-stop:hover{color:var(--accent);transform:scale(1.08)}.btn{font-family:inherit;font-size:.85rem;font-weight:500;padding:10px 18px;border-radius:4px;border:none;background:transparent;color:var(--ink);cursor:pointer}.btn--ghost:hover{background:var(--hover)}.btn--primary{background:var(--ink);color:#fff}.btn--primary:hover{background:#2b2b2b}.status-label{font-size:.82rem;color:var(--ink-soft);margin:0;text-align:center}.demo-quota{margin:-4px 0 0;font-size:.7rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}.demo-badge{display:inline-flex;align-items:center;gap:5px;margin-left:8px;padding:2px 8px 2px 6px;border-radius:999px;background:var(--hover);color:var(--ink-soft);font-size:.65rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;vertical-align:1px}.demo-badge:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--ink-soft);animation:candleGlow 2.4s ease-in-out infinite}.stats{width:100%;display:flex;flex-direction:column;gap:12px;margin:16px 0 0;padding-top:16px}.stats__item{display:flex;justify-content:space-between;align-items:baseline;margin:0}.stats__item dt{font-size:.75rem;color:var(--ink-soft)}.stats__item dd{margin:0;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.stats__item--cost dd{color:var(--ink);transition:color .25s ease}.stats__item--cost.is-near-limit dd,.stats__item--cost.is-over-limit dd{color:var(--accent)}.stats__detail{display:flex;align-items:center;gap:6px;margin:-4px 0 0;font-size:.7rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}.stats__engine{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:-4px 0 0;font-size:.7rem;color:var(--ink-soft)}.stats__engine strong{font-weight:600;color:var(--ink)}.usage-limit{width:100%;display:flex;flex-direction:column;gap:5px;margin-top:2px}.usage-limit__track{width:100%;height:4px;border-radius:2px;background:var(--hover);overflow:hidden}.usage-limit__fill{height:100%;border-radius:2px;background:var(--ink-soft);transition:width .4s cubic-bezier(.22,1,.36,1),background .25s ease}.usage-limit.is-near .usage-limit__fill{background:var(--accent)}.usage-limit.is-over .usage-limit__fill{background:var(--accent);animation:limitPulse 1.4s ease-in-out infinite}@keyframes limitPulse{0%,to{opacity:1}50%{opacity:.5}}.usage-limit__label{font-size:.68rem;color:var(--ink-soft);transition:color .25s ease}.usage-limit.is-near .usage-limit__label,.usage-limit.is-over .usage-limit__label{color:var(--accent)}.error{font-size:.8rem;color:var(--accent);text-align:center;margin:0}.demo-note{width:100%;padding-top:12px;border-top:1px solid var(--hover);display:grid;gap:2px}.demo-note p{margin:0;font-size:.7rem;line-height:1.45;color:var(--ink-soft)}.history{width:100%;margin-top:4px;padding-top:18px;border-top:1px solid var(--hover)}.history__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.history__title{margin:0;font-size:.75rem;font-weight:600;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em}.history__download{display:grid;place-items:center;width:34px;height:34px;border:none;border-radius:50%;background:transparent;color:var(--ink-soft);cursor:pointer;transition:background .15s ease,color .15s ease}.history__download:hover{background:var(--hover);color:var(--ink)}.history__body{max-height:260px;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:6px;scrollbar-width:thin;scrollbar-color:var(--hover) transparent}.history__body::-webkit-scrollbar{width:5px}.history__body::-webkit-scrollbar-track{background:transparent}.history__body::-webkit-scrollbar-thumb{background:var(--hover);border-radius:4px}.history__body:hover::-webkit-scrollbar-thumb{background:#d9d9d9}.history__row{padding:10px 0;border-bottom:1px solid var(--hover)}.history__row:last-child{border-bottom:none}.history__row-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.history__date{font-size:.72rem;color:var(--ink);font-variant-numeric:tabular-nums}.history__actions{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-right:-6px}.history__action{display:grid;place-items:center;width:34px;height:34px;border:none;border-radius:50%;background:transparent;color:var(--ink-soft);cursor:pointer;transition:background .15s ease,color .15s ease}.history__action:hover:not(:disabled){background:var(--hover);color:var(--ink)}.history__action:disabled{color:#d4d4d4;cursor:default}.history__row-meta{display:flex;align-items:center;gap:6px;font-size:.7rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}.document-panel{min-height:0;padding:16px 18px 24px;display:flex;flex-direction:column;align-items:center;gap:20px;overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;background:var(--paper)}.document-page{flex-shrink:0;width:100%;max-width:680px;min-height:70vh;background:var(--paper);padding:20px 4px}.timestamp-toggle-anchor{position:sticky;top:8px;align-self:center;width:100%;max-width:680px;height:0;z-index:6;pointer-events:none}.timestamp-toggle{position:absolute;top:0;right:4px;display:grid;place-items:center;width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:#c7c7c7;cursor:pointer;pointer-events:auto;transition:color .22s ease,background .22s ease,transform .22s cubic-bezier(.34,1.56,.64,1)}.timestamp-toggle:hover,.timestamp-toggle:focus-visible{color:var(--ink-soft);background:var(--hover);transform:scale(1.12) rotate(-8deg)}.timestamp-toggle.is-active{color:var(--accent);background:var(--accent-wash)}.timestamp-toggle.is-active:hover{color:var(--accent);transform:scale(1.12) rotate(-8deg)}.document-page p{font-family:var(--font-sans);font-size:1.05rem;line-height:1.75;color:var(--ink);margin:0;white-space:pre-wrap}.document-page .placeholder{color:#b8b8b8;font-style:italic}.typing-cursor{display:inline-block;width:2px;height:1em;margin-left:2px;border-radius:1px;background:var(--ink);vertical-align:-.15em;animation:cursorBreathe 1.1s cubic-bezier(.45,0,.55,1) infinite}@keyframes cursorBreathe{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.12;transform:scaleY(.86)}}.segment{position:relative}.segment-time{display:inline-block;margin-right:7px;padding:1px 6px;border-radius:3px;background:var(--hover);color:var(--ink-soft);font-size:.64rem;font-variant-numeric:tabular-nums;letter-spacing:.01em;vertical-align:2px;-webkit-user-select:none;user-select:none;animation:candleGlow 3.6s ease-in-out infinite}@keyframes candleGlow{0%,to{opacity:.62}50%{opacity:.95}}@media (prefers-reduced-motion: reduce){.segment-time{animation:none;opacity:.85}}.document-actions{flex-shrink:0;width:100%;max-width:680px;display:flex;justify-content:space-between;gap:10px}.download-menu{position:relative}.download-trigger{position:relative;display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--hover);border-radius:50%;background:var(--paper);color:var(--ink);cursor:pointer;box-shadow:0 2px 8px -4px #00000026;transition:background .15s ease,border-color .15s ease,transform .15s ease,box-shadow .15s ease}.download-trigger:hover:not(:disabled){background:var(--hover);border-color:var(--ink-soft);transform:translateY(-1px);box-shadow:0 6px 16px -6px #00000038}.download-trigger:active:not(:disabled){transform:translateY(0) scale(.95)}.download-trigger:disabled{cursor:default;opacity:.7}.download-icon__arrow{transition:transform .22s cubic-bezier(.34,1.56,.64,1);transform-origin:center}.download-trigger:hover:not(:disabled) .download-icon__arrow{transform:translateY(2.5px)}.download-trigger.is-busy .download-icon__arrow{animation:downloadArrowDrop .9s ease-in-out infinite}.download-trigger.is-busy .download-icon__tray{animation:downloadTrayPulse .9s ease-in-out infinite}@keyframes downloadArrowDrop{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(3.5px);opacity:.45}}@keyframes downloadTrayPulse{0%,to{opacity:.55}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.download-trigger.is-busy .download-icon__arrow,.download-trigger.is-busy .download-icon__tray{animation:none}}.download-menu__panel{position:absolute;bottom:calc(100% + 8px);right:0;z-index:10;display:flex;flex-direction:column;width:max-content;min-width:220px;max-width:calc(100vw - 32px);padding:6px;background:var(--paper);border-radius:10px;box-shadow:0 12px 32px -12px #00000038}.download-menu__item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:10px;border:none;border-radius:6px;background:transparent;color:var(--ink);font-family:inherit;text-align:left;cursor:pointer}.download-menu__item:hover{background:var(--hover)}.download-menu__item span{font-size:.85rem;font-weight:500}.download-menu__item small{font-size:.7rem;color:var(--ink-soft)}.rolling-number{display:inline-flex;align-items:flex-start}.rolling-number__char{display:inline-block}.rolling-digit{display:inline-block;overflow:hidden;height:1.2em;width:1ch}.rolling-digit__track{display:flex;flex-direction:column;transition:transform .48s cubic-bezier(.22,1,.36,1)}.rolling-digit__cell{height:1.2em;line-height:1.2em;text-align:center}.landing-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;opacity:1;transition:opacity .48s ease}.landing-overlay.is-leaving{opacity:0;pointer-events:none}.landing-overlay__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff38;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);transition:backdrop-filter .48s ease,background .48s ease}.landing-overlay.is-leaving .landing-overlay__scrim{background:#fff0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}.landing-overlay__content{position:relative;z-index:1;width:100%;max-width:360px;transition:transform .48s cubic-bezier(.22,1,.36,1),opacity .42s ease}.landing-overlay.is-leaving .landing-overlay__content{opacity:0;transform:scale(.97) translateY(-8px)}.landing-gate,.landing-login{animation:landingFadeIn .32s ease}@keyframes landingFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.landing-gate{text-align:center}.landing-title{margin:0 0 10px;font-size:clamp(1.65rem,5vw + 1rem,2.3rem);font-weight:700;letter-spacing:-.01em;color:var(--ink)}.landing-subtitle{margin:0 0 32px;font-size:.95rem;line-height:1.5;color:var(--ink-soft)}.landing-actions{display:flex;align-items:center;justify-content:center;gap:12px}.landing-btn{padding:13px 24px;border-radius:6px;font-size:.9rem}.landing-login{position:relative;display:flex;flex-direction:column;gap:14px;padding:26px 20px 22px;background:var(--paper);border-radius:14px;box-shadow:0 24px 60px -20px #0000002e}.landing-login__back{position:absolute;top:12px;left:12px;display:grid;place-items:center;width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:var(--ink-soft);cursor:pointer;transition:background .15s ease,color .15s ease}.landing-login__back:hover{background:var(--hover);color:var(--ink)}.landing-login__title{margin:6px 0 4px;text-align:center;font-size:1.2rem;font-weight:700;color:var(--ink)}.landing-login__field{display:flex;flex-direction:column;gap:5px;font-size:.75rem;color:var(--ink-soft)}.landing-login__field input{font-family:inherit;padding:12px;border:none;border-radius:7px;background:var(--hover);color:var(--ink)}.landing-login__field input:focus{outline:2px solid var(--accent-wash);outline-offset:1px}.landing-login__submit{margin-top:4px;padding:13px;border-radius:7px;text-align:center}.landing-login__note{margin:0;font-size:.72rem;line-height:1.5;color:var(--ink-soft);text-align:center}.landing-login__note--warning{color:var(--accent)}.landing-login__notice{margin:0;font-size:.78rem;line-height:1.4;color:var(--ink-soft);text-align:center}.landing-login__error{margin:0;font-size:.78rem;line-height:1.4;color:var(--accent);text-align:center}.landing-login__links{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:-2px}.landing-login__links--center{justify-content:center}.landing-login__link{padding:6px 2px;border:none;background:transparent;color:var(--ink-soft);font-family:inherit;font-size:.74rem;cursor:pointer;transition:color .15s ease}.landing-login__link:hover:not(:disabled){color:var(--ink);text-decoration:underline}.landing-login__link:disabled{opacity:.6;cursor:default}.lang-switch{display:inline-flex;align-items:center;gap:2px;padding:4px;border-radius:999px;background:var(--hover)}.lang-switch__option{display:grid;place-items:center;min-width:34px;height:32px;padding:0 8px;border:none;border-radius:999px;background:transparent;color:var(--ink-soft);font-family:inherit;font-size:.72rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background .15s ease,color .15s ease}.lang-switch__option:hover{color:var(--ink)}.lang-switch__option.is-active{background:var(--paper);color:var(--ink);box-shadow:0 1px 4px -1px #00000040}@media (min-width: 480px){.landing-overlay{padding:24px}.landing-login{padding:32px 28px 26px}.landing-login__back{top:16px;left:16px}}@media (min-width: 760px){.topbar{padding:16px 20px 0}.layout{grid-template-columns:300px 1fr;grid-template-rows:none}.control-panel{padding:40px 32px}.document-panel{padding:24px 48px 40px}.document-page{padding:32px 4px}.document-actions{justify-content:flex-end}}@media (max-width: 380px){.record-button{width:128px;height:128px}.record-button__core{width:96px;height:96px}}
