.crontab{position:relative}.crontab-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .9rem;margin-bottom:.8rem}.crontab-dialects{display:inline-flex;flex-shrink:0;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--canvas)}.crontab-dialect{min-height:2rem;padding:.28rem .75rem;border:0;border-radius:5px;background:transparent;color:var(--body);font-size:.8rem;font-weight:650}.crontab-dialect:hover{color:var(--accent)}.crontab-dialect[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent)}.crontab-dialect-note{flex:1 1 18rem;margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}.crontab-input-row{display:flex;align-items:flex-end;gap:.6rem;margin-bottom:.9rem}.crontab-input-field{flex:1 1 auto;min-width:0}.crontab-input-field>label{display:block;margin-bottom:.35rem;color:var(--muted);font:700 .72rem/1.4 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.crontab-input{width:100%;min-height:2.9rem;padding:.55rem .8rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.95rem/1.4 var(--font-mono)}.crontab-input[aria-invalid=true]{border-color:var(--danger)}.crontab-run{flex-shrink:0;min-height:2.9rem}.crontab-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.5rem;margin-bottom:1rem}.crontab-field{min-width:0;padding:.6rem .7rem;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.crontab-field[data-state=error]{border-color:var(--danger)}.crontab-field-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.crontab-field-name{color:var(--text);font-size:.78rem;font-weight:700}.crontab-field-range{flex-shrink:0;color:var(--muted);font:.66rem var(--font-mono)}.crontab-field-value{display:block;margin-bottom:.3rem;color:var(--accent);font:.88rem/1.3 var(--font-mono);word-break:break-all}.crontab-field[data-state=error] .crontab-field-value{color:var(--danger)}.crontab-field-text{margin:0;color:var(--body);font-size:.75rem;line-height:1.42}.crontab-presets{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:1rem}.crontab-presets-label{color:var(--muted);font:700 .68rem/1 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.crontab-chip{padding:.3rem .55rem;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--body);font:.74rem var(--font-mono)}.crontab-chip:hover,.crontab-chip[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.crontab-alerts{display:grid;gap:.45rem;margin-bottom:.9rem}.crontab-alert{padding:.5rem .7rem;border:1px solid var(--line);border-left:3px solid var(--danger);border-radius:6px;background:var(--surface);color:var(--body);font-size:.8rem;line-height:1.45}.crontab-alert[data-tone=warning]{border-left-color:#d8a02f}.crontab-result{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.crontab-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:.6rem;padding:.7rem .8rem;border-bottom:1px solid var(--line);background:var(--canvas)}.crontab-summary-label{color:var(--muted);font:700 .68rem/1 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.crontab-summary-text{color:var(--text);font-size:.92rem;font-weight:650}.crontab-runs{display:grid;gap:1px;margin:0;padding:0;background:var(--line);list-style:none}.crontab-run-item{display:flex;align-items:center;gap:.8rem;padding:.5rem .8rem;background:var(--surface)}.crontab-run-index{width:1.3rem;flex-shrink:0;color:var(--muted);font:.72rem var(--font-mono)}.crontab-run-time{flex:1 1 auto;min-width:0;color:var(--text);font:.84rem var(--font-mono)}.crontab-run-relative{flex-shrink:0;color:var(--muted);font:.72rem var(--font-mono)}.crontab-empty{margin:0;padding:.9rem .8rem;color:var(--body);font-size:.82rem}.crontab-result-actions{display:flex;justify-content:flex-end;padding:.45rem .8rem;border-top:1px solid var(--line)}.crontab-details{margin-top:1.6rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.crontab-details>summary{padding:.72rem .8rem;color:var(--text);font-size:.85rem;font-weight:700;cursor:pointer}.crontab-details>summary::marker{color:var(--accent)}.crontab-details[open]>summary{margin-bottom:.9rem;border-bottom:1px solid var(--line)}.crontab-details-body{padding:0 .8rem 1rem}.crontab-details-body>h3{margin:1rem 0 .5rem;color:var(--muted);font:700 .7rem/1.4 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.crontab-details-body>h3:first-child{margin-top:0}.crontab-diagram{overflow-x:auto;margin:0;padding:.8rem;border:1px solid var(--line);border-radius:6px;background:var(--canvas);color:var(--body);font:.72rem/1.7 var(--font-mono);white-space:pre}.crontab-table-wrap{overflow-x:auto;margin-top:.6rem}.crontab-table{width:100%;border-collapse:collapse;font-size:.78rem}.crontab-table th,.crontab-table td{padding:.45rem .55rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.crontab-table thead th{color:var(--muted);font:700 .66rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.crontab-table tbody th{color:var(--text);font-weight:650;white-space:nowrap}.crontab-table td{color:var(--body)}.crontab-table code{padding:0 .2rem;border-radius:3px;background:var(--surface-soft);color:var(--text);font:.72rem var(--font-mono);white-space:nowrap}.crontab-specials{display:grid;gap:.5rem;margin:.6rem 0 0;padding:0;list-style:none}.crontab-specials li{color:var(--body);font-size:.79rem;line-height:1.5}.crontab-specials code{padding:0 .22rem;border-radius:3px;background:var(--surface-soft);color:var(--text);font:.74rem var(--font-mono)}@media(max-width:700px){.crontab-input-row{flex-direction:column;align-items:stretch}.crontab-run{width:100%}.crontab-fields{grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr))}.crontab-run-item{align-items:flex-start;flex-direction:column;gap:.15rem}}.timestamp{position:relative}.ts-now{margin-bottom:1rem;padding:.85rem .95rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.ts-now-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.ts-now-label{color:var(--muted);font:700 .7rem/1.4 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.ts-unit-switch{display:inline-flex;padding:2px;border:1px solid var(--line);border-radius:6px;background:var(--canvas)}.ts-unit-switch button{min-height:1.65rem;padding:.15rem .55rem;border:0;border-radius:4px;background:transparent;color:var(--body);font-size:.72rem;font-weight:650}.ts-unit-switch button:hover{color:var(--accent)}.ts-unit-switch button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent)}.ts-now-body{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem}.ts-now-value{flex:1 1 auto;min-width:0;color:var(--text);font:650 clamp(1.5rem,4vw,2.05rem)/1.1 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.ts-now-actions{display:flex;flex-shrink:0;gap:.45rem}.ts-icon-button{min-height:2.1rem;padding:.3rem .6rem;gap:.35rem;font-size:.76rem}.ts-icon-button .tool-icon{width:.95rem;height:.95rem}.ts-toggle-icon{display:grid;place-items:center}.ts-panel{margin-bottom:1rem;padding:.85rem .95rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.ts-panel>h3{margin:0 0 .7rem;font-size:.86rem;font-weight:700}.ts-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.55rem .7rem;margin-bottom:.7rem}.ts-field{display:grid;gap:.22rem;min-width:0}.ts-field>span{color:var(--muted);font:700 .66rem/1.4 var(--font-mono);letter-spacing:.07em;text-transform:uppercase}.ts-field-wide{flex:1 1 13rem}.ts-input,.ts-field select{min-height:2.2rem;padding:.3rem .5rem;border:1px solid var(--line);border-radius:5px;background:var(--canvas);color:var(--text);font:.82rem var(--font-mono)}.ts-input{width:100%}.ts-field select{max-width:15rem}.ts-buttons{display:flex;gap:.45rem;margin-left:auto}.ts-buttons button{min-height:2.2rem;padding:.35rem .7rem;font-size:.78rem}.ts-results{display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--line)}.ts-results:empty{display:none}.ts-result{display:grid;grid-template-columns:minmax(7rem,auto) minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.42rem .6rem;background:var(--surface)}.ts-result-label{color:var(--muted);font:.7rem var(--font-mono)}.ts-result-value{overflow-wrap:anywhere;color:var(--text);font:.8rem var(--font-mono)}.ts-result-copy{flex-shrink:0;padding:.15rem .35rem;border:0;border-radius:4px;background:transparent;color:var(--accent);font-size:.7rem;font-weight:700}.ts-result-copy:hover{background:var(--surface-soft)}.ts-error{margin:.6rem 0 0;color:var(--danger);font-size:.78rem}.ts-hint{margin:.45rem 0 .7rem;color:var(--muted);font-size:.74rem}.ts-batch-field{display:block}.ts-batch-input{display:block;width:100%;min-height:5.5rem;padding:.55rem .65rem;border:1px solid var(--line);border-radius:6px;background:var(--canvas);color:var(--text);font:.8rem/1.6 var(--font-mono);resize:vertical}.ts-batch-summary{margin-bottom:.55rem;color:var(--muted);font-size:.75rem}.ts-batch-summary:empty{display:none}.ts-batch-summary[data-tone=warning]{color:#d8a02f}.ts-batch-table-wrap:not(:empty){overflow-x:auto;border:1px solid var(--line);border-radius:6px}.ts-batch-table{width:100%;border-collapse:collapse;font-size:.78rem}.ts-batch-table th,.ts-batch-table td{padding:.4rem .55rem;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.ts-batch-table tbody tr:last-child td{border-bottom:0}.ts-batch-table thead th{color:var(--muted);font:700 .66rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.ts-batch-index{color:var(--muted);font:.72rem var(--font-mono)}.ts-batch-code{color:var(--text);font:.76rem var(--font-mono)}.ts-batch-muted{color:var(--muted);font-size:.74rem}.ts-notes{max-width:52rem;margin-top:2.4rem;padding-top:1.8rem;border-top:1px solid var(--line)}.ts-notes h2{margin-bottom:.6rem;font-size:1.12rem}.ts-note{margin-bottom:1.1rem}.ts-note h3{margin-bottom:.25rem;font-size:.86rem}.ts-note p,.ts-notes>p{margin:0;color:var(--body);font-size:.84rem;line-height:1.68}.ts-snippets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:1rem 0 2rem}.ts-snippet{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.ts-snippet figcaption{padding:.38rem .6rem;border-bottom:1px solid var(--line);color:var(--muted);font:700 .66rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.ts-snippet pre{overflow-x:auto;margin:0;padding:.55rem .6rem}.ts-snippet code{color:var(--text);font:.74rem/1.6 var(--font-mono);white-space:pre}@media(max-width:700px){.ts-now-body{flex-direction:column;align-items:stretch}.ts-now-actions{width:100%}.ts-now-actions button{flex:1 1 auto;justify-content:center}.ts-buttons{margin-left:0;width:100%}.ts-buttons button{flex:1 1 auto}.ts-result{grid-template-columns:minmax(0,1fr) auto;row-gap:.1rem}.ts-result-label{grid-column:1 / -1}.ts-snippets{grid-template-columns:minmax(0,1fr)}}.units{position:relative}.units-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.85rem}.units-tabs button{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--body);font-size:.78rem;font-weight:600}.units-tabs button:hover{border-color:var(--accent);color:var(--accent)}.units-tabs button.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text)}.units-tabs .tool-icon{width:.95rem;height:.95rem}.units-panel{padding:.85rem .95rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.units-panel-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.7rem}.units-hint{margin:0;color:var(--muted);font-size:.78rem}.units-clear{flex-shrink:0}.units-grid{display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line)}.units-row{display:grid;grid-template-columns:minmax(8.5rem,12rem) minmax(0,1fr);align-items:center;gap:.6rem;padding:.4rem .6rem;background:var(--surface)}.units-row:focus-within{position:relative;z-index:1;box-shadow:inset 0 0 0 2px var(--accent)}.units-label{display:flex;align-items:baseline;gap:.4rem;min-width:0;color:var(--body);font-size:.8rem}.units-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.units-symbol{flex-shrink:0;color:var(--muted);font:.72rem var(--font-mono)}.units-input{width:100%;min-height:2.1rem;padding:.3rem .5rem;border:1px solid transparent;border-radius:5px;background:var(--canvas);color:var(--text);font:.85rem var(--font-mono);text-align:right}.units-input:hover{border-color:var(--line)}.units-input:focus{border-color:var(--accent)}.units-reference{max-width:52rem;margin-top:2rem;padding-top:1.6rem;border-top:1px solid var(--line)}.units-reference h2{margin-bottom:.7rem;font-size:1.05rem}.units-reference-list{display:grid;gap:1px;margin:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line);list-style:none}.units-reference-list li{padding:.5rem .7rem;background:var(--surface);color:var(--text);font:.8rem var(--font-mono)}.units-note{margin:1rem 0 0;color:var(--body);font-size:.82rem;line-height:1.68}@media(max-width:700px){.units-row{grid-template-columns:minmax(0,1fr);gap:.3rem;padding:.5rem .6rem}.units-label{justify-content:space-between}.units-input{text-align:left}.units-reference-list li{font-size:.76rem}}:root{--hs-1: #5b9bd5;--hs-2: #16b887;--hs-3: #d8a02f;--hs-4: #e8833a;--hs-5: #ef6b73}:root[data-theme=light]{--hs-1: #2b6cb0;--hs-2: #0c9269;--hs-3: #8a5f00;--hs-4: #b45309;--hs-5: #ce3f4c}.hs{position:relative}.hs-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;margin-bottom:.9rem}.hs-nav-item{display:flex;align-items:center;gap:.45rem;min-width:0;padding:.6rem .7rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);transition:border-color .16s ease,background .16s ease}.hs-nav-item:hover{border-color:var(--accent);background:var(--surface-soft)}.hs-nav-code{flex-shrink:0;font:700 .82rem var(--font-mono)}.hs-nav-title{overflow:hidden;color:var(--body);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.hs-nav-count{flex-shrink:0;margin-left:auto;color:var(--muted);font:.7rem var(--font-mono)}.hs-intro{margin:0 0 1.6rem;color:var(--muted);font-size:.8rem;line-height:1.6}.hs-group{margin-bottom:2rem;scroll-margin-top:4.5rem}.hs-group-head{display:flex;align-items:baseline;gap:.7rem;margin-bottom:.7rem;padding-bottom:.55rem;border-bottom:1px solid var(--line)}.hs-group-code{flex-shrink:0;font:700 1.05rem var(--font-mono)}.hs-group-copy{min-width:0}.hs-group-copy h2{margin:0;font-size:1.05rem}.hs-group-copy p{margin:.25rem 0 0;color:var(--muted);font-size:.78rem;line-height:1.5}.hs-group-count{flex-shrink:0;margin-left:auto;color:var(--muted);font:.72rem var(--font-mono);white-space:nowrap}.hs-list{display:grid;gap:1px;margin:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--line);list-style:none}.hs-item{display:grid;grid-template-columns:4.2rem minmax(0,1fr);gap:.8rem;padding:.7rem .8rem;background:var(--surface)}.hs-item:target{background:var(--surface-soft)}.hs-code{font:700 1rem/1.35 var(--font-mono)}.hs-body{min-width:0}.hs-name{display:flex;flex-wrap:wrap;align-items:baseline;gap:.45rem;margin:0 0 .25rem}.hs-name strong{font-size:.88rem;line-height:1.3}.hs-name-native{color:var(--body);font-size:.8rem}.hs-vendor{padding:.05rem .35rem;border:1px solid var(--line-strong);border-radius:4px;color:var(--muted);font:600 .64rem var(--font-mono)}.hs-summary{margin:0;color:var(--body);font-size:.8rem;line-height:1.55}.hs-hint{display:flex;gap:.5rem;margin:.4rem 0 0;padding-left:.55rem;border-left:2px solid var(--line-strong);color:var(--muted);font-size:.76rem;line-height:1.5}.hs-hint-label{flex-shrink:0;color:var(--accent);font-weight:650}[data-class="1"] .hs-code,[data-class="1"] .hs-nav-code,.hs-group[data-class="1"] .hs-group-code{color:var(--hs-1)}[data-class="2"] .hs-code,[data-class="2"] .hs-nav-code,.hs-group[data-class="2"] .hs-group-code{color:var(--hs-2)}[data-class="3"] .hs-code,[data-class="3"] .hs-nav-code,.hs-group[data-class="3"] .hs-group-code{color:var(--hs-3)}[data-class="4"] .hs-code,[data-class="4"] .hs-nav-code,.hs-group[data-class="4"] .hs-group-code{color:var(--hs-4)}[data-class="5"] .hs-code,[data-class="5"] .hs-nav-code,.hs-group[data-class="5"] .hs-group-code{color:var(--hs-5)}@media(max-width:900px){.hs-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.hs-item{grid-template-columns:minmax(0,1fr);gap:.3rem}.hs-code{font-size:.95rem}.hs-group-head{flex-wrap:wrap;gap:.4rem .7rem}.hs-group-count{margin-left:0}}.nb{position:relative}.nb-panel{padding:.85rem .95rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.nb-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .8rem;margin-bottom:.7rem}.nb-hint{margin:0;color:var(--muted);font-size:.78rem}.nb-hint[data-tone=error]{color:var(--danger)}.nb-magnitude{margin-left:auto;color:var(--muted);font:.72rem var(--font-mono)}.nb-magnitude:empty{display:none}.nb-clear{flex-shrink:0}.nb-grid{display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line)}.nb-row{display:grid;grid-template-columns:minmax(6.5rem,9rem) minmax(0,1fr) minmax(8rem,13rem);align-items:center;gap:.6rem;padding:.4rem .6rem;background:var(--surface)}.nb-row:focus-within{position:relative;z-index:1;box-shadow:inset 0 0 0 2px var(--accent)}.nb-label{display:flex;align-items:baseline;gap:.4rem;min-width:0;color:var(--body);font-size:.8rem}.nb-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nb-radix{flex-shrink:0;padding:0 .25rem;border-radius:3px;background:var(--surface-soft);color:var(--muted);font:.68rem var(--font-mono)}.nb-input{width:100%;min-height:2.1rem;padding:.3rem .5rem;border:1px solid transparent;border-radius:5px;background:var(--canvas);color:var(--text);font:.85rem var(--font-mono)}.nb-input:hover{border-color:var(--line)}.nb-input:focus{border-color:var(--accent)}.nb-input[aria-invalid=true]{border-color:var(--danger)}.nb-note{color:var(--muted);font-size:.72rem;line-height:1.4}.nb-binary{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .9rem;margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--line)}.nb-width{display:flex;align-items:center;gap:.45rem;flex-shrink:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.nb-width select{min-height:2rem;padding:.25rem .45rem;border:1px solid var(--line);border-radius:5px;background:var(--canvas);color:var(--text);font:.78rem var(--font-mono);text-transform:none;letter-spacing:0}.nb-padded{flex:1 1 16rem;min-width:0;overflow-wrap:anywhere;color:var(--text);font:.82rem/1.5 var(--font-mono)}.nb-padded:empty:before{color:var(--muted);font-size:.75rem}@media(max-width:900px){.nb-row{grid-template-columns:minmax(6rem,8rem) minmax(0,1fr)}.nb-note{grid-column:1 / -1;padding-bottom:.15rem}}@media(max-width:700px){.nb-row{grid-template-columns:minmax(0,1fr);gap:.3rem}.nb-label{justify-content:space-between}.nb-note{grid-column:auto}.nb-magnitude{margin-left:0}}.color{position:relative}.color-panel{padding:.85rem .95rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.color-inputs{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.6rem}.color-field{display:grid;flex:1 1 16rem;gap:.25rem;min-width:0}.color-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.07em;text-transform:uppercase}.color-input{width:100%;min-height:2.4rem;padding:.35rem .6rem;border:1px solid var(--line);border-radius:6px;background:var(--canvas);color:var(--text);font:.85rem var(--font-mono)}.color-input[aria-invalid=true]{border-color:var(--danger)}.color-input::placeholder{color:var(--muted);font-size:.78rem}.color-picker-field{flex-shrink:0}.color-picker{display:block;width:2.9rem;height:2.4rem;padding:2px;border:1px solid var(--line);border-radius:6px;background:var(--canvas);cursor:pointer}.color-picker::-webkit-color-swatch-wrapper{padding:0}.color-picker::-webkit-color-swatch{border:0;border-radius:4px}.color-preview{display:grid;flex:0 0 9rem;height:2.4rem;place-items:center;border:1px solid var(--line);border-radius:6px;transition:background .16s ease}.color-preview-text{font:700 .78rem var(--font-ui);letter-spacing:.02em}.color-error{margin:.6rem 0 0;color:var(--danger);font-size:.78rem}.color-hint{margin:.7rem 0 0;color:var(--muted);font-size:.74rem;line-height:1.55}.color-results{display:grid;gap:1.1rem;margin-top:1rem}.color-group>h3{margin:0 0 .45rem;color:var(--muted);font:700 .7rem/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.color-rows{display:grid;gap:1px;margin:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line);list-style:none}.color-row{display:grid;grid-template-columns:minmax(7rem,11rem) minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.42rem .65rem;background:var(--surface)}.color-label{color:var(--body);font-size:.78rem}.color-value{overflow-wrap:anywhere;color:var(--text);font:.8rem var(--font-mono)}.color-copy{flex-shrink:0;padding:.15rem .35rem;border:0;border-radius:4px;background:transparent;color:var(--accent);font-size:.7rem;font-weight:700}.color-copy:hover{background:var(--surface-soft)}@media(max-width:700px){.color-preview{flex:1 1 100%}.color-row{grid-template-columns:minmax(0,1fr) auto;row-gap:.15rem}.color-label{grid-column:1 / -1}.color-value{font-size:.76rem}}.pct{position:relative;display:grid;gap:1rem}.pct-panel{padding:.9rem 1rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.pct-head{margin-bottom:.8rem}.pct-head h2{margin:0 0 .25rem;font-size:.95rem}.pct-head p{margin:0;color:var(--muted);font-size:.78rem}.pct-form{display:grid;gap:.7rem}.pct-formula{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem .65rem;min-width:0}.pct-outcome{display:flex;align-items:center;gap:.55rem;min-width:0}.pct-field{display:grid;flex:1 1 9rem;gap:.25rem;min-width:0}.pct-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.pct-input{width:100%;min-height:2.4rem;padding:.3rem .6rem;border:1px solid var(--line);border-radius:6px;background:var(--canvas);color:var(--text);font:.9rem var(--font-mono)}.pct-input:focus{border-color:var(--accent)}.pct-input[aria-invalid=true]{border-color:var(--danger)}.pct-op{display:grid;flex-shrink:0;height:2.4rem;min-width:1.6rem;place-items:center;color:var(--muted);font:700 .82rem var(--font-mono)}.pct-equals{flex-shrink:0;color:var(--muted);font:700 .9rem var(--font-mono)}.pct-result{display:grid;flex:1 1 auto;min-width:7.5rem;height:2.4rem;align-items:center;padding:.3rem .8rem;border:1px solid var(--accent);border-radius:6px;background:color-mix(in srgb,var(--accent) 10%,var(--canvas));color:var(--text);font:700 .95rem var(--font-mono);text-align:center}.pct-result[data-tone=increase]{color:var(--accent)}.pct-result[data-tone=decrease]{border-color:var(--danger);color:var(--danger)}.pct-result[data-tone=same]{border-color:var(--line-strong);color:var(--body)}.pct-copy{flex-shrink:0;height:2.4rem;padding:0 .7rem;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--accent);font-size:.74rem;font-weight:700}.pct-copy:hover{border-color:var(--accent);background:var(--surface-soft)}.pct-error{margin:.7rem 0 0;color:var(--danger);font-size:.78rem}@media(min-width:1000px){.pct-form{grid-template-columns:minmax(0,1fr) 15rem;align-items:end}.pct-outcome{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.pct-result{min-width:0}}@media(max-width:700px){.pct-field{flex:1 1 100%}.pct-op{height:auto}}.img-tool{position:relative}.img-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:1rem;align-items:start}.img-config{display:grid;gap:.8rem;min-width:0}.img-field{display:grid;gap:.25rem;min-width:0}.img-field>span,.img-option>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.img-textarea{width:100%;min-height:6rem;padding:.6rem .7rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.85rem/1.6 var(--font-mono);resize:vertical}.img-textarea:focus{border-color:var(--accent)}.img-textarea::placeholder{color:var(--muted)}.img-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.6rem}.img-option{display:grid;gap:.25rem;min-width:0}.img-option select{min-height:2.2rem;padding:.3rem .5rem;border:1px solid var(--line);border-radius:6px;background:var(--canvas);color:var(--text);font:.82rem var(--font-mono)}.img-option input[type=color]{width:100%;height:2.2rem;padding:2px;border:1px solid var(--line);border-radius:6px;background:var(--canvas);cursor:pointer}.img-option input[type=color]::-webkit-color-swatch-wrapper{padding:0}.img-option input[type=color]::-webkit-color-swatch{border:0;border-radius:4px}.img-actions{display:flex;flex-wrap:wrap;gap:.5rem}.img-actions button{min-height:2.4rem}.img-preview-pane{display:grid;gap:.6rem;justify-items:center;padding:.9rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.img-canvas{display:grid;width:100%;min-height:15rem;place-items:center;overflow:hidden;border:1px dashed var(--line-strong);border-radius:7px;background:var(--canvas)}.img-canvas img{display:block;max-width:100%;height:auto;image-rendering:pixelated}.img-canvas.is-checkerboard{background-image:linear-gradient(45deg,var(--surface-soft) 25%,transparent 25%,transparent 75%,var(--surface-soft) 75%),linear-gradient(45deg,var(--surface-soft) 25%,transparent 25%,transparent 75%,var(--surface-soft) 75%);background-position:0 0,8px 8px;background-size:16px 16px}.img-placeholder{display:grid;gap:.45rem;justify-items:center;padding:1rem;color:var(--muted);font-size:.8rem;text-align:center}.img-placeholder .tool-icon{width:1.7rem;height:1.7rem;opacity:.6}.img-caption{margin:0;color:var(--muted);font:.74rem/1.5 var(--font-mono);text-align:center;overflow-wrap:anywhere}.img-caption:empty{display:none}.img-drop{display:grid;gap:.3rem;justify-items:center;padding:1.6rem 1rem;border:1px dashed var(--line-strong);border-radius:8px;background:var(--surface);color:var(--body);text-align:center;cursor:pointer;transition:border-color .16s ease,background .16s ease}.img-drop:hover,.img-drop[data-dragging=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.img-drop .tool-icon{width:1.5rem;height:1.5rem;color:var(--accent)}.img-drop strong{color:var(--text);font-size:.86rem}.img-drop span{color:var(--muted);font-size:.74rem}.img-drop:focus-within{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}.img-output{display:grid;gap:.45rem;min-width:0}.img-output-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.img-output-head>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.img-output-text{width:100%;min-height:9rem;padding:.6rem .7rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.8rem/1.6 var(--font-mono);resize:vertical}.img-output-text:focus{border-color:var(--accent)}.img-output-link{color:var(--accent);font-size:.8rem;overflow-wrap:anywhere}.img-output-link:hover{text-decoration:underline}.img-meta{margin:0;color:var(--muted);font:.74rem/1.6 var(--font-mono)}.img-error{margin:.7rem 0 0;color:var(--danger);font-size:.78rem}.img-toggle{display:inline-flex;padding:2px;border:1px solid var(--line);border-radius:6px;background:var(--canvas)}.img-toggle button{min-height:1.75rem;padding:.15rem .6rem;border:0;border-radius:4px;background:transparent;color:var(--body);font-size:.74rem;font-weight:650}.img-toggle button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent)}@media(max-width:900px){.img-split{grid-template-columns:minmax(0,1fr)}.img-canvas{min-height:12rem}}.meta-preview{display:block;max-width:100%;max-height:46vh;border:1px solid var(--line);border-radius:7px}.meta-preview[hidden],.img-canvas[hidden]{display:none}.meta-generation,.meta-entries,.meta-chunks{display:grid;gap:.4rem;margin-top:.8rem}.meta-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.meta-note{margin:0;color:var(--muted);font-size:.74rem;line-height:1.6}.mime{position:relative}.mime-panel{padding:.85rem .95rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.mime-search{display:grid;gap:.25rem;max-width:34rem}.mime-search>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.07em;text-transform:uppercase}.mime-input{width:100%;min-height:2.5rem;padding:.35rem .6rem;border:1px solid var(--line);border-radius:6px;background:var(--canvas);color:var(--text);font:.9rem var(--font-mono)}.mime-input:focus{border-color:var(--accent)}.mime-input[aria-invalid=true]{border-color:var(--danger)}.mime-input::placeholder{color:var(--muted);font-size:.8rem}.mime-summary{margin:.7rem 0 0;color:var(--muted);font-size:.76rem}.mime-summary[data-tone=empty]{color:var(--danger)}.mime-match{margin-top:.8rem;padding:.75rem .85rem;border:1px solid var(--accent);border-radius:7px;background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.mime-match-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem}.mime-match-type{color:var(--text);font:700 .95rem var(--font-mono);overflow-wrap:anywhere}.mime-match-badge{padding:.05rem .35rem;border:1px solid var(--line-strong);border-radius:4px;color:var(--muted);font:600 .64rem var(--font-mono)}.mime-match-ext{margin:.45rem 0 0;color:var(--accent);font:.8rem var(--font-mono)}.mime-match-note{margin:.35rem 0 0;color:var(--body);font-size:.8rem}.mime-match-copy{margin-top:.6rem;padding:.3rem .6rem;border:1px solid var(--line-strong);border-radius:5px;background:transparent;color:var(--text);font-size:.76rem;font-weight:650}.mime-match-copy:hover{border-color:var(--accent);color:var(--accent)}.mime-list{margin-top:1.6rem}.mime-list>h2{margin-bottom:.7rem;font-size:1.05rem}.mime-nav{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.2rem}.mime-nav a{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .6rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--body);font-size:.76rem;font-weight:600}.mime-nav a:hover{border-color:var(--accent);color:var(--accent)}.mime-nav em{color:var(--muted);font:600 .68rem var(--font-mono);font-style:normal}.mime-group{margin-bottom:1.6rem;scroll-margin-top:4.5rem}.mime-group-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem .7rem;margin-bottom:.5rem;padding-bottom:.45rem;border-bottom:1px solid var(--line)}.mime-group-head h3{margin:0;font-size:1rem}.mime-group-head p{margin:0;color:var(--muted);font-size:.76rem}.mime-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:7px}.mime-table{width:100%;border-collapse:collapse;font-size:.8rem}.mime-table th,.mime-table td{padding:.42rem .6rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.mime-table tbody tr:last-child td{border-bottom:0}.mime-table thead th{background:var(--canvas);color:var(--muted);font:700 .66rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.mime-table tbody tr:hover{background:var(--surface-soft)}.mime-ext{width:34%}.mime-ext code{display:inline-block;margin:0 .3rem .2rem 0;padding:0 .25rem;border-radius:3px;background:var(--surface-soft);color:var(--body);font:.74rem var(--font-mono)}.mime-none{color:var(--muted)}.mime-value{width:36%}.mime-copy{padding:0;border:0;border-radius:4px;background:transparent;text-align:left}.mime-copy code{color:var(--text);font:.78rem var(--font-mono);overflow-wrap:anywhere}.mime-copy:hover code{color:var(--accent);text-decoration:underline}.mime-flag{display:inline-block;margin-left:.4rem;padding:.05rem .3rem;border:1px solid var(--line-strong);border-radius:3px;color:var(--muted);font:600 .62rem var(--font-mono);white-space:nowrap}.mime-note{color:var(--body);font-size:.76rem}@media(max-width:700px){.mime-ext,.mime-value{width:auto}.mime-note{display:none}.mime-table thead th:last-child{display:none}}.sp{position:relative}.sp-panel{padding:.9rem 1rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.sp-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.7rem}.sp-field{display:grid;gap:.25rem;min-width:0}.sp-field.is-wide{grid-column:1 / -1}.sp-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.sp-input,.sp-select,.sp-textarea{width:100%;min-height:2.4rem;padding:.35rem .6rem;border:1px solid var(--line);border-radius:6px;background:var(--canvas);color:var(--text);font:.86rem var(--font-mono)}.sp-input:focus,.sp-select:focus,.sp-textarea:focus{border-color:var(--accent)}.sp-input[aria-invalid=true],.sp-textarea[aria-invalid=true]{border-color:var(--danger)}.sp-textarea{min-height:7rem;padding:.6rem .7rem;line-height:1.6;resize:vertical}.sp-hint{margin:.5rem 0 0;color:var(--muted);font-size:.74rem;line-height:1.55}.sp-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}.sp-actions button{min-height:2.4rem}.sp-toggle{display:inline-flex;padding:2px;border:1px solid var(--line);border-radius:6px;background:var(--canvas)}.sp-toggle button{min-height:1.8rem;padding:.15rem .6rem;border:0;border-radius:4px;background:transparent;color:var(--body);font-size:.74rem;font-weight:650}.sp-toggle button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent)}.sp-output{margin-top:.8rem;padding:.7rem .8rem;border:1px solid var(--line);border-radius:7px;background:var(--canvas);color:var(--text);font:.8rem/1.65 var(--font-mono);overflow-wrap:anywhere;white-space:pre-wrap}.sp-output:empty{display:none}.sp-output[data-tone=error]{border-color:var(--danger);color:var(--danger)}.sp-output.is-scroll{max-height:22rem;overflow:auto}.sp-rows{display:grid;gap:1px;margin-top:.8rem;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line)}.sp-row{display:grid;grid-template-columns:minmax(6rem,10rem) minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.4rem .6rem;background:var(--surface)}.sp-row>span{color:var(--muted);font-size:.76rem}.sp-row>code{color:var(--text);font:.78rem var(--font-mono);overflow-wrap:anywhere}.sp-row button{padding:.15rem .4rem;border:0;border-radius:4px;background:transparent;color:var(--accent);font-size:.7rem;font-weight:700}.sp-row button:hover{background:var(--surface-soft)}.sp-grid-table{width:100%;border-collapse:collapse;font-size:.8rem}.sp-grid-table th,.sp-grid-table td{padding:.42rem .6rem;border-bottom:1px solid var(--line);text-align:left}.sp-grid-table thead th{color:var(--muted);font:700 .66rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.sp-grid-table tbody tr:last-child td{border-bottom:0}.sp-grid-table code{color:var(--text);font:.78rem var(--font-mono)}.sp-preview{display:grid;place-items:center;min-height:12rem;padding:.8rem;border:1px dashed var(--line-strong);border-radius:7px;background:var(--canvas)}.sp-preview svg,.sp-preview img{max-width:100%;height:auto}@media(max-width:700px){.sp-row{grid-template-columns:minmax(0,1fr) auto;row-gap:.15rem}}.tool-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.tool-tab{padding:.38rem .8rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font-size:.78rem;font-weight:700}.tool-tab:hover{border-color:var(--accent);color:var(--text)}.tool-tab[aria-selected=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.ce-summary{margin:.1rem 0 .7rem;color:var(--muted);font:700 .7rem/1.5 var(--font-mono);letter-spacing:.04em}.ce-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:7px}.ce-table{width:100%;border-collapse:collapse;font:.78rem/1.5 var(--font-mono)}.ce-table th{position:sticky;top:0;padding:.5rem .6rem;border-bottom:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.06em;text-align:left;text-transform:uppercase;white-space:nowrap}.ce-table td{padding:.45rem .6rem;border-bottom:1px solid var(--line);color:var(--text);overflow-wrap:anywhere}.ce-table tbody tr:last-child td{border-bottom:0}.ce-table tbody tr:hover td{background:var(--surface)}.ce-table .ce-char{width:3.2rem;font-size:1.05rem;text-align:center}.ce-table .ce-char[data-astral=true]{color:var(--accent)}.ce-table .ce-char[data-control=true],.ce-table td[data-empty=true]{color:var(--muted)}.ua-samples{display:flex;align-items:baseline;gap:.6rem;margin:.6rem 0 .2rem;flex-wrap:wrap}.ua-samples>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.ua-samples>div{display:flex;flex-wrap:wrap;gap:.3rem}.ua-sample{padding:.2rem .5rem;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);font:600 .7rem var(--font-mono)}.ua-sample:hover{border-color:var(--accent);color:var(--text)}.ua-verdict{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:.8rem 0;min-height:2rem}.ua-verdict:empty{margin:0;min-height:0}.ua-verdict strong{font-size:1.05rem}.ua-verdict em{color:var(--muted);font-size:.76rem;font-style:normal}.ua-badge{padding:.16rem .5rem;border:1px solid var(--line-strong);border-radius:999px;color:var(--muted);font:700 .68rem/1.5 var(--font-mono);letter-spacing:.04em;white-space:nowrap}.ua-verdict[data-state=crawler] .ua-badge{border-color:var(--danger);color:var(--danger)}.ua-verdict[data-state=browser] .ua-badge{border-color:var(--accent);color:var(--accent)}.ua-verdict[data-state=unknown] .ua-badge{border-style:dashed}.ip-controls{display:grid;gap:.7rem}.ip-control{display:grid;gap:.3rem}.ip-control>span{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.ip-control>span em{color:var(--accent);font-style:normal;letter-spacing:0;text-transform:none}.ip-control input[type=range]{width:100%;accent-color:var(--accent)}.ip-control input[type=range]:disabled{opacity:.4;cursor:not-allowed}.ip-note{color:var(--muted);font-size:.7rem;line-height:1.5}.ip-summary{display:grid;gap:1px;margin-top:.8rem;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line)}.ip-summary:empty{display:none}.ip-summary-row{display:grid;grid-template-columns:minmax(6rem,9rem) minmax(0,1fr);gap:.6rem;padding:.42rem .65rem;background:var(--surface)}.ip-summary-row>span{color:var(--muted);font-size:.76rem}.ip-summary-row>code{color:var(--text);font:.78rem var(--font-mono);overflow-wrap:anywhere}.ip-summary-row[data-tone=good]>code{color:var(--accent)}.ip-summary-row[data-tone=warn]>code{color:var(--danger)}.ip-sizes{display:grid;grid-template-columns:repeat(auto-fit,minmax(6rem,1fr));gap:.5rem;margin-top:.8rem}.ip-size{display:grid;gap:.3rem;justify-items:center;padding:.5rem;border:1px solid var(--line);border-radius:6px;background:var(--canvas)}.ip-size img{max-width:100%;height:auto;image-rendering:pixelated}.ip-size span{color:var(--muted);font:.68rem var(--font-mono)}.ip-size button{padding:.15rem .4rem;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--accent);font-size:.68rem;font-weight:700}.ip-size button:hover{border-color:var(--accent)}.ip-size[data-placeholder]{border-style:dashed}.app-icon-group{margin-top:.9rem}.app-icon-group h2{margin:0 0 .4rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.app-icon-note{margin:.6rem 0 0;color:var(--muted);font-size:.72rem;line-height:1.6}.app-icon-snippet-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.3rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em}.ip-snippet{position:relative;margin-top:.8rem}.ip-snippet pre{overflow-x:auto;margin:0;padding:.7rem .8rem;border:1px solid var(--line);border-radius:7px;background:var(--canvas);color:var(--text);font:.76rem/1.6 var(--font-mono)}.crop-stage[hidden],.img-canvas[hidden]{display:none}.crop-stage{position:relative;display:inline-block;line-height:0;overflow:hidden;border-radius:7px;touch-action:none}.crop-source{display:block;max-width:100%;max-height:58vh}.crop-box{position:absolute;box-sizing:border-box;border:1px solid rgba(255,255,255,.9);box-shadow:0 0 0 9999px #090d149e;cursor:move}.crop-box[data-locked=true]{border-color:var(--accent)}.crop-handle{position:absolute;width:.7rem;height:.7rem;border:1px solid rgba(9,13,20,.55);border-radius:2px;background:#fff}.crop-handle[data-handle=nw]{left:-.35rem;top:-.35rem;cursor:nwse-resize}.crop-handle[data-handle=n]{left:50%;top:-.35rem;margin-left:-.35rem;cursor:ns-resize}.crop-handle[data-handle=ne]{right:-.35rem;top:-.35rem;cursor:nesw-resize}.crop-handle[data-handle=e]{right:-.35rem;top:50%;margin-top:-.35rem;cursor:ew-resize}.crop-handle[data-handle=se]{right:-.35rem;bottom:-.35rem;cursor:nwse-resize}.crop-handle[data-handle=s]{left:50%;bottom:-.35rem;margin-left:-.35rem;cursor:ns-resize}.crop-handle[data-handle=sw]{left:-.35rem;bottom:-.35rem;cursor:nesw-resize}.crop-handle[data-handle=w]{left:-.35rem;top:50%;margin-top:-.35rem;cursor:ew-resize}.crop-box[data-locked=true] .crop-handle[data-handle=n],.crop-box[data-locked=true] .crop-handle[data-handle=e],.crop-box[data-locked=true] .crop-handle[data-handle=s],.crop-box[data-locked=true] .crop-handle[data-handle=w]{display:none}.crop-ratios{display:flex;flex-wrap:wrap;gap:.3rem}.crop-ratios button{padding:.24rem .5rem;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);font:600 .7rem var(--font-mono)}.crop-ratios button:hover{border-color:var(--accent);color:var(--text)}.crop-ratios button[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.crop-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.token-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:start}.token-pane{display:grid;gap:.6rem;min-width:0}.token-pane-head{display:flex;align-items:baseline;gap:.6rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.token-pane-head>span{margin-right:auto}.token-input{width:100%;min-height:20rem;padding:.8rem .85rem;border:1px solid var(--line);border-radius:7px;background:var(--canvas);color:var(--text);font:.8rem/1.65 var(--font-mono);resize:vertical}.token-input:focus{border-color:var(--accent);outline:none}.token-stats{display:flex;flex-wrap:wrap;gap:.4rem .9rem;color:var(--muted);font:.72rem/1.6 var(--font-mono)}.token-stats b{color:var(--text);font-weight:700}.token-total{display:grid;gap:.15rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.token-total>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.token-total>strong{color:var(--accent);font:800 2rem/1.1 var(--font-mono)}.token-total>em{color:var(--muted);font:.72rem/1.5 var(--font-mono);font-style:normal}.token-disclaimer{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.token-window{display:grid;gap:.35rem}.token-window-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.token-window-head code{color:var(--text);font:.74rem var(--font-mono);letter-spacing:0;text-transform:none}.token-bar{height:.45rem;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:var(--canvas)}.token-bar i{display:block;height:100%;background:var(--accent);transition:width .15s ease}.token-bar[data-state=warn] i{background:var(--danger)}.token-cost,.token-compare{display:grid;gap:.5rem}@media(max-width:860px){.token-split{grid-template-columns:minmax(0,1fr)}.token-input{min-height:14rem}}.slice-stage{position:relative;display:inline-block;line-height:0;border-radius:7px;overflow:hidden}.slice-stage[hidden],.img-canvas[hidden]{display:none}.slice-stage img{display:block;max-width:100%;max-height:52vh}.slice-lines{position:absolute;inset:0;pointer-events:none}.slice-lines i{position:absolute;box-sizing:border-box;border:1px solid rgba(255,255,255,.85);box-shadow:0 0 2px #090d148c}.slice-presets{display:flex;flex-wrap:wrap;gap:.3rem}.slice-presets button{padding:.24rem .5rem;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);font:600 .7rem var(--font-mono)}.slice-presets button:hover{border-color:var(--accent);color:var(--text)}.slice-presets button[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.slice-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.sig-split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1rem;align-items:start}.sig-pane{display:grid;gap:.55rem;min-width:0}.sig-head{display:flex;align-items:center;gap:.45rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.sig-head .tool-icon{width:1.05rem;height:1.05rem}.sig-pad{display:block;width:100%;height:20rem;border:1px solid var(--line-strong);border-radius:7px;background:#fff;touch-action:none;cursor:crosshair}.sig-hint{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.sig-check{display:flex;align-items:flex-start;gap:.45rem;color:var(--muted);font-size:.74rem;line-height:1.5}.sig-check input{margin-top:.15rem;accent-color:var(--accent)}.sig-preview{display:grid;gap:.35rem}.sig-preview>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.sig-preview-frame{display:grid;place-items:center;min-height:6rem;padding:.4rem;border:1px solid var(--line);border-radius:6px;background-color:var(--canvas);background-image:linear-gradient(45deg,var(--surface-soft) 25%,transparent 25%,transparent 75%,var(--surface-soft) 75%),linear-gradient(45deg,var(--surface-soft) 25%,transparent 25%,transparent 75%,var(--surface-soft) 75%);background-position:0 0,8px 8px;background-size:16px 16px}.sig-preview-frame img{display:block;max-width:100%;max-height:5.2rem}.sig-preview-frame em{color:var(--muted);font-size:.72rem;font-style:normal}@media(max-width:860px){.sig-split{grid-template-columns:minmax(0,1fr)}.sig-pad{height:14rem}}.photo-mm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.photo-mm[hidden]{display:none}.photo-backdrops{display:flex;flex-wrap:wrap;gap:.35rem}.photo-backdrops button{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);font-size:.72rem}.photo-backdrops button:hover{border-color:var(--accent);color:var(--text)}.photo-backdrops button[aria-pressed=true]{border-color:var(--accent);color:var(--text);background:var(--surface)}.photo-backdrops i{display:block;width:.85rem;height:.85rem;border:1px solid var(--line-strong);border-radius:3px}.photo-backdrops i[data-swatch=keep]{background:linear-gradient(135deg,var(--muted) 0 50%,transparent 50% 100%)}.wm-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1rem;align-items:start}.wm-stage-pane{display:grid;gap:.55rem;justify-items:center;padding:.9rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.wm-stage{position:relative;display:inline-block;line-height:0;border-radius:7px;overflow:hidden;touch-action:none;cursor:crosshair}.wm-stage[hidden],.img-canvas[hidden]{display:none}.wm-stage img{display:block;max-width:100%;max-height:56vh}.wm-stage canvas{position:absolute;inset:0;width:100%;height:100%}.wm-stage canvas[hidden]{display:none}.wm-stage canvas[data-overlay]{touch-action:none}.wm-compare{display:flex;align-items:center;gap:.6rem;width:100%}.wm-compare[hidden]{display:none}.wm-compare-hint{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.wm-check{display:flex;align-items:flex-start;gap:.45rem;color:var(--muted);font-size:.74rem;line-height:1.5}.wm-check input{margin-top:.15rem;accent-color:var(--accent)}.wm-note{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}@media(max-width:900px){.wm-split{grid-template-columns:minmax(0,1fr)}}.mm-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.8rem;flex-wrap:wrap}.mm-templates{display:flex;flex-wrap:wrap;gap:.3rem}.mm-template{padding:.24rem .55rem;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);font:600 .7rem var(--font-mono)}.mm-template:hover{border-color:var(--accent);color:var(--text)}.mm-template[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.mm-actions{display:flex;flex-wrap:wrap;gap:.35rem}.mm-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:start}.mm-pane{display:grid;gap:.4rem;min-width:0}.mm-pane-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.mm-pane-head em{color:var(--accent);font-style:normal;letter-spacing:0;text-transform:none}.mm-input{width:100%;min-height:26rem;padding:.8rem .85rem;border:1px solid var(--line);border-radius:7px;background:var(--canvas);color:var(--text);font:.8rem/1.7 var(--font-mono);resize:vertical;tab-size:2}.mm-input:focus{border-color:var(--accent);outline:none}.mm-preview{display:grid;place-items:center;min-height:26rem;padding:.8rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);overflow:auto}.mm-preview svg{max-width:100%;height:auto}.mm-note{margin:0;color:var(--muted);font-size:.74rem;text-align:center}.mm-error{margin-top:.7rem;padding:.55rem .75rem;border:1px solid var(--danger);border-radius:7px;color:var(--danger);font:.76rem/1.6 var(--font-mono);white-space:pre-wrap}.mm-error[hidden]{display:none}@media(max-width:960px){.mm-split{grid-template-columns:minmax(0,1fr)}.mm-input,.mm-preview{min-height:18rem}}.age-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;align-items:end}.age-quick{display:flex;gap:.6rem;grid-column:1 / -1}.age-quick .text-button:disabled{color:var(--muted);cursor:not-allowed}.age-quick .text-button:disabled:hover{text-decoration:none}.age-headline{margin:1rem 0 .2rem;min-height:2.4rem;display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem}.age-headline:empty{margin:0;min-height:0}.age-headline strong{color:var(--accent);font:800 1.6rem/1.2 var(--font-mono)}.age-headline em{color:var(--muted);font-size:.78rem;font-style:normal}.age-note{margin:.8rem 0 0;color:var(--muted);font-size:.72rem;line-height:1.6}@media(max-width:640px){.age-fields{grid-template-columns:minmax(0,1fr)}}.gi-pickers{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem}.gi-chosen-row{display:flex;align-items:baseline;gap:.6rem;margin:.8rem 0 .2rem;flex-wrap:wrap}.gi-chosen-label{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.gi-chosen{display:flex;flex-wrap:wrap;gap:.3rem}.gi-chosen:empty:after{content:attr(data-empty);color:var(--muted);font-size:.74rem}.gi-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .3rem .2rem .5rem;border:1px solid var(--accent);border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--text);font-size:.72rem}.gi-chip:hover{border-color:var(--danger)}.gi-chip b{color:var(--muted);font-weight:700}.gi-output-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin:.9rem 0 .4rem;padding-top:.8rem;border-top:1px solid var(--line)}.gi-output-head>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em}.gi-output-actions{display:flex;align-items:center;gap:.4rem}.gi-output{max-height:26rem;margin:0;overflow:auto;padding:.8rem .85rem;border:1px solid var(--line);border-radius:7px;background:var(--canvas);color:var(--text);font:.78rem/1.7 var(--font-mono);white-space:pre}.gi-output:empty:before{content:attr(data-empty);color:var(--muted)}.py-modes{display:flex;flex-wrap:wrap;gap:.35rem;margin:.8rem 0 .2rem}.py-mode{display:grid;gap:.1rem;padding:.35rem .6rem;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--muted);text-align:left}.py-mode:hover{border-color:var(--accent);color:var(--text)}.py-mode[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text)}.py-mode em{color:var(--muted);font:.66rem var(--font-mono);font-style:normal}.py-bar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:.7rem 0 .3rem;flex-wrap:wrap}.py-separator{display:flex;align-items:center;gap:.45rem}.py-separator>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.py-separator select{width:auto;min-width:8rem}.py-actions{display:flex;align-items:center;gap:.5rem}.py-output-head,.py-detail-head{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;margin:.8rem 0 .4rem}.py-output-head>span,.py-detail-head>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.py-output-head em{color:var(--accent);font-size:.7rem;font-style:normal}.py-output{max-height:14rem;margin:0;overflow:auto;padding:.8rem .85rem;border:1px solid var(--line);border-radius:7px;background:var(--canvas);color:var(--text);font:.84rem/1.8 var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere}.py-output:empty:before{content:attr(data-empty);color:var(--muted)}.py-filter{display:flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.74rem}.py-filter input{accent-color:var(--accent)}.ce-table tr[data-polyphonic=true] td{background:color-mix(in srgb,var(--accent) 8%,transparent)}.ce-table tr[data-polyphonic=true] td:first-child{color:var(--accent);font-weight:700}.ce-table .py-empty{color:var(--muted)}.ti-split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1.2rem;align-items:start}.ti-preview-panel{display:grid;gap:.7rem;align-content:start}.ti-stage{position:relative;display:grid;min-height:220px;padding:1rem;place-items:center;border:1px solid var(--line);border-radius:10px;background-color:var(--surface-soft);background-image:linear-gradient(45deg,color-mix(in srgb,var(--line) 45%,transparent) 25%,transparent 25%),linear-gradient(-45deg,color-mix(in srgb,var(--line) 45%,transparent) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,color-mix(in srgb,var(--line) 45%,transparent) 75%),linear-gradient(-45deg,transparent 75%,color-mix(in srgb,var(--line) 45%,transparent) 75%);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px}.ti-stage canvas{display:block;width:auto;height:auto;max-width:100%;max-height:min(58vh,520px);border-radius:6px;box-shadow:var(--shadow)}.ti-busy{position:absolute;right:.75rem;bottom:.75rem;display:flex;align-items:center;gap:.45rem;padding:.35rem .7rem;border:1px solid var(--line-strong);border-radius:999px;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--body);font-size:.72rem}.ti-spinner{width:.78rem;height:.78rem;border:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-top-color:var(--accent);border-radius:50%;animation:ti-spin .8s linear infinite}@keyframes ti-spin{to{transform:rotate(360deg)}}.ti-meta{margin:0;color:var(--muted);font:600 .72rem/1.4 var(--font-mono)}.ti-hint{margin:0;padding:.5rem .65rem;border-left:3px solid var(--accent);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.ti-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem .9rem;align-content:start}.ti-field{display:grid;gap:.3rem}.ti-field--wide{grid-column:1 / -1}.ti-label{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.ti-label output{color:var(--accent);font-weight:700;letter-spacing:0}.ti-field input[type=text],.ti-field input[type=number],.ti-field select,.ti-field textarea{width:100%;padding:.45rem .55rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:.82rem}.ti-field textarea{min-height:4.6rem;resize:vertical;font-family:inherit;line-height:1.5}.ti-field input[type=color]{width:100%;height:2rem;padding:2px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.ti-field input[type=color]::-webkit-color-swatch-wrapper{padding:0}.ti-field input[type=color]::-webkit-color-swatch{border:1px solid var(--line-strong);border-radius:4px}.ti-field input[type=range]{width:100%;accent-color:var(--accent)}.ti-seg{display:flex;gap:.25rem;padding:.2rem;border:1px solid var(--line);border-radius:7px;background:var(--surface-soft)}.ti-seg button{flex:1;padding:.35rem .3rem;border:0;border-radius:5px;background:transparent;color:var(--body);font-size:.76rem;font-weight:600}.ti-seg button:hover{color:var(--text)}.ti-seg button.is-active{background:color-mix(in srgb,var(--accent) 22%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);color:var(--text)}.ti-check{display:flex;align-items:center;gap:.5rem;color:var(--body);font-size:.78rem}.ti-check input{width:1rem;height:1rem;accent-color:var(--accent)}.ti-note{margin:0;color:var(--muted);font-size:.7rem;line-height:1.5}.ti-about{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line)}.ti-about summary{color:var(--body);font-size:.8rem;font-weight:650;cursor:pointer}.ti-about summary:hover{color:var(--accent)}.ti-about-body{margin-top:.75rem;color:var(--body);font-size:.78rem;line-height:1.65}.ti-about-body p{margin:0 0 .5rem}.ti-map{width:100%;margin:.75rem 0;border-collapse:collapse;font-size:.76rem}.ti-map th,.ti-map td{padding:.4rem .55rem;border:1px solid var(--line);text-align:left;vertical-align:top}.ti-map th{background:var(--surface-soft);color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.ti-map em{color:var(--muted);font-style:normal}.ti-licences{display:grid;gap:.35rem;margin:.5rem 0 0;padding:0;list-style:none}.ti-licences li{display:grid;gap:.12rem;padding:.45rem .6rem;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.ti-licences strong{font-size:.76rem;color:var(--text)}.ti-licences span{color:var(--accent);font:600 .68rem/1.4 var(--font-mono)}.ti-licences code{color:var(--muted);font:.62rem/1.4 var(--font-mono);word-break:break-all}@media(max-width:1000px){.ti-split{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.ti-controls{grid-template-columns:minmax(0,1fr)}}.rs-paper{width:794px;margin:0 auto;padding:56.7px;border-radius:3px;background:#fff;box-shadow:0 12px 34px #0000004d}.rs-preview{font-family:var(--rs-font-family, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif);font-size:var(--rs-font-size, 14px);line-height:var(--rs-line-height, 1.5);color:#333;overflow-wrap:break-word;word-wrap:break-word}.rs-preview h1,.rs-preview h2,.rs-preview h3,.rs-preview h4,.rs-preview h5,.rs-preview h6{margin:calc(var(--rs-paragraph, .5em) * 1.5) 0 var(--rs-paragraph, .5em);color:var(--rs-title-color, #2c3e50);line-height:1.25}.rs-preview h1{font-size:var(--rs-h1-size, 24px)}.rs-preview h2{font-size:var(--rs-h2-size, 22px);padding-bottom:.3em;border-bottom:1px solid var(--rs-line-color, #2c3e50)}.rs-preview h3{font-size:var(--rs-h3-size, 20px)}.rs-preview h4{font-size:1.08em}.rs-preview h5{font-size:1em}.rs-preview h6{font-size:.95em}.rs-preview p{margin:var(--rs-paragraph, .5em) 0}.rs-preview ul,.rs-preview ol{margin:calc(var(--rs-paragraph, .5em) * .8) 0;padding-left:2em}.rs-preview li{margin:.15em 0}.rs-preview li>ul,.rs-preview li>ol{margin:.15em 0}.rs-preview blockquote{margin:var(--rs-paragraph, .5em) 0;padding:.1em 0 .1em 1em;border-left:4px solid #7f8c8d;color:#7f8c8d}.rs-preview pre{margin:var(--rs-paragraph, .5em) 0;padding:10px;overflow-x:auto;border-radius:4px;background:#ecf0f1}.rs-preview code{padding:2px 4px;border-radius:3px;background:#ecf0f1;font-family:SFMono-Regular,Menlo,Consolas,Courier New,monospace;font-size:.92em}.rs-preview pre code{padding:0;background:transparent}.rs-preview table{width:100%;margin:var(--rs-paragraph, .5em) 0;border-collapse:collapse}.rs-preview th,.rs-preview td{padding:8px;border:1px solid #bdc3c7;text-align:left}.rs-preview th{background:#f2f2f2;font-weight:700}.rs-preview a{color:#3498db}.rs-preview hr{height:1px;margin:1em 0;border:0;background:var(--rs-line-color, #2c3e50)}.rs-preview img{max-width:100%;height:auto}.rs-preview strong{font-weight:700}.rs-preview em{font-style:italic}.rs-photo{float:right;margin:0 0 .7em 1.1em;overflow:hidden;background:#f2f4f7}.rs-photo img{display:block;width:100%;height:100%;object-fit:cover}.rs-preview.has-photo>h1:first-of-type,.rs-preview.has-photo>h2:first-of-type{overflow:hidden}.rs-preview.theme-default{color:#333}.rs-preview.theme-default h1,.rs-preview.theme-default h2,.rs-preview.theme-default h3{font-weight:600}.rs-preview.theme-default ul{list-style-type:disc}.rs-preview.theme-modern{color:#444}.rs-preview.theme-modern h1,.rs-preview.theme-modern h2,.rs-preview.theme-modern h3{font-weight:500;letter-spacing:-.02em}.rs-preview.theme-modern h2{border-bottom-style:dashed;border-bottom-width:1px}.rs-preview.theme-modern ul{list-style-type:circle}.rs-preview.theme-modern blockquote{padding:10px 15px;border-left-color:#ddd;border-radius:0 4px 4px 0;background:#f9f9f9;color:#666}.rs-preview.theme-classic{color:#222}.rs-preview.theme-classic h1,.rs-preview.theme-classic h2,.rs-preview.theme-classic h3{font-weight:700}.rs-preview.theme-classic h2{padding-bottom:.4em;border-bottom-style:double;border-bottom-width:3px}.rs-preview.theme-classic ul{list-style-type:square}.rs-preview.theme-classic blockquote{border-left-color:#555;color:#555;font-style:italic}.rs-preview.theme-minimal{color:#333;letter-spacing:.01em}.rs-preview.theme-minimal h1,.rs-preview.theme-minimal h2,.rs-preview.theme-minimal h3{font-weight:400;letter-spacing:.02em}.rs-preview.theme-minimal h2{padding-bottom:0;border-bottom:none}.rs-preview.theme-minimal hr{height:2px;margin:1.5em 0;background:#f0f0f0}.rs-preview.theme-minimal ul{padding-left:1em;list-style-type:none}.rs-preview.theme-minimal ul li{position:relative}.rs-preview.theme-minimal ul li:before{content:"–";position:absolute;margin-left:-1em}.rs-preview.theme-minimal blockquote{padding-left:1em;border-left:none;color:#666;font-style:normal}.rs-preview.theme-elegant{color:#333}.rs-preview.theme-elegant h1,.rs-preview.theme-elegant h2,.rs-preview.theme-elegant h3{font-weight:400;font-style:italic}.rs-preview.theme-elegant h2{padding-bottom:.5em;border-bottom-style:solid;border-bottom-width:1px}.rs-preview.theme-elegant ul{list-style-type:disc}.rs-preview.theme-elegant blockquote{border-left-width:2px;color:#666;font-style:italic}.rs-preview.theme-elegant a{text-decoration:none;border-bottom:1px dotted}.rs-preview.theme-professional{color:#222}.rs-preview.theme-professional h1,.rs-preview.theme-professional h2,.rs-preview.theme-professional h3{margin-top:1.2em;margin-bottom:.6em;font-weight:600}.rs-preview.theme-professional h2{padding-bottom:.4em;border-bottom-style:solid;border-bottom-width:2px}.rs-preview.theme-professional ul{list-style-type:square}.rs-preview.theme-professional table{border:1px solid #ddd}.rs-preview.theme-professional th{background:#f5f5f5;font-weight:700}.rs-preview.theme-professional blockquote{border-left-color:#ccc;background:#f9f9f9;color:#555}@media print{.rs-paper{width:auto!important;margin:0!important;padding:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}.rs-preview{padding:15mm 0!important}.rs-preview h1,.rs-preview h2,.rs-preview h3,.rs-preview h4,.rs-preview h5,.rs-preview h6{break-after:avoid!important;break-inside:avoid!important;page-break-after:avoid!important;page-break-inside:avoid!important}.rs-preview table,.rs-preview tr,.rs-preview img,.rs-photo,.rs-preview blockquote,.rs-preview pre{break-inside:avoid!important;page-break-inside:avoid!important}.rs-preview p,.rs-preview li{orphans:3;widows:3}.rs-preview pre{white-space:pre-wrap!important}.rs-preview a{text-decoration:underline!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}@page{size:A4;margin:0 15mm}}.rs-tool{display:grid;gap:.9rem}.rs-config{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.6rem .8rem;padding:.85rem;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.rs-field{display:grid;gap:.25rem}.rs-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.rs-field select{width:100%;padding:.4rem .5rem;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);color:var(--text);font-size:.8rem}.rs-note{margin:0;color:var(--muted);font-size:.72rem;line-height:1.5}.rs-photo-row{grid-column:1 / -1;display:grid;gap:.4rem;padding-top:.7rem;border-top:1px dashed var(--line)}.rs-field-label{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.rs-photo-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem}.rs-inline{display:inline-flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.74rem;white-space:nowrap}.rs-inline select,.rs-inline input[type=number]{padding:.35rem .45rem;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);color:var(--text);font-size:.76rem}.rs-inline input[type=number]{width:4.6rem}.rs-inline select{max-width:12rem}.rs-inline input[type=range]{width:7rem;accent-color:var(--accent)}.rs-inline output{min-width:1.6rem;color:var(--accent);font:700 .74rem/1 var(--font-mono)}.rs-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.rs-stats{margin-left:auto;color:var(--muted);font:600 .72rem/1.4 var(--font-mono)}.rs-tip{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.rs-hint{margin:0;padding:.5rem .65rem;border-left:3px solid var(--accent);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.rs-split{--rs-pane-height: clamp(26rem, 72vh, 48rem);display:grid;grid-template-columns:minmax(0,21rem) minmax(0,1fr);gap:1rem}.rs-pane{display:grid;grid-template-rows:auto minmax(0,1fr);gap:.4rem;height:var(--rs-pane-height);min-height:0}.rs-pane-label{display:flex;align-items:baseline;gap:.5rem;margin:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.rs-pane-label span{color:var(--line-strong);font-weight:600;letter-spacing:0;text-transform:none}.rs-editor-panel textarea{width:100%;height:100%;min-height:0;padding:.7rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:.78rem/1.6 var(--font-mono);resize:none}.rs-scroll{overflow:auto;padding:.75rem;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}@media(max-width:1180px){.rs-split{grid-template-columns:minmax(0,1fr);--rs-pane-height: clamp(20rem, 60vh, 34rem)}}@media print{header,footer,nav,aside,.toast,.site-header,.site-footer,.tool-sidebar,.sidebar-all-tools,.tool-page-intro,.privacy-note,.rs-config,.rs-note,.rs-toolbar,.rs-tip,.rs-hint,.rs-pane-label,.rs-editor-panel{display:none!important}html,body{background:#fff!important}.tool-page-shell,.tool-page,.rs-tool,.rs-split,.rs-scroll,.rs-preview-panel{display:block!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;overflow:visible!important}}.whois{display:grid;gap:.9rem}.whois-notice{display:flex;align-items:flex-start;gap:.45rem;padding:.55rem .7rem;border-left:3px solid var(--accent);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--body);font-size:.74rem;line-height:1.55}.whois-form{display:flex;flex-wrap:wrap;gap:.5rem}.whois-form input{flex:1 1 18rem;min-width:0;padding:.5rem .65rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.86rem/1.4 var(--font-mono)}.whois-form input:focus-visible{border-color:var(--accent)}.whois-error{margin:0;padding:.5rem .65rem;border-left:3px solid var(--danger);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.whois-busy{display:flex;align-items:center;gap:.45rem;margin:0;color:var(--muted);font-size:.76rem}.whois-spinner{width:.78rem;height:.78rem;border:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-top-color:var(--accent);border-radius:50%;animation:whois-spin .8s linear infinite}@keyframes whois-spin{to{transform:rotate(360deg)}}.whois-result{display:grid;gap:1rem}.whois-head{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.whois-head h2{margin:0;font-size:1.15rem;overflow-wrap:anywhere}.whois-badge{padding:.18rem .55rem;border-radius:999px;font:700 .68rem/1.4 var(--font-mono)}.whois-badge[data-tone=ok]{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.whois-badge[data-tone=warn]{background:color-mix(in srgb,#e0a020 22%,transparent);color:#e0a020}.whois-sub{margin:0;color:var(--muted);font-size:.76rem}.whois-dates,.whois-entities{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.4rem 1rem;margin:0;padding:.85rem .95rem;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.whois-dates dt,.whois-entities dt{color:var(--muted);font:700 .66rem/1.6 var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.whois-dates dd,.whois-entities dd{margin:0;color:var(--text);font-size:.8rem;overflow-wrap:anywhere}.whois-dates dd[data-tone=ok]{color:var(--accent)}.whois-dates dd[data-tone=warn]{color:#e0a020}.whois-dates dd[data-tone=bad]{color:var(--danger)}.whois-block{display:grid;gap:.45rem}.whois-block h3{margin:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.whois-list,.whois-status{display:grid;gap:.3rem;margin:0;padding:0;list-style:none}.whois-list li{padding:.4rem .6rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font:.78rem/1.4 var(--font-mono);overflow-wrap:anywhere}.whois-status li{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:.3rem .7rem;align-items:baseline;padding:.45rem .6rem;border:1px solid var(--line);border-left-width:3px;border-radius:6px;background:var(--surface)}.whois-status li code{color:var(--text);font:.74rem/1.4 var(--font-mono);overflow-wrap:anywhere}.whois-status li span{color:var(--body);font-size:.76rem}.whois-status li[data-tone=ok]{border-left-color:var(--accent)}.whois-status li[data-tone=info]{border-left-color:var(--line-strong)}.whois-status li[data-tone=warn]{border-left-color:#e0a020}.whois-raw{padding-top:.85rem;border-top:1px solid var(--line)}.whois-raw summary{color:var(--body);font-size:.78rem;font-weight:650;cursor:pointer}.whois-raw summary:hover{color:var(--accent)}.whois-raw pre{max-height:24rem;margin:.6rem 0;padding:.8rem;overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--body);font:.72rem/1.55 var(--font-mono)}@media(max-width:640px){.whois-dates,.whois-entities{grid-template-columns:minmax(0,1fr);gap:.1rem}.whois-dates dd,.whois-entities dd{margin-bottom:.5rem}.whois-status li{grid-template-columns:minmax(0,1fr)}}.mobile{display:grid;gap:.9rem}.mobile-form{display:flex;flex-wrap:wrap;gap:.5rem}.mobile-form input{flex:1 1 16rem;min-width:0;padding:.5rem .65rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.95rem/1.4 var(--font-mono);letter-spacing:.04em}.mobile-form input:focus-visible{border-color:var(--accent)}.mobile-error{margin:0;padding:.5rem .65rem;border-left:3px solid var(--danger);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.mobile-busy{display:flex;align-items:center;gap:.45rem;margin:0;color:var(--muted);font-size:.76rem}.mobile-spinner{width:.78rem;height:.78rem;border:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-top-color:var(--accent);border-radius:50%;animation:mobile-spin .8s linear infinite}@keyframes mobile-spin{to{transform:rotate(360deg)}}.mobile-result{display:grid;gap:.9rem}.mobile-head{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.mobile-head h2{margin:0;font:700 1.15rem/1.3 var(--font-mono);letter-spacing:.06em}.mobile-carrier{padding:.2rem .6rem;border:1px solid var(--line-strong);border-radius:999px;color:var(--text);font:700 .72rem/1.5 var(--font-mono)}.mobile-carrier[data-carrier=移动]{border-color:#1a9ce0;background:color-mix(in srgb,#1a9ce0 16%,transparent);color:#4fc3f7}.mobile-carrier[data-carrier=联通]{border-color:#e2464f;background:color-mix(in srgb,#e2464f 16%,transparent);color:#ff8a90}.mobile-carrier[data-carrier=电信]{border-color:#12a5a0;background:color-mix(in srgb,#12a5a0 16%,transparent);color:#4dd0c8}.mobile-carrier[data-carrier=电信虚拟运营商],.mobile-carrier[data-carrier=联通虚拟运营商],.mobile-carrier[data-carrier=移动虚拟运营商]{border-color:var(--line-strong);background:var(--surface-soft);color:var(--body)}.mobile-carrier[data-carrier=异常]{border-color:#e0a020;background:color-mix(in srgb,#e0a020 16%,transparent);color:#e0a020}.mobile-facts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.4rem 1rem;margin:0;padding:.85rem .95rem;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.mobile-facts dt{color:var(--muted);font:700 .66rem/1.6 var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.mobile-facts dd{margin:0;color:var(--text);font-size:.82rem}.mobile-facts code{padding:.1rem .35rem;border-radius:4px;background:var(--surface-soft);color:var(--accent);font:.8rem/1.4 var(--font-mono)}.mobile-block{display:grid;gap:.45rem}.mobile-block h3{margin:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.mobile-regions{display:grid;gap:.3rem;margin:0;padding:0;list-style:none}.mobile-regions li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .7rem;padding:.5rem .65rem;border:1px solid var(--line);border-left:3px solid color-mix(in srgb,var(--accent) 60%,var(--line));border-radius:6px;background:var(--surface)}.mobile-regions strong{color:var(--text);font-size:.85rem}.mobile-regions span{color:var(--muted);font:.74rem/1.4 var(--font-mono)}.mobile-note{margin:0;color:var(--muted);font-size:.72rem;line-height:1.55}.mobile-actions{display:flex;justify-content:flex-end}.mobile-foot{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}@media(max-width:640px){.mobile-facts{grid-template-columns:minmax(0,1fr);gap:.1rem}.mobile-facts dd{margin-bottom:.5rem}}.tax{display:grid;gap:1rem}.tax-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem .9rem}.tax-field{display:grid;gap:.25rem}.tax-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.tax-field input{width:100%;padding:.45rem .55rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.86rem/1.4 var(--font-mono)}.tax-field input:focus-visible{border-color:var(--accent)}.tax-block{display:grid;gap:.5rem}.tax-block h2{margin:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.tax-deductions{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:.5rem}.tax-deduction{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.15rem .5rem;align-items:center;padding:.5rem .6rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.tax-deduction:has(input[type=checkbox]:checked){border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.tax-check{display:flex;align-items:flex-start;gap:.45rem;color:var(--text);font-size:.8rem}.tax-check input{margin-top:.15rem;accent-color:var(--accent)}.tax-check em{display:block;margin-top:.1rem;color:var(--accent);font:600 .7rem/1.4 var(--font-mono);font-style:normal}.tax-count{width:3.6rem;padding:.3rem .4rem;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);color:var(--text);font:.78rem/1.4 var(--font-mono)}.tax-count:disabled{opacity:.4}.tax-deduction .tax-note{grid-column:1 / -1}.tax-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.5rem}.tax-stat{display:grid;gap:.2rem;padding:.6rem .7rem;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.tax-stat span{color:var(--muted);font:700 .64rem/1.4 var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.tax-stat strong{color:var(--text);font:700 1.05rem/1.3 var(--font-mono)}.tax-stat:nth-child(3) strong{color:var(--accent)}.tax-bonus{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.5rem}.tax-bonus-option{display:grid;gap:.2rem;padding:.6rem .7rem;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.tax-bonus-option span{color:var(--muted);font:700 .66rem/1.4 var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.tax-bonus-option strong{color:var(--text);font:700 1rem/1.3 var(--font-mono)}.tax-bonus-option[data-best]{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:color-mix(in srgb,var(--accent) 9%,var(--surface))}.tax-bonus-option[data-best] strong{color:var(--accent)}.tax-bonus-option[data-best] span:after{content:" ✓";color:var(--accent)}.tax-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.tax-table{width:100%;border-collapse:collapse;font:.76rem/1.5 var(--font-mono)}.tax-table th,.tax-table td{padding:.45rem .6rem;text-align:right;white-space:nowrap}.tax-table th:first-child,.tax-table td:first-child{text-align:left}.tax-table thead th{position:sticky;top:0;border-bottom:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-weight:700}.tax-table tbody tr+tr td{border-top:1px solid color-mix(in srgb,var(--line) 55%,transparent)}.tax-table tbody tr:hover td{background:var(--surface-soft)}.tax-table-amount{color:var(--accent)}.tax-note{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.tax-disclaimer{padding-top:.6rem;border-top:1px solid var(--line)}.loan{display:grid;gap:1rem}.loan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem .9rem}.loan-field{display:grid;gap:.25rem}.loan-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.loan-field input,.loan-field select{width:100%;padding:.45rem .55rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.86rem/1.4 var(--font-mono)}.loan-field input:focus-visible,.loan-field select:focus-visible{border-color:var(--accent)}.loan-seg{display:flex;gap:.25rem;padding:.2rem;border:1px solid var(--line);border-radius:7px;background:var(--surface-soft)}.loan-seg button{flex:1;padding:.4rem .3rem;border:0;border-radius:5px;background:transparent;color:var(--body);font-size:.78rem;font-weight:600}.loan-seg button:hover{color:var(--text)}.loan-seg button.is-active{background:color-mix(in srgb,var(--accent) 22%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);color:var(--text)}.loan-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.5rem}.loan-stat{display:grid;gap:.2rem;padding:.6rem .7rem;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.loan-stat span{color:var(--muted);font:700 .64rem/1.4 var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.loan-stat strong{color:var(--text);font:700 1rem/1.3 var(--font-mono)}.loan-stat:nth-child(2) strong{color:var(--accent)}.loan-block{display:grid;gap:.5rem}.loan-block h2{margin:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.loan-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.5rem}.loan-option{display:grid;gap:.15rem;padding:.6rem .7rem;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.loan-option span{color:var(--muted);font:700 .66rem/1.4 var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.loan-option strong{color:var(--text);font:700 .95rem/1.3 var(--font-mono)}.loan-option em{color:var(--body);font:.74rem/1.4 var(--font-mono);font-style:normal}.loan-option[data-active]{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.loan-option[data-cheapest] strong{color:var(--accent)}.loan-option[data-active] span:after{content:" ●";color:var(--accent)}.loan-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.loan-table{width:100%;border-collapse:collapse;font:.76rem/1.5 var(--font-mono)}.loan-table th,.loan-table td{padding:.45rem .6rem;text-align:right;white-space:nowrap}.loan-table th:first-child,.loan-table td:first-child{text-align:left}.loan-table thead th{position:sticky;top:0;border-bottom:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-weight:700}.loan-table tbody tr+tr td{border-top:1px solid color-mix(in srgb,var(--line) 55%,transparent)}.loan-table tbody tr:hover td{background:var(--surface-soft)}.loan-table-amount{color:var(--body)}.loan-note{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.loan-disclaimer{padding-top:.6rem;border-top:1px solid var(--line)}.holiday{display:grid;gap:1rem}.holiday-notice{display:flex;align-items:flex-start;gap:.45rem;padding:.55rem .7rem;border-left:3px solid var(--accent);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--body);font-size:.74rem;line-height:1.55}.holiday-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.8rem}.holiday-field{display:grid;gap:.25rem;flex:0 0 auto}.holiday-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.holiday-field select{padding:.45rem 2.2rem .45rem .55rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.86rem/1.4 var(--font-mono)}.holiday-stats{margin:0 0 .15rem;color:var(--muted);font:.74rem/1.5 var(--font-mono)}.holiday-error{margin:0;padding:.5rem .65rem;border-left:3px solid var(--danger);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.holiday-busy{display:flex;align-items:center;gap:.45rem;margin:0;color:var(--muted);font-size:.76rem}.holiday-spinner{width:.78rem;height:.78rem;border:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-top-color:var(--accent);border-radius:50%;animation:holiday-spin .8s linear infinite}@keyframes holiday-spin{to{transform:rotate(360deg)}}.holiday-countdown{display:grid;gap:.2rem;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.holiday-countdown-label{color:var(--accent);font:700 .7rem/1.4 var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.holiday-countdown-value{color:var(--text);font:700 1.3rem/1.3 var(--font-mono)}.holiday-countdown-range{color:var(--body);font-size:.78rem}.holiday-block{display:grid;gap:.55rem}.holiday-block h2{margin:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.holiday-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.5rem}.holiday-card{display:grid;gap:.2rem;padding:.6rem .7rem;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;background:var(--surface)}.holiday-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.holiday-card-head strong{color:var(--text);font-size:.9rem}.holiday-card-head span{color:var(--accent);font:700 .72rem/1.4 var(--font-mono)}.holiday-card-range{margin:0;color:var(--body);font:.76rem/1.5 var(--font-mono)}.holiday-card-work{margin:.2rem 0 0;color:#e0a020;font-size:.72rem;line-height:1.5}.holiday-legend{display:flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.72rem}.holiday-swatch{width:.7rem;height:.7rem;border-radius:3px}.holiday-swatch[data-kind=off]{background:color-mix(in srgb,var(--accent) 70%,transparent)}.holiday-swatch[data-kind=work]{background:color-mix(in srgb,#e0a020 70%,transparent)}.holiday-months{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.8rem}.holiday-month{padding:.55rem .6rem .65rem;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.holiday-month h3{margin:0 0 .4rem;color:var(--body);font:700 .72rem/1.4 var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.holiday-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.holiday-weekday{padding-bottom:.15rem;color:var(--muted);font:700 .62rem/1.4 var(--font-mono);text-align:center}.holiday-day{display:grid;aspect-ratio:1;place-items:center;border-radius:4px;color:var(--body);font:.72rem/1 var(--font-mono)}.holiday-day[data-empty]{visibility:hidden}.holiday-day[data-kind=off]{background:color-mix(in srgb,var(--accent) 24%,transparent);color:var(--text);font-weight:700}.holiday-day[data-kind=work]{background:color-mix(in srgb,#e0a020 26%,transparent);color:var(--text);font-weight:700}.holiday-foot{margin:0;color:var(--muted);font-size:.7rem;line-height:1.6;overflow-wrap:anywhere}.postcode{display:grid;gap:.9rem}.postcode-form{display:flex;flex-wrap:wrap;gap:.5rem}.postcode-form input{flex:1 1 18rem;min-width:0;padding:.5rem .65rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.88rem/1.4 var(--font-mono)}.postcode-form input:focus-visible{border-color:var(--accent)}.postcode-hint{margin:0;color:var(--muted);font-size:.74rem;line-height:1.6}.postcode-error{margin:0;padding:.5rem .65rem;border-left:3px solid var(--danger);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.postcode-result{display:grid;gap:.7rem}.postcode-head{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.postcode-head h2{margin:0;font:700 1.15rem/1.3 var(--font-mono);overflow-wrap:anywhere}.postcode-badge{padding:.2rem .6rem;border-radius:999px;font:700 .7rem/1.5 var(--font-mono)}.postcode-badge[data-tone=ok]{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.postcode-badge[data-tone=warn]{background:color-mix(in srgb,#e0a020 22%,transparent);color:#e0a020}.postcode-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.postcode-table{width:100%;border-collapse:collapse;font:.78rem/1.5 var(--font-mono)}.postcode-table th,.postcode-table td{padding:.45rem .6rem;text-align:left;white-space:nowrap}.postcode-table thead th{position:sticky;top:0;border-bottom:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-weight:700}.postcode-table tbody tr+tr td{border-top:1px solid color-mix(in srgb,var(--line) 55%,transparent)}.postcode-table tbody tr:hover td{background:var(--surface-soft)}.postcode-table td:last-child{color:var(--accent);font-weight:700}.postcode-note{margin:0;color:var(--muted);font-size:.72rem;line-height:1.55}.postcode-foot{margin:0;padding-top:.6rem;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem;line-height:1.6}.postcode-tabs{display:flex;gap:.3rem;padding:.22rem;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.postcode-tabs button{flex:1;padding:.42rem .5rem;border:0;border-radius:6px;background:transparent;color:var(--body);font-size:.8rem;font-weight:600}.postcode-tabs button:hover{color:var(--text)}.postcode-tabs button.is-active{background:color-mix(in srgb,var(--accent) 22%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);color:var(--text)}.postcode-panel{display:grid;gap:.7rem}.postcode-selects{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.6rem}.postcode-field{display:grid;gap:.25rem}.postcode-field>span{color:var(--muted);font:700 .66rem/1.4 var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.postcode-field select{width:100%;padding:.48rem 2rem .48rem .55rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font-size:.82rem}.postcode-field select:focus-visible{border-color:var(--accent)}.postcode-field select:disabled{opacity:.45}.postcode-answer{display:flex;flex-wrap:wrap;align-items:baseline;gap:.55rem;padding:.7rem .85rem;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.postcode-answer-label{color:var(--body);font-size:.8rem}.postcode-answer-value{margin-left:auto;color:var(--accent);font:700 1.35rem/1.2 var(--font-mono);letter-spacing:.06em}.coord{display:grid;gap:.9rem}.coord-bar{display:grid;grid-template-columns:minmax(12rem,1fr) minmax(14rem,1.4fr);gap:.7rem}.coord-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.7rem}.coord-field{display:grid;gap:.25rem}.coord-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.coord-field input,.coord-field select{width:100%;padding:.45rem .55rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.86rem/1.4 var(--font-mono)}.coord-field input:focus-visible,.coord-field select:focus-visible{border-color:var(--accent)}.coord-samples{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.coord-samples-label{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.coord-samples button{padding:.3rem .6rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--body);font-size:.74rem}.coord-samples button:hover{border-color:var(--accent);color:var(--accent)}.coord-error{margin:0;padding:.5rem .65rem;border-left:3px solid var(--danger);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.coord-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:.55rem}.coord-card{display:grid;gap:.35rem;padding:.7rem .8rem;border:1px solid var(--line);border-left:3px solid var(--line-strong);border-radius:9px;background:var(--surface)}.coord-card:has(code:not(:empty)):first-child{border-left-color:color-mix(in srgb,var(--accent) 45%,var(--line-strong))}.coord-card-head{display:flex;align-items:baseline;gap:.5rem}.coord-card-head strong{color:var(--text);font:700 .88rem/1.3 var(--font-mono)}.coord-card-head span{flex:1;color:var(--muted);font:.7rem/1.4 var(--font-mono)}.coord-card-head .text-button{flex-shrink:0;font-size:.72rem}.coord-card-note{margin:0;color:var(--muted);font-size:.7rem;line-height:1.5}.coord-values{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.15rem .55rem;align-items:baseline}.coord-label{color:var(--muted);font:700 .66rem/1.5 var(--font-mono)}.coord-values code{color:var(--accent);font:.84rem/1.5 var(--font-mono);overflow-wrap:anywhere}.coord-note{margin:0;color:var(--body);font-size:.74rem;line-height:1.6}.coord-foot{margin:0;padding-top:.6rem;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem;line-height:1.65}@media(max-width:720px){.coord-bar{grid-template-columns:minmax(0,1fr)}}.gif{display:grid;gap:1rem}.gif-drop{display:grid;gap:.35rem;justify-items:center;padding:1.6rem 1rem;border:1px dashed var(--line-strong);border-radius:10px;background:var(--surface);color:var(--body);text-align:center;cursor:pointer;transition:border-color .16s ease,background .16s ease}.gif-drop:hover,.gif-drop[data-dragging]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.gif-drop .tool-icon{width:1.6rem;height:1.6rem;color:var(--accent)}.gif-drop strong{color:var(--text);font-size:.9rem}.gif-drop span{color:var(--muted);font-size:.74rem;line-height:1.55;max-width:34rem}.gif-error{margin:0;padding:.5rem .65rem;border-left:3px solid var(--danger);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.gif-workspace{display:grid;gap:1rem}.gif-block{display:grid;gap:.5rem}.gif-block h2{margin:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.gif-block h2 span{color:var(--line-strong)}.gif-frames{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}.gif-frame{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.6rem;padding:.45rem .55rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.gif-frame img{width:3rem;height:3rem;object-fit:contain;border-radius:5px;background:var(--canvas)}.gif-frame-info{display:grid;gap:.05rem;min-width:0}.gif-frame-order{color:var(--accent);font:700 .68rem/1.4 var(--font-mono)}.gif-frame-name{color:var(--text);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gif-frame-meta{color:var(--muted);font:.68rem/1.4 var(--font-mono)}.gif-frame-delay{display:flex;align-items:center;gap:.3rem;color:var(--muted);font-size:.7rem}.gif-frame-delay input{width:4.4rem;padding:.3rem .4rem;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);color:var(--text);font:.76rem/1.4 var(--font-mono)}.gif-frame-actions{display:flex;align-items:center;gap:.35rem}.gif-frame-actions .text-button{font-size:.76rem;padding:0 .2rem}.gif-frame-actions .text-button:disabled{opacity:.35;cursor:not-allowed}.gif-frames-hint{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.gif-frame.is-placeholder{border-style:dashed;background:color-mix(in srgb,var(--canvas) 55%,transparent)}.gif-frame.is-placeholder .gif-frame-order{color:var(--line-strong)}.gif-frame.is-placeholder .gif-frame-name{color:var(--muted)}.gif-frame.is-placeholder .gif-frame-delay{font-style:italic}.gif-frame-blank{display:grid;place-items:center;width:3rem;height:3rem;padding:0;border:1px dashed var(--line-strong);border-radius:5px;background:var(--canvas);color:var(--line-strong);cursor:pointer;transition:border-color .16s ease,color .16s ease}.gif-frame-blank svg{width:1.35rem;height:1.35rem}.gif-frame-blank:hover,.gif-frame-blank:focus-visible{border-color:var(--accent);color:var(--accent)}.gif-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.7rem}.gif-field{display:grid;gap:.25rem}.gif-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.gif-field input,.gif-field select{width:100%;padding:.45rem .55rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.82rem/1.4 var(--font-mono)}.gif-field input[type=color]{height:2.1rem;padding:2px}.gif-pair{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.gif-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.gif-summary{margin-left:auto;color:var(--muted);font:600 .72rem/1.4 var(--font-mono)}.gif-busy{display:flex;align-items:center;gap:.45rem;margin:0;color:var(--muted);font-size:.76rem}.gif-spinner{width:.78rem;height:.78rem;border:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-top-color:var(--accent);border-radius:50%;animation:gif-spin .8s linear infinite}@keyframes gif-spin{to{transform:rotate(360deg)}}.gif-result{display:grid;gap:.6rem;justify-items:start}.gif-result img{max-width:min(100%,22rem);max-height:22rem;border:1px solid var(--line);border-radius:9px;background:var(--canvas)}.gif-result-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.gif-result-meta span{color:var(--muted);font:.72rem/1.5 var(--font-mono)}.gif-foot{margin:0;padding-top:.7rem;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem;line-height:1.65}@media(max-width:720px){.gif-frame{grid-template-columns:auto minmax(0,1fr)}.gif-frame-delay,.gif-frame-actions{grid-column:2}}.cutout{display:grid;gap:1rem}.cutout-notice{display:flex;align-items:flex-start;gap:.45rem;padding:.55rem .7rem;border-left:3px solid var(--accent);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--body);font-size:.74rem;line-height:1.55}.cutout-drop{display:grid;gap:.35rem;justify-items:center;padding:1.7rem 1rem;border:1px dashed var(--line-strong);border-radius:10px;background:var(--surface);color:var(--body);text-align:center;cursor:pointer;transition:border-color .16s ease,background .16s ease}.cutout-drop:hover,.cutout-drop[data-dragging]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.cutout-drop .tool-icon{width:1.6rem;height:1.6rem;color:var(--accent)}.cutout-drop strong{color:var(--text);font-size:.9rem}.cutout-drop span{max-width:34rem;color:var(--muted);font-size:.74rem;line-height:1.55}.cutout-error{margin:0;padding:.5rem .65rem;border-left:3px solid var(--danger);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.cutout-busy{display:flex;align-items:center;gap:.45rem;margin:0;color:var(--muted);font-size:.76rem}.cutout-spinner{width:.78rem;height:.78rem;border:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-top-color:var(--accent);border-radius:50%;animation:cutout-spin .8s linear infinite}@keyframes cutout-spin{to{transform:rotate(360deg)}}.cutout-workspace{display:grid;gap:1rem}.cutout-stage{display:grid;gap:.5rem}.cutout-preview{display:grid;min-height:14rem;padding:.8rem;place-items:center;border:1px solid var(--line);border-radius:10px;background-color:var(--surface-soft);background-image:linear-gradient(45deg,color-mix(in srgb,var(--line) 45%,transparent) 25%,transparent 25%),linear-gradient(-45deg,color-mix(in srgb,var(--line) 45%,transparent) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,color-mix(in srgb,var(--line) 45%,transparent) 75%),linear-gradient(-45deg,transparent 75%,color-mix(in srgb,var(--line) 45%,transparent) 75%);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px}.cutout-preview img{display:block;width:auto;height:auto;max-width:100%;max-height:min(58vh,520px);border-radius:6px}.cutout-meta{margin:0;color:var(--muted);font:600 .72rem/1.4 var(--font-mono);overflow-wrap:anywhere}.cutout-verdict{margin:0;padding:.5rem .65rem;border-left:3px solid #e0a020;border-radius:0 6px 6px 0;background:color-mix(in srgb,#e0a020 10%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.cutout-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.7rem}.cutout-field{display:grid;gap:.25rem}.cutout-field>span{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.cutout-field output{color:var(--accent);letter-spacing:0}.cutout-field input[type=range]{width:100%;accent-color:var(--accent)}.cutout-field input[type=color]{width:100%;height:2rem;padding:2px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.cutout-field input[type=color]::-webkit-color-swatch-wrapper{padding:0}.cutout-field input[type=color]::-webkit-color-swatch{border:1px solid var(--line-strong);border-radius:4px}.cutout-seg{display:flex;gap:.25rem;padding:.2rem;border:1px solid var(--line);border-radius:7px;background:var(--surface-soft)}.cutout-seg button{flex:1;padding:.38rem .3rem;border:0;border-radius:5px;background:transparent;color:var(--body);font-size:.76rem;font-weight:600}.cutout-seg button:hover{color:var(--text)}.cutout-seg button.is-active{background:color-mix(in srgb,var(--accent) 22%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);color:var(--text)}.cutout-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.cutout-summary{margin-left:auto;color:var(--muted);font:600 .72rem/1.4 var(--font-mono)}.cutout-foot{margin:0;padding-top:.7rem;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem;line-height:1.65}.pdf{display:grid;gap:1rem}.pdf-drop{display:grid;gap:.35rem;justify-items:center;padding:1.6rem 1rem;border:1px dashed var(--line-strong);border-radius:10px;background:var(--surface);color:var(--body);text-align:center;cursor:pointer;transition:border-color .16s ease,background .16s ease}.pdf-drop:hover,.pdf-drop[data-dragging]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.pdf-drop .tool-icon{width:1.6rem;height:1.6rem;color:var(--accent)}.pdf-drop strong{color:var(--text);font-size:.9rem}.pdf-drop span{color:var(--muted);font-size:.74rem;line-height:1.55;max-width:38rem}.pdf-error{margin:0;padding:.5rem .65rem;border-left:3px solid var(--danger);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--body);font-size:.74rem;line-height:1.5}.pdf-busy{display:flex;align-items:center;gap:.45rem;margin:0;color:var(--muted);font-size:.76rem}.pdf-spinner{width:.78rem;height:.78rem;border:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-top-color:var(--accent);border-radius:50%;animation:pdf-spin .8s linear infinite}@keyframes pdf-spin{to{transform:rotate(360deg)}}.pdf-workspace{display:grid;gap:1rem}.pdf-block{display:grid;gap:.5rem}.pdf-block h2,.pdf-block h2 span{margin:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.pdf-block h2 span{color:var(--line-strong)}.pdf-note,.pdf-preview,.pdf-hint{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.pdf-hint{color:var(--accent)}.pdf-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.7rem}.pdf-field{display:grid;gap:.25rem}.pdf-field>span{color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.pdf-field input,.pdf-field select{width:100%;padding:.45rem .55rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.82rem/1.4 var(--font-mono)}.pdf-field input[type=color]{height:2.1rem;padding:2px}.pdf-field input[type=range]{padding:0;accent-color:var(--accent)}.pdf-field output{color:var(--accent);font:.74rem/1.4 var(--font-mono)}.pdf-check{display:flex;align-items:center;gap:.4rem;color:var(--body);font-size:.78rem}.pdf-check input{accent-color:var(--accent)}.pdf-inline-field{display:flex;align-items:center;gap:.4rem;color:var(--muted);font-size:.74rem}.pdf-inline-field input{padding:.4rem .5rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:.8rem/1.4 var(--font-mono)}.pdf-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.pdf-summary{margin-left:auto;color:var(--muted);font:600 .72rem/1.4 var(--font-mono)}.pdf-files{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}.pdf-file{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.45rem .55rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.pdf-file-order{color:var(--accent);font:700 .68rem/1.4 var(--font-mono)}.pdf-file-info{display:grid;gap:.05rem;min-width:0}.pdf-file-info strong{color:var(--text);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-file-info span{color:var(--muted);font:.68rem/1.4 var(--font-mono)}.pdf-file-actions{display:flex;align-items:center;gap:.3rem}.pdf-file-thumb{width:2.4rem;height:2.4rem;object-fit:contain;border-radius:5px;background:var(--canvas)}.pdf-plan{display:grid;gap:.25rem;margin:0;padding:0;list-style:none}.pdf-plan-item{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;padding:.3rem .55rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);font-size:.76rem}.pdf-plan-name{color:var(--text);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-plan-meta{color:var(--muted);font:.68rem/1.4 var(--font-mono);white-space:nowrap}.pdf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));gap:.6rem}.pdf-page{display:grid;gap:.3rem;margin:0;padding:.4rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);justify-items:center}.pdf-page-frame{display:grid;place-items:center;width:100%;aspect-ratio:1 / 1.3;overflow:hidden;border-radius:5px;background:var(--canvas)}.pdf-page-frame img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .16s ease}.pdf-page-image{max-width:100%;max-height:12rem;object-fit:contain;border-radius:5px;background:var(--canvas)}.pdf-page-caption{color:var(--muted);font:.66rem/1.4 var(--font-mono);text-align:center}.pdf-page-actions{display:flex;gap:.25rem}.pdf-page-actions .text-button{font-size:.8rem}.pdf-info{display:grid;gap:.1rem}.pdf-info-row{display:grid;grid-template-columns:minmax(6rem,9rem) minmax(0,1fr);gap:.8rem;padding:.4rem 0;border-bottom:1px solid var(--line);font-size:.76rem}.pdf-info-key{color:var(--muted);font:700 .68rem/1.5 var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.pdf-info-value{color:var(--text);line-height:1.5;word-break:break-word}.pdf-output{width:100%;padding:.7rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:.78rem/1.6 var(--font-mono);resize:vertical}.pdf-foot{margin:0;padding-top:.7rem;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem;line-height:1.65}@media(max-width:720px){.pdf-file{grid-template-columns:auto minmax(0,1fr)}.pdf-file-actions{grid-column:2}.pdf-info-row{grid-template-columns:1fr;gap:.1rem}}.calc{display:grid;gap:1rem}.calc-panel{display:grid;gap:.7rem;padding:.9rem;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.calc-screen{display:grid;justify-items:end;gap:.2rem;padding:.7rem .8rem;border:1px solid var(--line);border-radius:9px;background:var(--canvas)}.calc-memory{color:var(--muted);font:.68rem/1.4 var(--font-mono)}.calc-expression{width:100%;padding:0;border:0;background:transparent;color:var(--text);font:1.02rem/1.5 var(--font-mono);text-align:right}.calc-expression:focus{outline:none}.calc-expression::placeholder{color:var(--line-strong)}.calc-result{min-height:2rem;color:var(--text);font:700 1.5rem/1.35 var(--font-mono);word-break:break-all}.calc-result[data-official=false]{color:var(--muted);font-weight:400}.calc-error{margin:0;padding:.4rem .55rem;border-left:3px solid var(--danger);border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--body);font-size:.72rem;line-height:1.5}.calc-memory-pad,.calc-keypad{display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem}.calc-key{padding:.7rem .4rem;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--text);font:600 1rem/1 var(--font-mono);cursor:pointer;transition:background .14s ease,border-color .14s ease}.calc-key:hover{border-color:var(--line-strong);background:color-mix(in srgb,var(--accent) 8%,var(--surface-soft))}.calc-key:active{transform:translateY(1px)}.calc-key[data-tone=operator]{color:var(--accent)}.calc-key[data-tone=action]{color:var(--muted);font-size:.92rem}.calc-key[data-tone=equals]{background:var(--accent);border-color:var(--accent);color:var(--canvas)}.calc-key[data-tone=equals]:hover{background:color-mix(in srgb,var(--accent) 85%,white)}.calc-key.is-memory{padding:.4rem;font-size:.74rem;color:var(--muted)}.calc-history{display:grid;gap:.5rem}.calc-history-head{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem}.calc-history-head h2{margin:0;color:var(--muted);font:700 .68rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.calc-history-head h2 span{color:var(--line-strong)}.calc-history-empty{margin:0;color:var(--muted);font-size:.72rem;line-height:1.6}.calc-history-list{display:grid;gap:.3rem;margin:0;padding:0;list-style:none}.calc-history-button{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;width:100%;padding:.4rem .55rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--body);font:.78rem/1.5 var(--font-mono);text-align:left;cursor:pointer}.calc-history-button:hover{border-color:var(--accent)}.calc-history-expression{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calc-history-result{color:var(--text);white-space:nowrap}.calc-foot{margin:0;padding-top:.7rem;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem;line-height:1.65}@media(max-width:520px){.calc-key{padding:.6rem .3rem;font-size:.92rem}.calc-result{font-size:1.25rem}}
