/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:"Pretendard Variable",Pretendard,"Noto Sans KR",system-ui,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",Consolas,monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--color-band:#0f172a;--color-band-2:#1e293b;--color-band-line:#334155;--color-band-ink:#f1f5f9;--color-band-ink-2:#94a3b8;--color-band-hover:#1b2a38;--color-band-warn:#f6c26b;--color-band-danger:#f49b9b;--color-band-ok:#6ee7c8;--color-band-link:#8de3d2;--color-work:#f3f6f5;--color-card:#fff;--color-card-2:#f8faf9;--color-line:#dce4e2;--color-line-2:#c7d3d0;--color-ink:#121417;--color-ink-2:#3f4750;--color-muted:#687076;--color-faint:#9aa3a8;--color-accent:#168a7a;--color-accent-strong:#0e7468;--color-accent-weak:#e4f3f0;--color-accent-ink:#fff;--color-ok:#0f7a54;--color-ok-weak:#e6f4ec;--color-warn:#b46b10;--color-warn-weak:#fbf1e2;--color-warn-line:#f1ddbf;--color-warn-ink:#8a520c;--color-danger:#ba3a3a;--color-danger-weak:#fbeaea;--color-info:#2f6fb3;--color-info-weak:#e8f0fa;--color-hanjullo:#4f46e5;--color-hanjullo-weak:#eef0fd;--color-pos-warn-line:#eac88f;--color-scan-band:#0b1220;--color-scan-accent:#20b39f;--color-rule-warn-line:#e3c08d;--color-rule-warn-ink:#7a4a0b;--text-t11:11px;--text-t12:12px;--text-t13:13px;--text-t14:14px;--text-t15:15px;--text-t17:17px;--text-t20:20px;--text-t24:24px;--text-t32:32px;--text-t40:40px;--text-t44:44px;--radius-card:14px;--radius-ctl:10px;--radius-sm:8px;--radius-tile:12px;--radius-modal:16px;--radius-tag:6px;--radius-stamp:4px;--radius-pill:999px;--shadow-cmd:0 1px 2px #0f172a0f,0 12px 32px -12px #0f172a47;--shadow-modal:0 24px 64px -16px #0f172a73;--shadow-card:0 1px 2px #0f172a0f,0 12px 32px -16px #0f172a38;--shadow-card-hover:0 1px 2px #0f172a14,0 18px 36px -16px #0f172a4d}}@layer base,components;@layer utilities{.visible{visibility:visible}.static{position:static}.flex{display:flex}.grid{display:grid}.hidden{display:none}.break-all{word-break:break-all}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--band:var(--color-band);--band-2:var(--color-band-2);--band-line:var(--color-band-line);--band-ink:var(--color-band-ink);--band-ink-2:var(--color-band-ink-2);--band-hover:var(--color-band-hover);--band-warn:var(--color-band-warn);--band-danger:var(--color-band-danger);--band-ok:var(--color-band-ok);--band-link:var(--color-band-link);--work:var(--color-work);--card:var(--color-card);--card-2:var(--color-card-2);--line:var(--color-line);--line-2:var(--color-line-2);--ink:var(--color-ink);--ink-2:var(--color-ink-2);--muted:var(--color-muted);--faint:var(--color-faint);--accent:var(--color-accent);--accent-strong:var(--color-accent-strong);--accent-weak:var(--color-accent-weak);--accent-ink:var(--color-accent-ink);--ok:var(--color-ok);--ok-weak:var(--color-ok-weak);--warn:var(--color-warn);--warn-weak:var(--color-warn-weak);--warn-line:var(--color-warn-line);--warn-ink:var(--color-warn-ink);--danger:var(--color-danger);--danger-weak:var(--color-danger-weak);--info:var(--color-info);--info-weak:var(--color-info-weak);--hanjullo:var(--color-hanjullo);--hanjullo-weak:var(--color-hanjullo-weak);--pos-warn-line:var(--color-pos-warn-line);--scan-band:var(--color-scan-band);--scan-accent:var(--color-scan-accent);--rule-warn-line:var(--color-rule-warn-line);--rule-warn-ink:var(--color-rule-warn-ink);--t-11:var(--text-t11);--t-12:var(--text-t12);--t-13:var(--text-t13);--t-14:var(--text-t14);--t-15:var(--text-t15);--t-17:var(--text-t17);--t-20:var(--text-t20);--t-24:var(--text-t24);--t-32:var(--text-t32);--t-40:var(--text-t40);--t-44:var(--text-t44);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--r-card:var(--radius-card);--r-ctl:var(--radius-ctl);--r-pill:var(--radius-pill);--r-stamp:var(--radius-stamp);--r-sm:var(--radius-sm);--r-tile:var(--radius-tile);--r-modal:var(--radius-modal);--r-tag:var(--radius-tag)}*{box-sizing:border-box}.num,.tabular{font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono);font-size:inherit;letter-spacing:-.01em}a{color:var(--accent-strong);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);border-radius:var(--r-tag)}.band{background:radial-gradient(900px 260px at 82% -40px,var(--band-glow),transparent 70%),var(--band);color:var(--band-ink);padding-inline:var(--s-4)}.band__in{max-width:var(--w-desk);margin-inline:auto}.band--full .band__in{max-width:var(--w-full)}.gnav{align-items:center;gap:var(--s-6);border-bottom:1px solid var(--band-line);height:56px;display:flex}.brand{align-items:baseline;gap:var(--s-2);color:var(--band-ink);font-weight:800;font-size:var(--t-17);letter-spacing:-.02em;white-space:nowrap;display:flex}.brand__mark{border-radius:var(--r-tag);background:var(--accent);align-self:center;place-items:center;width:20px;height:20px;display:inline-grid}.brand__mark:after{content:"";background:var(--accent-ink);border-radius:var(--r-pill);width:10px;height:2px;box-shadow:0 -4px 0 var(--accent-ink),0 4px 0 #ffffff8c}.brand small{font-size:var(--t-11);color:var(--band-ink-2);letter-spacing:.04em;font-weight:600}.gnav__menu{gap:var(--s-1);scrollbar-width:none;flex:1;min-width:0;display:flex;overflow-x:auto}.gnav__menu a{color:var(--band-ink-2);font-weight:600;font-size:var(--t-14);border-radius:var(--r-sm);white-space:nowrap;padding:6px 12px}.gnav__menu a:hover{color:var(--band-ink);background:var(--band-2);text-decoration:none}.gnav__menu a[aria-current=page]{color:var(--band-ink);background:var(--band-2);box-shadow:inset 0 -2px 0 var(--accent)}.kbar{align-items:center;gap:var(--s-2);border-radius:var(--r-sm);background:var(--band-2);height:34px;font-size:var(--t-13);cursor:text;min-width:220px;padding:0 10px 0 12px;display:flex}.kbar,.kbar kbd{border:1px solid var(--band-line);color:var(--band-ink-2)}.kbar kbd{font-family:var(--font-mono);font-size:var(--t-11);border-radius:var(--r-stamp);margin-left:auto;padding:0 5px}.who{align-items:center;gap:var(--s-2);color:var(--band-ink-2);font-size:var(--t-13);white-space:nowrap;display:flex}.gnav__more{display:none}.gnav__out{color:var(--band-ink);border-color:var(--band-line);background:0 0}.who__avatar{background:var(--band-2);border:1px solid var(--band-line);width:28px;height:28px;color:var(--band-ink);font-weight:700;font-size:var(--t-12);border-radius:50%;place-items:center;display:grid}.topbar{align-items:center;gap:var(--s-3);border-bottom:1px solid var(--band-line);min-width:0;height:56px;display:flex}.topbar .spacer{flex:1}.wordmark{color:var(--band-ink);font-weight:800;font-size:var(--t-17);letter-spacing:-.02em;white-space:nowrap;align-items:baseline;gap:6px;display:flex}.wordmark:hover{text-decoration:none}.wordmark b{color:var(--band-link);font-weight:800}.wordmark small{font-size:var(--t-11);color:var(--band-ink-2);letter-spacing:0;margin-left:4px;font-weight:500}.bbtn{border-radius:var(--r-sm);border:1px solid var(--band-line);height:32px;color:var(--band-ink);font:inherit;font-size:var(--t-13);cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:6px;padding:0 12px;font-weight:600;display:inline-flex}.bbtn:hover{background:var(--band-2);text-decoration:none}.bbtn[disabled]{opacity:.5;cursor:not-allowed}button.kbar{font:inherit;font-size:var(--t-13);text-align:left;cursor:pointer}.icon{flex:none;display:block}.ictile{border-radius:var(--r-tile);background:var(--accent-weak);width:40px;height:40px;color:var(--accent);flex:none;place-items:center;display:grid}.ictile--band,.ictile--lg{width:44px;height:44px}.ictile--band{color:var(--band-link);font-weight:750;font-size:var(--t-17);background:#168a7a38}.mcard{align-items:center;gap:var(--s-3);min-height:80px;padding:0 var(--s-4);background:var(--card);border-radius:var(--r-modal);box-shadow:var(--shadow-card);color:var(--ink);min-width:0;transition:transform .15s,box-shadow .15s;display:flex}.mcard:hover,.scard:hover{box-shadow:var(--shadow-card-hover);text-decoration:none;transform:translateY(-1px)}.mcard__text{flex:1;gap:2px;min-width:0;display:grid}.mcard__text b{font-size:var(--t-15);font-weight:700}.mcard__text span{font-size:var(--t-12);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mcard__badge{font-size:var(--t-11);color:var(--accent-strong);background:var(--accent-weak);border-radius:var(--r-pill);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;padding:2px 8px;font-weight:700}.mcard__go{color:var(--faint);flex:none;display:grid}.menu-row,.menu-rows{gap:var(--s-3);display:grid}.menu-row{grid-template-columns:112px minmax(0,1fr);align-items:center}.menu-row h2{font-size:var(--t-13);color:var(--muted);margin:0;font-weight:600}.menu-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.menu-cards,.scards{gap:var(--s-3);display:grid}.scards{grid-template-columns:repeat(auto-fit,minmax(176px,1fr))}.scard{padding:var(--s-4);background:var(--card);border-radius:var(--r-modal);box-shadow:var(--shadow-card);color:var(--ink);font:inherit;text-align:left;cursor:pointer;border:0;align-content:start;justify-items:start;gap:6px;min-width:0;transition:transform .15s,box-shadow .15s;display:grid;position:relative}.scard b{font-size:var(--t-15);font-weight:700}.scard>span:last-child{font-size:var(--t-12);color:var(--muted)}.scard--rec{background:var(--accent-weak)}.scard__tag{top:var(--s-3);right:var(--s-3);font-style:normal;font-size:var(--t-11);color:var(--accent-ink);background:var(--accent);border-radius:var(--r-pill);padding:1px 8px;font-weight:700;position:absolute}.mhead,.mhead__id{align-items:center}.mhead__id{gap:var(--s-3);min-width:0;display:flex}.mhead__back{border-radius:var(--r-sm);border:1px solid var(--band-line);width:32px;height:32px;color:var(--band-ink);flex:none;place-items:center;display:grid}.mhead__back:hover{background:var(--band-2);text-decoration:none}.mhead__sub{color:var(--band-ink-2);font-weight:500;font-size:var(--t-17)}.htabs{grid-auto-columns:minmax(96px,auto);grid-auto-flow:column;gap:6px;display:grid}.htab{border-radius:var(--r-tile);border:1px solid var(--band-line);min-height:52px;color:var(--band-ink-2);font:inherit;font-size:var(--t-12);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;align-content:center;gap:2px;padding:8px 12px;font-weight:600;display:grid}.htab b{font-family:var(--font-mono);font-size:var(--t-15);font-variant-numeric:tabular-nums;font-weight:600}.htab b,.htab:hover{color:var(--band-ink)}.htab:hover{border-color:var(--accent);text-decoration:none}.htab[aria-current=page]{background:var(--band-ink);border-color:var(--band-ink);color:var(--muted)}.htab[aria-current=page] b{color:var(--ink)}.sheet-groups{gap:var(--s-4);display:grid}.sheet-group h4{margin:0 0 var(--s-2);font-size:var(--t-12);color:var(--muted);font-weight:650}.sheet-links{gap:var(--s-2);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.sheet-link{align-items:center;gap:var(--s-3);border-radius:var(--r-ctl);border:1px solid var(--line);color:var(--ink);min-width:0;padding:10px 12px;display:flex}.sheet-link:hover{border-color:var(--accent);text-decoration:none}.sheet-link[aria-current=page]{border-color:var(--accent);background:var(--accent-weak)}.sheet-link .ictile{border-radius:var(--r-sm);width:32px;height:32px}.sheet-link__text{gap:1px;min-width:0;display:grid}.sheet-link__text b{font-size:var(--t-14);font-weight:700}.sheet-link__text span{font-size:var(--t-12);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.find-list{gap:2px;max-height:min(52vh,420px);margin:0;padding:0;list-style:none;display:grid;overflow:auto}.find-list a,.find-list button{align-items:center;gap:var(--s-3);border-radius:var(--r-ctl);width:100%;color:var(--ink);font:inherit;font-size:var(--t-14);text-align:left;cursor:pointer;background:0 0;border:0;padding:10px 12px;display:flex}.find-list [aria-selected=true],.find-list a:hover,.find-list button:hover{background:var(--accent-weak);text-decoration:none}.find-list small{color:var(--muted);font-size:var(--t-12);white-space:nowrap;margin-left:auto}.find-group{font-size:var(--t-11);color:var(--muted);padding:var(--s-2) 12px 2px;letter-spacing:.02em;font-weight:700}.todo-strip{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.todo-strip__lab{font-size:var(--t-13);color:var(--muted);margin-right:4px}.chip{border-radius:var(--r-pill);background:var(--card);border:1px solid var(--line);height:32px;font-size:var(--t-13);color:var(--ink);white-space:nowrap;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.chip b{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:600}a.chip:hover{border-color:var(--accent);text-decoration:none}.chip--warn{background:var(--warn-weak);border-color:var(--warn-line);color:var(--warn-ink)}.findbar{align-items:center;gap:var(--s-2);min-width:0;height:var(--h-ctl);border:1px solid var(--line-2);border-radius:var(--r-ctl);color:var(--muted);background:var(--card);flex:1;padding:0 12px;display:flex}.findbar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak)}.findbar input{min-width:0;font:inherit;font-size:var(--t-15);color:var(--ink);background:0 0;border:0;outline:0;flex:1}.findbar input::placeholder{color:var(--faint)}.head--hub h1{font-size:var(--t-24)}.ictile--sm{border-radius:var(--r-sm);width:28px;height:28px}.ictile--initial{font-weight:700;font-size:var(--t-13)}.find{gap:var(--s-3);display:grid}.find-note{font-size:var(--t-12);color:var(--muted);margin:0;padding:6px 12px}.sheet-mod{align-content:start;gap:6px;min-width:0;display:grid}.sheet-tabs{flex-wrap:wrap;gap:6px;padding-left:4px;display:flex}.sheet-tabs a{font-size:var(--t-12);border-radius:var(--r-pill);background:var(--card-2);border:1px solid var(--line);color:var(--ink-2);padding:3px 10px;font-weight:600}.sheet-tabs a:hover{border-color:var(--accent);color:var(--accent-strong);text-decoration:none}.head{justify-content:space-between;align-items:flex-end;gap:var(--s-6);padding-block:var(--s-6) calc(var(--s-8) + 28px);flex-wrap:wrap;display:flex}.head__title{min-width:0}.head__eyebrow{font-size:var(--t-12);color:var(--band-ink-2);letter-spacing:.02em;font-weight:600}.head h1{font-size:var(--t-20);letter-spacing:-.02em;text-wrap:balance;margin:2px 0 0;font-weight:800}.head__meta{margin-top:var(--s-2);font-size:var(--t-12);color:var(--band-ink-2);gap:var(--s-3);flex-wrap:wrap;display:flex}.head__meta b{color:var(--band-ink);font-weight:600}.tiles{gap:var(--s-2);grid-auto-columns:minmax(112px,1fr);grid-auto-flow:column;display:grid}.tile{background:var(--band-2);border:1px solid var(--band-line);border-radius:var(--r-tile);min-height:68px;color:var(--band-ink);flex-direction:column;justify-content:space-between;padding:10px 14px;display:flex}.tile__label{font-size:var(--t-12);color:var(--band-ink-2);white-space:nowrap;font-weight:600}.tile__value{font-size:var(--t-24);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:800;line-height:1.15}.tile__value small{font-size:var(--t-12);color:var(--band-ink-2);margin-left:2px;font-weight:600}.tile--warn .tile__value{color:var(--band-warn)}.tile--danger .tile__value{color:var(--band-danger)}a.tile{transition:border-color .15s,background .15s}a.tile,a.tile:hover{text-decoration:none}a.tile:hover{border-color:var(--accent);background:var(--band-hover)}a.tile[aria-current=page]{border-color:var(--accent);box-shadow:inset 0 -3px 0 var(--accent)}.work{padding-inline:var(--s-4);padding-block:0 var(--s-12)}.work__in{max-width:var(--w-desk);gap:var(--s-4);margin-inline:auto;display:grid}.work--full .work__in{max-width:var(--w-full)}.cmd{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-cmd);padding:var(--s-4) var(--s-5);gap:var(--s-3);margin-top:-28px;display:grid;position:relative}.cmd__row{align-items:center;gap:var(--s-3);display:flex}.cmd__tag{font-size:var(--t-12);color:var(--accent-strong);background:var(--accent-weak);border-radius:var(--r-tag);white-space:nowrap;flex:none;padding:3px 8px;font-weight:700}.cmd__input{min-width:0;height:var(--h-ctl);border:0;border-bottom:2px solid var(--line-2);font:inherit;font-size:var(--t-15);color:var(--ink);background:0 0;outline:none;flex:1;padding:0 2px}.cmd__input:focus{border-bottom-color:var(--accent)}.cmd__input::placeholder{color:var(--faint)}.cmd__hints{gap:var(--s-2);font-size:var(--t-12);color:var(--muted);flex-wrap:wrap;display:flex}.cmd__hints button{font:inherit;font-size:var(--t-12);color:var(--ink-2);background:var(--card-2);border:1px solid var(--line);border-radius:var(--r-pill);cursor:pointer;padding:3px 10px}.cmd__hints button:hover{border-color:var(--accent);color:var(--accent-strong)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);min-width:0}.card__head{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5) 0;flex-wrap:wrap;display:flex}.card__head h2,.card__head h3{font-size:var(--t-17);letter-spacing:-.015em;margin:0;font-weight:750}.card__sub{font-size:var(--t-12);color:var(--muted)}.card__body{padding:var(--s-4) var(--s-5) var(--s-5)}.card__foot{padding:0 var(--s-5) var(--s-4)}.grid-12{gap:var(--s-4);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.span-8{grid-column:span 8}.span-4{grid-column:span 4}.span-7{grid-column:span 7}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-12{grid-column:span 12}.span-3{grid-column:span 3}.span-9{grid-column:span 9}.stack{gap:var(--s-4);align-content:start;min-width:0;display:grid}.source{font-size:var(--t-11);color:var(--faint);letter-spacing:.01em;font-style:italic}.source b{color:var(--muted);font-style:normal;font-weight:600}.source[data-source-origin][data-source-at]{margin-top:var(--s-1);color:var(--muted);font-size:var(--t-11);display:block}.source[data-source-origin][data-source-at] b{font-size:inherit}.ph-band .source[data-source-origin],.tile .source[data-source-origin]{color:var(--band-ink-2)}.ph-band .source[data-source-origin] b,.tile .source[data-source-origin] b{color:inherit}.btn{height:var(--h-ctl);border-radius:var(--r-ctl);font:inherit;font-size:var(--t-14);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-weight:650;transition:background .15s,border-color .15s;display:inline-flex}.btn,.btn:hover{text-decoration:none}.btn--primary{background:var(--accent);color:var(--accent-ink)}.btn--primary:hover{background:var(--accent-strong)}.btn--outline{background:var(--card);color:var(--ink);border-color:var(--line-2)}.btn--outline:hover{border-color:var(--accent);color:var(--accent-strong)}.btn--ghost{color:var(--ink-2);background:0 0}.btn--ghost:hover{background:var(--card-2)}.btn--danger{background:var(--danger);color:var(--accent-ink)}.btn--sm{height:32px;font-size:var(--t-13);border-radius:var(--r-sm);padding:0 12px}.btn--lg{height:var(--h-touch);font-size:var(--t-17);border-radius:var(--r-tile);padding:0 24px}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn--send{background:var(--accent);color:var(--accent-ink);padding-left:8px}.btn--send:hover{background:var(--accent-strong)}.btn--send-outline{background:var(--card);color:var(--ink);border-color:var(--line-2);padding-left:8px}.btn--send-outline:hover{border-color:var(--accent);color:var(--accent-strong)}.btn--send-outline .hj-mark{border:1px solid var(--line)}.btn--send[aria-busy=true]{opacity:.8;cursor:progress}.hj-mark{border-radius:var(--r-tag);background:var(--accent-ink);height:24px;color:var(--ink);font-size:var(--t-12);letter-spacing:-.02em;align-items:center;gap:5px;padding:0 8px 0 7px;font-weight:800;display:inline-flex}.hj-mark:before{content:"";background:var(--hanjullo);border-radius:50%;width:7px;height:7px}.bridge{font-size:var(--t-12);color:var(--ink-2);background:var(--hanjullo-weak);border-radius:var(--r-tag);align-items:center;gap:6px;padding:3px 8px;font-weight:600;display:inline-flex}.bridge:before{content:"";background:var(--hanjullo);border-radius:50%;width:7px;height:7px}.field{gap:6px;display:grid}.field label{font-size:var(--t-12);color:var(--ink-2);font-weight:650}.input,.select{height:var(--h-ctl);border:1px solid var(--line-2);border-radius:var(--r-ctl);font:inherit;font-size:var(--t-14);color:var(--ink);background:var(--card);min-width:0;padding:0 12px}.input:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak);outline:none}.otp-steps{font-size:var(--t-14);color:var(--ink-2);gap:4px;margin:0;padding-left:20px;display:grid}.otp-qr{border:1px solid var(--line);border-radius:var(--r-ctl);width:200px;height:200px;image-rendering:pixelated;background:#fff;justify-self:center;padding:8px}.otp-key{font-size:var(--t-12);color:var(--ink-2);justify-items:center;gap:4px;margin:0;display:grid}.otp-key b{font-size:var(--t-14);color:var(--ink);letter-spacing:.04em;overflow-wrap:anywhere;text-align:center}.search{height:var(--h-ctl);border:1px solid var(--line-2);border-radius:var(--r-ctl);background:var(--card);color:var(--muted);align-items:center;gap:8px;min-width:0;padding:0 12px;display:flex}.search input{font:inherit;font-size:var(--t-14);width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.seg{height:var(--h-ctl);border-radius:var(--r-ctl);background:var(--card-2);border:1px solid var(--line);gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.seg button{font:inherit;font-size:var(--t-13);color:var(--ink-2);border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0 12px;font-weight:600}.seg button[aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #0f172a14,0 0 0 1px var(--line)}.seg button .count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:4px;font-weight:500}.toolbar{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.toolbar .spacer{flex:1}.action-form{gap:var(--s-4);display:grid}.action-form .field>span{font-size:var(--t-12);color:var(--ink-2);font-weight:650}.row-actions{gap:var(--s-2);flex-wrap:wrap;display:flex}.blockers{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.blockers li{gap:var(--s-2);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.notice{background:var(--warn-weak);margin:0 var(--s-4) var(--s-3);border-radius:12px;gap:4px;padding:12px 14px;display:grid}.notice,.st{font-size:var(--t-13)}.st{white-space:nowrap;align-items:center;gap:6px;font-weight:600;display:inline-flex}.st:before{content:"";background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}.st--ok{color:var(--ok)}.st--warn{color:var(--warn)}.st--danger{color:var(--danger)}.st--info{color:var(--info)}.st--idle{color:var(--faint)}.badge{border-radius:var(--r-tag);height:22px;font-size:var(--t-11);letter-spacing:.02em;white-space:nowrap;background:var(--card-2);color:var(--ink-2);border:1px solid var(--line);align-items:center;padding:0 8px;font-weight:700;display:inline-flex}.badge--info{background:var(--info-weak);color:var(--info);border-color:#0000}.badge--adv{background:var(--warn-weak);color:var(--warn);border-color:#0000}.badge--warn{background:var(--card);color:var(--warn);border-color:var(--warn-line)}.badge--ok{background:var(--ok-weak);color:var(--ok);border-color:#0000}.badge--danger{background:var(--danger-weak);color:var(--danger);border-color:#0000}.badge--accent{background:var(--accent-weak);color:var(--accent-strong);border-color:#0000}.badge--channel{font-family:var(--font-mono);letter-spacing:0;font-weight:600}.stamp{border-radius:var(--r-stamp);min-width:40px;height:22px;box-shadow:inset 0 0 0 2px var(--card),inset 0 0 0 3px currentColor;font-size:var(--t-11);letter-spacing:.08em;color:var(--accent-strong);white-space:nowrap;border:1.5px solid;place-items:center;padding:0 6px;font-weight:800;display:inline-grid}.stamp--lock{color:var(--danger)}.stamp--draft{color:var(--faint);box-shadow:inset 0 0 0 2px var(--card);border-style:dashed}.rec{font-size:var(--t-11);color:var(--accent-strong);letter-spacing:.03em;align-items:center;gap:4px;font-weight:700;display:inline-flex}.rec:before{content:"";border-radius:var(--r-pill);border:1.5px solid;width:10px;height:10px;transform:rotate(45deg)scale(.75)}.practice{align-items:center;gap:var(--s-3);padding:8px var(--s-4);background:var(--warn-weak);color:var(--warn);font-size:var(--t-13);border-bottom:1px solid var(--warn-line);top:env(safe-area-inset-top,0);z-index:30;font-weight:650;display:flex;position:sticky}.practice b{color:var(--warn-ink)}.queue-note{align-items:center;gap:var(--s-2);background:var(--warn-weak);color:var(--warn);border-radius:var(--r-tile);font-size:var(--t-13);padding:10px 12px;font-weight:650;display:flex}.queue-note b{color:var(--warn-ink)}.table-wrap{border-top:1px solid var(--line);max-height:min(70vh,720px);overflow:auto}table.ledger{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--t-13);min-width:720px}.ledger th{background:var(--card-2);text-align:left;font-size:var(--t-12);color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;z-index:1;height:36px;padding:0 12px;font-weight:650;position:sticky;top:0}.ledger td.r,.ledger th.r{text-align:right}.ledger th.sortable{cursor:pointer}.ledger th.sorted{color:var(--ink)}.ledger th.sorted:after{content:" ↓";color:var(--accent)}.ledger td{height:var(--h-row);border-bottom:1px solid var(--line);vertical-align:middle;color:var(--ink);font-variant-numeric:tabular-nums;padding:0 12px}.ledger tbody tr:hover td{background:var(--card-2)}.ledger tbody tr[aria-selected=true] td{background:var(--accent-weak)}.ledger tbody tr[aria-selected=true] td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.ledger td.first{background:var(--card);z-index:0;position:sticky;left:0}.ledger tbody tr[aria-selected=true] td.first{background:var(--accent-weak)}.cell-name{gap:1px;min-width:0;display:grid}.cell-name b{font-weight:650;font-size:var(--t-13);color:var(--ink)}.cell-name span{font-size:var(--t-12);color:var(--muted)}.qty-neg{color:var(--danger);font-weight:700}.qty-low{color:var(--warn);font-weight:700}.chk{width:16px;height:16px;accent-color:var(--accent)}.qty-input{text-align:right;width:96px;height:32px}.check{align-items:center;gap:var(--s-2);font-size:var(--t-14);min-height:40px;display:flex}.check input{width:18px;height:18px;accent-color:var(--accent)}.chip__x{font:inherit;font-size:var(--t-12);color:var(--accent-strong);cursor:pointer;background:0 0;border:0;margin-left:6px;padding:0;font-weight:650}.thumb{border-radius:var(--r-tag);border:1px solid var(--line);flex:none;width:32px;height:32px}.commit{align-items:center;gap:var(--s-3);padding:10px var(--s-4);padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));background:var(--band);color:var(--band-ink);border-radius:var(--r-tile);box-shadow:var(--shadow-modal);flex-wrap:wrap;display:flex;position:sticky;bottom:0}.commit b{font-variant-numeric:tabular-nums}.commit .spacer{flex:1}.commit .btn--outline{color:var(--band-ink);border-color:var(--band-line);background:0 0}.empty{text-align:center;place-items:center;gap:var(--s-2);padding:var(--s-10) var(--s-4);color:var(--muted);display:grid}.empty h4{font-size:var(--t-15);color:var(--ink);margin:0}.bar{border-radius:var(--r-pill);background:var(--card-2);border:1px solid var(--line);height:6px;overflow:hidden}.bar>i{background:var(--accent);border-radius:var(--r-pill);height:100%;display:block}.bar--warn>i{background:var(--warn)}.bar--danger>i{background:var(--danger)}.scrim{padding:var(--s-4);z-index:50;background:#0f172a7a;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--card);width:min(560px,100%);color:var(--ink);text-align:left;border-radius:var(--r-modal);box-shadow:var(--shadow-modal);max-height:calc(100vh - 32px);display:grid;overflow:auto}.modal--wide{width:min(720px,100%)}.modal__head{padding:var(--s-5) var(--s-6) 0;justify-content:space-between;gap:var(--s-3);align-items:start;display:flex}.modal__head h3{font-size:var(--t-17);margin:0;font-weight:750}.modal__body{padding:var(--s-4) var(--s-6);gap:var(--s-4);display:grid}.modal__foot{padding:var(--s-4) var(--s-6) var(--s-5);justify-content:flex-end;gap:var(--s-2);border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.modal__why{font-size:var(--t-13);color:var(--ink-2);background:var(--card-2);border-radius:var(--r-ctl);padding:10px 12px}.x{border-radius:var(--r-sm);width:32px;height:32px;color:var(--muted);cursor:pointer;font-size:var(--t-17);background:0 0;border:0;line-height:1}.x:hover{background:var(--card-2)}.toast{align-items:center;gap:var(--s-3);background:var(--band);color:var(--band-ink);border-radius:var(--r-tile);font-size:var(--t-13);box-shadow:var(--shadow-modal);max-width:420px;padding:12px 16px;display:flex}.toast .st{color:var(--band-ok)}.toast a{color:var(--band-link);white-space:nowrap;margin-left:auto;font-weight:650}.kv{gap:6px var(--s-4);font-size:var(--t-13);grid-template-columns:auto 1fr;display:grid}.kv dt{color:var(--muted)}.kv dd{color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;margin:0;font-weight:600}.rows{display:grid}.row{align-items:center;gap:var(--s-3);border-top:1px solid var(--line);min-width:0;padding:12px 0;display:flex}.row:first-child{border-top:0}.row__main{flex:1;gap:2px;min-width:0;display:grid}.row__main b{font-size:var(--t-14);font-weight:650}.row__main span{font-size:var(--t-12);color:var(--muted)}@media (max-width:1023px){.grid-12>[class*=span-]{grid-column:span 12}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;width:100%}.kbar{min-width:0}.menu-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-row{gap:var(--s-2);grid-template-columns:1fr}.mhead{align-items:flex-end}.htabs{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;width:100%}}@media (max-width:767px){.gnav{gap:var(--s-3)}.gnav__menu{display:none}.gnav__more{margin-left:auto;display:block;position:relative}.gnav__more summary{cursor:pointer;color:var(--band-ink);font-weight:600;font-size:var(--t-14);border:1px solid var(--band-line);border-radius:var(--r-sm);padding:6px 10px;list-style:none}.gnav__more summary::-webkit-details-marker{display:none}.gnav__sheet{z-index:40;background:var(--band);border:1px solid var(--band-line);border-radius:var(--r-sm);min-width:160px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.gnav__sheet a{color:var(--band-ink-2);border-radius:var(--r-sm);padding:8px 12px;font-weight:600}.gnav__sheet a[aria-current=page]{color:var(--band-ink);background:var(--band-2)}.kbar kbd,.kbar span{display:none}.kbar{justify-content:center;width:34px;min-width:34px;padding:0}.who span{display:none}.topbar{gap:var(--s-2)}.topbar .bbtn__label,.topbar .who,.wordmark small{display:none}.topbar .bbtn{padding:0 8px}.menu-cards{grid-template-columns:1fr}.mhead__sub{font-size:var(--t-14);display:block}.mhead__id{align-items:flex-start}.ictile--band{width:40px;height:40px}.scards{grid-template-columns:repeat(2,minmax(0,1fr))}.head--hub h1{font-size:var(--t-20)}.head{padding-block:var(--s-5) calc(var(--s-6) + 28px)}.cmd{padding:var(--s-3) var(--s-4)}.cmd__row{flex-wrap:wrap}.cmd__row .btn{width:100%}.card__body,.card__head{padding-inline:var(--s-4)}.hide-sm{display:none!important}}.dbar{background:var(--band);color:var(--band-ink);align-items:center;gap:var(--s-4);padding:0 var(--s-4);font-size:var(--t-13);display:flex}.dbar .brand{font-size:var(--t-14)}.dbar .dsep{background:var(--band-line);width:1px;height:18px}.dbar .muted{color:var(--band-ink-2)}.dbar .spacer{flex:1}.net{color:var(--band-ok);align-items:center;gap:6px;font-weight:650;display:inline-flex}.net:before{content:"";background:currentColor;border-radius:50%;width:8px;height:8px}@media (max-width:599px){.dbar .hide-sm{display:none}}.ph-band{background:var(--band);color:var(--band-ink);gap:6px;padding:14px 16px 16px;display:grid}.ph-band .row1{font-size:var(--t-12);color:var(--band-ink-2);justify-content:space-between;align-items:center;display:flex}.ph-band h2{font-size:var(--t-20);letter-spacing:-.02em;margin:0;font-weight:800}.ph-band p{font-size:var(--t-12);color:var(--band-ink-2);margin:0}.tabs{background:var(--card);border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.tabs a{font-size:var(--t-11);color:var(--muted);align-content:center;place-items:center;gap:2px;font-weight:650;display:grid}.tabs a:before{content:"";background:0 0;border-radius:2px;width:20px;height:3px;margin-bottom:4px}.tabs a[aria-current=page]{color:var(--accent-strong)}.tabs a[aria-current=page]:before{background:var(--accent)}.tabs a b{font-size:var(--t-13)}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-500.ttf)format("truetype")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/jetbrains-mono-600.ttf)format("truetype")}:root{color-scheme:light;--band-glow:#20b39f38;--w-desk:1240px;--w-full:1600px;--h-ctl:40px;--h-row:44px;--h-touch:56px}body,html{margin:0}body{font-family:var(--font-sans);font-size:var(--text-t14);color:var(--color-ink);background:var(--color-work);-webkit-font-smoothing:antialiased;line-height:1.55}.num{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}