:host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 6 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 6 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 6 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 6 Sharp Duotone"}svg.svg-inline--fa:not(:host),svg.svg-inline--fa:not(:root){overflow:visible;box-sizing:content-box}.svg-inline--fa{display:var(--fa-display,inline-block);height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.07143em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left{margin-right:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-pull-right{margin-left:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);top:.25em}.svg-inline--fa.fa-fw{width:var(--fa-fw-width,1.25em)}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{transform-origin:center center}.fa-layers-text{left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);overflow:hidden;padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);transform:scale(var(--fa-counter-scale,.25));transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);top:auto;transform:scale(var(--fa-layers-scale,.25));transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);right:auto;top:auto;transform:scale(var(--fa-layers-scale,.25));transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:top right}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(-1 * var(--fa-li-width, 2em));position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.08em);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}24%,8%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0deg)}}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;vertical-align:middle;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;z-index:var(--fa-stack-z-index,auto)}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa .fa-secondary,.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:black}:root{--bg:#050c1a;--bg-grad:radial-gradient(1200px 600px at 20% -10%,#0b1d38 0%,#050c1a 60%);--surface:#0d1e35;--surface-2:#102743;--surface-3:#14335a;--border:#2a4468;--border-strong:#3a5c8c;--primary:#1a6fff;--primary-2:#4d8fff;--primary-ink:#ffffff;--accent:#f5a623;--text:#e8f0ff;--muted:#7a94b8;--success:#35c46b;--error:#ff5c6c;--warning:#f5a623;--radius:14px;--radius-sm:9px;--radius-pill:999px;--shadow:0 10px 30px rgba(0,0,0,0.35);--gap:16px;--focus:0 0 0 3px rgba(77,143,255,0.55);--font:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif}*{margin:0;padding:0;box-sizing:border-box}body,html{min-height:100%}body{background:var(--bg-grad),var(--bg);color:var(--text);font-family:var(--font);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--primary-2);text-decoration:none}:focus-visible{outline:none;box-shadow:var(--focus);border-radius:6px}.visually-hidden{position:absolute!important;padding:0;margin:-1px;clip:rect(0,0,0,0);white-space:nowrap;border:0}.honeypot,.visually-hidden{width:1px;height:1px;overflow:hidden}.honeypot{position:absolute;left:-9999px;top:-9999px}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{justify-content:space-between;gap:var(--gap);padding:14px 22px;background:rgba(8,20,38,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:50}.app-header,.app-header__brand{display:flex;align-items:center}.app-header__brand{gap:12px}.app-header__logo{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-size:18px}.app-header__title{font-weight:700;font-size:18px;letter-spacing:.2px}.app-body{display:grid;grid-template-columns:232px 1fr;flex:1 1}.app-nav{border-right:1px solid var(--border);padding:18px 12px;background:rgba(8,20,38,.4)}.app-nav__list{list-style:none;display:flex;flex-direction:column;gap:6px}.app-nav__link{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--radius-sm);color:var(--muted);font-weight:600;transition:background .15s,color .15s}.app-nav__link:hover{background:var(--surface-2);color:var(--text)}.app-nav__link--active{background:linear-gradient(135deg,rgba(26,111,255,.22),rgba(77,143,255,.12));color:var(--text);box-shadow:inset 0 0 0 1px var(--border-strong)}.app-nav__icon{width:20px;text-align:center;color:var(--primary-2)}.app-main{padding:26px;min-width:0}.page{display:flex;flex-direction:column;gap:22px;max-width:1080px;margin:0 auto}.hero__title{font-size:28px;font-weight:800;letter-spacing:.2px}.hero--compact .hero__title{font-size:23px}.hero__tagline{color:var(--muted);margin-top:6px}.hero__notice{margin-top:12px;color:var(--text);border:1px solid var(--border);border-left:3px solid var(--accent);padding:10px 14px;border-radius:var(--radius-sm);font-size:14px}.card,.hero__notice{background:var(--surface)}.card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--gap);margin-bottom:16px;flex-wrap:wrap}.card__header-aside{flex-wrap:wrap}.card__header-aside,.card__title{display:flex;align-items:center;gap:10px}.card__title{font-size:18px;font-weight:700}.card__title svg{color:var(--primary-2)}.card__subtitle{color:var(--muted);font-size:14px;margin-top:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-sm);padding:10px 18px;font-weight:700;font-size:15px;font-family:inherit;cursor:pointer;transition:transform .05s,background .15s,border-color .15s,opacity .15s;color:var(--text);background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:var(--primary-ink);box-shadow:0 6px 18px rgba(26,111,255,.35)}.btn--primary:hover:not(:disabled){filter:brightness(1.06)}.btn--secondary{background:var(--surface-3);border-color:var(--border-strong)}.btn--ghost{background:transparent;border-color:var(--border);color:var(--text)}.btn--ghost:hover:not(:disabled){background:var(--surface-2)}.btn--sm{padding:7px 12px;font-size:13.5px}.btn--block{width:100%;margin-top:14px}.upload__dropzone{border:2px dashed var(--border-strong);border-radius:var(--radius);padding:34px 20px;text-align:center;cursor:pointer;background:var(--surface-2);transition:border-color .15s,background .15s}.upload__dropzone--over,.upload__dropzone:hover{border-color:var(--primary-2);background:rgba(26,111,255,.08)}.upload__big-icon{font-size:34px;color:var(--primary-2)}.upload__hint{margin-top:10px;font-weight:600}.upload__meta{margin-top:6px;color:var(--muted);font-size:13px}.field-error{display:inline-flex;align-items:center;gap:6px;color:var(--error);font-size:13px;margin-top:8px}.warning-banner{margin-top:16px;border:1px solid var(--warning);background:rgba(245,166,35,.1);border-radius:var(--radius-sm);padding:14px 16px}.warning-banner__head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.warning-banner__icon{color:var(--warning);font-size:18px}.warning-banner__title{font-weight:700}.warning-banner__list{list-style:none;display:flex;flex-direction:column;gap:6px}.warning-banner__item{position:relative;padding-left:16px;font-size:14px}.warning-banner__item:before{content:"";position:absolute;left:2px;top:9px;width:6px;height:6px;border-radius:50%;background:var(--warning)}.table-wrap{overflow-x:auto;border-radius:var(--radius-sm);border:1px solid var(--border)}.data-table{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}.data-table td,.data-table th{padding:11px 14px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.data-table thead th{background:var(--surface-2);color:var(--muted);font-weight:700;font-size:12.5px;text-transform:none;letter-spacing:.3px;position:-webkit-sticky;position:sticky;top:0}.data-table tbody tr:hover{background:rgba(26,111,255,.06)}.data-table .num,.data-table td.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.data-table--matrix tbody th[scope=row],.data-table--matrix tfoot th[scope=row]{font-weight:600;color:var(--text);white-space:nowrap}.total-col{background:rgba(26,111,255,.06);font-weight:700}.data-table tfoot td,.data-table tfoot th{background:var(--surface-2);font-weight:700;border-top:2px solid var(--border-strong)}.grand-total{color:var(--accent);font-size:16px}.unit{font-size:12px;font-weight:600}.muted,.unit{color:var(--muted)}.num{text-align:right}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-pill);background:var(--surface-3);font-size:13px;font-weight:600}.chip svg{color:var(--primary-2);font-size:11px}.chip--warn{background:rgba(245,166,35,.16)}.chip--warn svg{color:var(--warning)}.badge{display:inline-block;padding:3px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:700;border:1px solid var(--border);white-space:nowrap}.badge--demo{background:rgba(245,166,35,.16);color:var(--accent);border-color:rgba(245,166,35,.5)}.badge--auto{color:var(--muted)}.badge--edited{color:var(--primary-2);border-color:rgba(77,143,255,.5);background:rgba(26,111,255,.1)}.badge--attention{color:var(--warning);border-color:rgba(245,166,35,.5);background:rgba(245,166,35,.12)}.count-pill{padding:5px 12px;border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);font-size:13px;font-weight:700;color:var(--muted)}.receipt-row--attention{background:rgba(245,166,35,.06)}.receipt-row__actions{display:flex;gap:8px;flex-wrap:wrap}.cell-input{width:100%;min-width:110px;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);padding:7px 10px;font-family:inherit;font-size:14px}.cell-input--number{text-align:right}.state-note{padding:22px;color:var(--muted);justify-content:center;gap:10px}.page-state,.state-note{text-align:center;display:flex;align-items:center}.page-state{max-width:520px;margin:60px auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:40px 28px;flex-direction:column;gap:12px}.page-state__icon{font-size:40px;color:var(--primary-2)}.page-state__title{font-size:24px;font-weight:800}.page-state__body{color:var(--muted)}.page-state__trace{font-size:13px;color:var(--muted)}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--surface-2);padding:1px 6px;border-radius:5px}.lang-switcher,.year-select{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}.lang-switcher__icon{color:var(--primary-2)}.lang-switcher__select,.year-select select{background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:7px 10px;font-family:inherit;font-size:14px;cursor:pointer}.notice{display:flex;align-items:center;gap:8px;background:rgba(245,166,35,.1);border:1px solid rgba(245,166,35,.45);border-radius:var(--radius-sm);padding:11px 14px;color:var(--text);font-size:14px;font-weight:600}.notice svg{color:var(--accent)}.report-result{margin-top:18px}.report-result__meta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:16px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.stat{display:flex;flex-direction:column}.stat__label{font-size:12px;color:var(--muted);font-weight:700}.stat__value{font-size:22px;font-weight:800;color:var(--accent)}.stat__value--sm{font-size:15px;color:var(--text)}.report-result__preview-title{margin:20px 0 10px;font-size:16px;font-weight:700}.report-preview{background:#ffffff;color:#17263b;border-radius:var(--radius-sm);padding:22px;overflow-x:auto;border:1px solid var(--border)}.report-preview table{border-collapse:collapse;width:100%}.report-preview td,.report-preview th{border:1px solid #c9d4e4;padding:6px 10px}.toast-region{position:fixed;right:18px;bottom:18px;flex-direction:column;z-index:100;max-width:min(380px,calc(100vw - 36px))}.toast,.toast-region{display:flex;gap:10px}.toast{align-items:flex-start;background:var(--surface-3);border:1px solid var(--border-strong);border-left-width:4px;border-radius:var(--radius-sm);padding:12px 14px;box-shadow:var(--shadow);animation:toast-in .2s ease-out}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast--success{border-left-color:var(--success)}.toast--error{border-left-color:var(--error)}.toast--info{border-left-color:var(--primary-2)}.toast--warning{border-left-color:var(--warning)}.toast__icon{font-size:18px;margin-top:2px}.toast--success .toast__icon{color:var(--success)}.toast--error .toast__icon{color:var(--error)}.toast--info .toast__icon{color:var(--primary-2)}.toast--warning .toast__icon{color:var(--warning)}.toast__body{flex:1 1;min-width:0}.toast__title{font-weight:700;font-size:14px}.toast__message{font-size:13px;color:var(--text);margin-top:2px;word-break:break-word}.toast__trace{font-size:11.5px;color:var(--muted);margin-top:4px}.toast__close{background:transparent;border:none;color:var(--muted);cursor:pointer;font-size:15px;padding:2px 4px}.toast__close:hover{color:var(--text)}.modal-overlay{position:fixed;inset:0;background:rgba(2,8,18,.72);display:grid;place-items:center;z-index:200;padding:20px}.modal{width:min(520px,100%);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow)}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.modal__title{font-size:17px;font-weight:700}.modal__close{background:transparent;border:none;color:var(--muted);cursor:pointer;font-size:17px}.modal__body{padding:20px}.modal__footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--border)}@media (max-width:860px){.app-body{grid-template-columns:1fr}.app-nav{border-right:none;border-bottom:1px solid var(--border);padding:10px}.app-nav__list{flex-direction:row;overflow-x:auto}.app-nav__link span:last-child{white-space:nowrap}.app-main{padding:18px 14px}.hero__title{font-size:23px}}[dir=rtl] .warning-banner__item{padding-left:0;padding-right:16px}[dir=rtl] .warning-banner__item:before{left:auto;right:2px}[dir=rtl] .toast-region{right:auto;left:18px}[dir=rtl] .hero__notice{border-left:none;border-right:3px solid var(--accent)}.demo-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:7px 16px;background:var(--accent);color:#1a1206;font-size:12.5px;font-weight:700;text-align:center;line-height:1.5}.app-header__actions{display:flex;align-items:center;gap:14px}.app-header__demos-link{display:inline-flex;align-items:center;gap:6px;-webkit-padding-end:14px;padding-inline-end:14px;-webkit-border-end:1px solid var(--border);border-inline-end:1px solid var(--border);color:var(--muted);font-size:13px;font-weight:600;white-space:nowrap;transition:color .15s}.app-header__demos-link:hover{color:var(--text)}.app-footer{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 24px;border-top:1px solid var(--border);color:var(--muted);font-size:12px}.app-footer__link{color:var(--muted);transition:color .15s}.app-footer__link:hover{color:var(--text)}.app-footer__sep{color:var(--border-strong)}.consult-fab{position:fixed;bottom:1.5rem;right:1.5rem;z-index:300;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--primary),var(--primary-2));color:var(--primary-ink);font-size:13px;font-weight:700;white-space:nowrap;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}.consult-fab:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.42)}[dir=rtl] .consult-fab{right:auto;left:1.5rem}.legal{max-width:720px}.legal__back{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:14px;transition:color .15s}.legal__back:hover{color:var(--text)}.legal__title{margin:18px 0 28px;font-size:22px;font-weight:700}.legal__section{margin-bottom:34px}.legal__heading{margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border);font-size:16px;font-weight:700;color:var(--accent)}.legal__list{-webkit-padding-start:20px;padding-inline-start:20px;font-size:14px;line-height:1.75;color:var(--muted)}.legal__contacts,.legal__list{display:flex;flex-direction:column;gap:10px}.legal__contact-row{display:flex;gap:16px}.legal__contact-label{width:72px;flex-shrink:0;color:var(--muted);font-size:14px}.legal__contact-value{font-size:14px;color:var(--text)}.legal__link{color:var(--primary-2)}.legal__link:hover{text-decoration:underline}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}