:root{--blue: #3d4f63;--blue-bright: #3d4f63;--bg: #eef1f4;--ink: #1c242c;--muted: #5d6b78;--surface: #f8fafc;--line: rgba(28, 36, 44, .14);--up: #a33b3b;--down: #3d4f63;--radius: 7px;--shadow: 0 1px 4px rgba(28, 36, 44, .08);--navy: #3d4f63;--navy-2: #243040;--gold: #b08a3a;--header-fg: #f4f7fa;--paper: #eef1f4;--paper-2: #e2e7ed;--card: #f8fafc;--red: #a33b3b;--ok: #3d4f63;--bad: #a33b3b;--page-1: #c5ced8;--page-2: #b3bec8;--page-glow: rgba(61, 79, 99, .22);--foot-bg: #d5dde6;--pattern-a: rgba(163, 59, 59, .06);--pattern-b: rgba(61, 79, 99, .05);--font-sans: Pretendard, "Noto Sans KR", sans-serif;--font-serif: "Noto Serif KR", "Nanum Myeongjo", serif;--control-h: 42px;font-family:var(--font-sans);color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font-sans);background:radial-gradient(900px 400px at 10% -10%,var(--page-glow),transparent 50%),linear-gradient(180deg,var(--page-1) 0%,var(--page-2) 100%);min-height:100vh;color:var(--ink)}button,input,textarea,select{font:inherit}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),select,.btn,.btn-outline,.btn-ghost{min-height:var(--control-h);height:var(--control-h);box-sizing:border-box;padding:0 12px;line-height:1.25;border-radius:8px}textarea{min-height:calc(var(--control-h) * 2);box-sizing:border-box;padding:10px 12px;line-height:1.4;border-radius:8px}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),select,textarea{border:1px solid var(--line);background:#fff;color:var(--ink)}.hub-form-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 16px}.hub-screen-filters{padding:4px 4px 4px 8px;margin:14px 0 18px;gap:14px 18px}.download-busy-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;background:#0f172059}.download-busy-card{min-width:min(320px,90vw);padding:22px 24px;border-radius:12px;background:var(--card, #fff);border:1px solid var(--line);box-shadow:0 16px 40px #0f172033;text-align:center}.download-busy-card p{margin:8px 0 0}.download-busy-spinner{display:inline-block;width:28px;height:28px;border:3px solid rgba(36,52,71,.18);border-top-color:#243447;border-radius:50%;animation:download-spin .8s linear infinite}@keyframes download-spin{to{transform:rotate(360deg)}}.hub-form-field{display:grid;gap:4px;align-content:end;margin:0;font-size:13px;color:var(--muted);font-weight:600}.hub-form-field>span{line-height:1.2}.hub-form-field>input,.hub-form-field>select,.hub-form-field>.hub-stock-search{width:100%;min-width:0}.hub-form-field>.hub-stock-search{flex:none}.hub-form-row>.btn,.hub-form-row>.btn-outline,.hub-form-row>.btn-ghost{align-self:flex-end}a{color:inherit}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.frame{max-width:none;width:100%;margin:0 auto;padding:20px 16px 48px;box-sizing:border-box}.frame.wide{max-width:none;width:100%}.top{position:relative;background:var(--navy-2);color:var(--header-fg);padding:22px 26px 8px;border-radius:var(--radius) var(--radius) 0 0;font-family:var(--font-sans);box-shadow:0 18px 40px #0f27442e}.top-bar{display:flex;justify-content:flex-start;align-items:center;gap:8px}.top-tools{display:flex;align-items:center;gap:8px;flex:0 0 auto;margin-left:auto}.who-name{color:#d7c39a;font-size:13px;font-weight:700}.brand{color:inherit;text-decoration:none;display:inline-block;flex:0 0 auto}.brand-kicker{display:block;letter-spacing:.12em;font-size:11px;color:#d7c39a;margin-bottom:4px}.brand strong{font-family:var(--font-serif);font-size:34px;letter-spacing:-.03em}.brand-live{display:inline-flex;align-items:center;gap:6px;margin-left:8px;flex:0 0 auto;text-decoration:none;color:inherit;position:relative;z-index:8}.brand-live-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:36px;height:42px;padding:3px 7px 4px;border:1px solid rgba(246,239,226,.38);border-radius:6px;background:#f6efe214;color:#f6efe2;line-height:1;box-sizing:border-box}.brand-live-box b{font-family:var(--font-serif);font-size:18px;font-weight:800;letter-spacing:-.04em}.brand-live-box em{font-style:normal;font-size:9px;font-weight:700;letter-spacing:.08em;color:#d7c39a;margin-top:3px}.nav-toggle{display:none;position:relative;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:36px;padding:6px 10px;color:var(--header-fg);background:transparent;border:1px solid color-mix(in srgb,var(--header-fg) 28%,transparent);border-radius:999px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.nav-toggle-close,.nav-open .nav-toggle-open{display:none}.nav-open .nav-toggle-close{display:inline-flex}.nav-backdrop{display:none}.nav{position:relative;z-index:1;display:flex;flex-direction:column;flex-wrap:nowrap;gap:0;margin-top:16px;border-top:1px solid rgba(246,239,226,.12);padding-top:10px}.nav-public,.nav-admin{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:6px;width:100%}.nav-public-row,.nav-admin-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 2px;width:100%;min-height:38px}.nav-row-label{flex:0 0 100%;font-size:10px;letter-spacing:.06em;color:#f6efe285;padding:0 6px;font-weight:600;line-height:1.2;-webkit-user-select:none;user-select:none}.nav-public-row.is-empty .nav-row-label{display:none}.nav a,.nav button.has-ico{position:relative;display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;color:#f6efe2;text-decoration:none;font:inherit;font-size:13px;padding:8px 10px;border-radius:999px;border:1px solid transparent;background:transparent;cursor:pointer;transition:color .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.nav a:hover,.nav button.has-ico:hover{color:#fff;background:#f6efe214}.nav a.on,.nav button.has-ico.on{color:#0f2744;background:#e4c37a;font-weight:700}.nav-split{display:block;width:100%;height:0;margin:8px 0 10px;padding:0;border:0;border-top:1px solid rgba(228,195,122,.52);background:none;flex:none;align-self:stretch}.nav[data-nav-split="0"] .nav-split{border-top-color:#f6efe22e}.nav-admin:empty{display:none}.nav-propose{margin-left:auto}.nav[data-nav-icons="0"] .ico{display:none}.nav[data-nav-size=compact] a,.nav[data-nav-size=compact] button.has-ico{padding:5px 8px;font-size:12px}.nav[data-nav-size=airy] a,.nav[data-nav-size=airy] button.has-ico{padding:10px 14px;font-size:14px}.nav[data-nav-theme=pill] a,.nav[data-nav-theme=pill] button.has-ico{background:#f6efe20f;border-color:#e0ba6a2e}.nav[data-nav-theme=pill] a:hover,.nav[data-nav-theme=pill] button.has-ico:hover{background:#e4c37a2e;color:#fff8e8}.nav[data-nav-theme=pill] a.on,.nav[data-nav-theme=pill] button.has-ico.on{background:linear-gradient(180deg,#f3dd9e,#d4a84a);color:#14233a;border-color:#e8c56a;box-shadow:0 6px 16px #d4a84a47}.nav[data-nav-theme=underline] a,.nav[data-nav-theme=underline] button.has-ico{border-radius:0;padding-left:6px;padding-right:6px;background:transparent;letter-spacing:.04em}.nav[data-nav-theme=underline] a:hover,.nav[data-nav-theme=underline] a.on,.nav[data-nav-theme=underline] button.has-ico:hover,.nav[data-nav-theme=underline] button.has-ico.on{background:transparent;color:#f6efe2;box-shadow:inset 0 -2px #e4c37a}.nav[data-nav-theme=underline] a.on,.nav[data-nav-theme=underline] button.has-ico.on{font-weight:800;color:#fff}.nav[data-nav-theme=tablet] a,.nav[data-nav-theme=tablet] button.has-ico{border-radius:6px;border-color:#e4c37a52;background:#0f27442e}.nav[data-nav-theme=tablet] a:hover,.nav[data-nav-theme=tablet] button.has-ico:hover{border-color:#e4c37a;color:#fff}.nav[data-nav-theme=tablet] a.on,.nav[data-nav-theme=tablet] button.has-ico.on{background:#e4c37a33;color:#fff8e8;border-color:#e4c37a;box-shadow:inset 0 0 0 1px #ffffff1f}.nav[data-nav-theme=dancheong] a,.nav[data-nav-theme=dancheong] button.has-ico{border-radius:2px 2px 8px 8px;overflow:hidden}.nav[data-nav-theme=dancheong] a:before,.nav[data-nav-theme=dancheong] button.has-ico:before{content:"";position:absolute;left:8px;right:8px;top:0;height:3px;border-radius:0 0 2px 2px;background:linear-gradient(90deg,#9b2226 0,#9b2226 28%,#e4c37a 28%,#e4c37a 72%,#9b2226 72%);opacity:.35}.nav[data-nav-theme=dancheong] a:hover,.nav[data-nav-theme=dancheong] button.has-ico:hover{background:#9b22262e;color:#fff}.nav[data-nav-theme=dancheong] a.on,.nav[data-nav-theme=dancheong] button.has-ico.on{background:linear-gradient(180deg,#9b222659,#0f27441a);color:#fff8e8;font-weight:800}.nav[data-nav-theme=dancheong] a.on:before,.nav[data-nav-theme=dancheong] button.has-ico.on:before{opacity:1;height:4px}.nav[data-nav-theme=ink] a,.nav[data-nav-theme=ink] button.has-ico{border-radius:0;font-family:var(--font-serif);letter-spacing:.03em;padding-left:12px}.nav[data-nav-theme=ink] a:before,.nav[data-nav-theme=ink] button.has-ico:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;background:#f6efe233;transform:skewY(-8deg)}.nav[data-nav-theme=ink] a:hover,.nav[data-nav-theme=ink] button.has-ico:hover{background:transparent;color:#fff}.nav[data-nav-theme=ink] a.on,.nav[data-nav-theme=ink] button.has-ico.on{background:transparent;color:#f3dd9e;font-weight:800}.nav[data-nav-theme=ink] a.on:before,.nav[data-nav-theme=ink] button.has-ico.on:before{background:linear-gradient(180deg,#9b2226,#e4c37a);width:3px}.nav[data-nav-theme=night] a,.nav[data-nav-theme=night] button.has-ico{background:#ffffff0f;border-color:#ffffff14;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.nav[data-nav-theme=night] a:hover,.nav[data-nav-theme=night] button.has-ico:hover{background:#ffffff1f;color:#fff}.nav[data-nav-theme=night] a.on,.nav[data-nav-theme=night] button.has-ico.on{background:#ffffff2e;color:#fff;border-color:#e4c37a8c;box-shadow:0 0 0 1px #e4c37a40,0 8px 20px #0000002e}.nav[data-nav-theme=gilt] a,.nav[data-nav-theme=gilt] button.has-ico{border-radius:2px;color:#e8d5a3;border-color:#c4a35a8c;font-family:var(--font-serif);letter-spacing:.08em;background:linear-gradient(180deg,rgba(228,195,122,.08),transparent)}.nav[data-nav-theme=gilt] a:hover,.nav[data-nav-theme=gilt] button.has-ico:hover{color:#fff4d0;border-color:#e4c37a}.nav[data-nav-theme=gilt] a.on,.nav[data-nav-theme=gilt] button.has-ico.on{background:linear-gradient(180deg,#f3e2b5,#c9a227);color:#1a1408;border-color:#f0d78a;font-weight:800;box-shadow:0 8px 18px #c9a22747}.ico-sprite{position:absolute;width:0;height:0;overflow:hidden}.ico{width:1.05em;height:1.05em;flex:0 0 auto;display:inline-block;vertical-align:-.18em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.nav a .ico,.nav button.has-ico .ico{width:14px;height:14px}.nav a.has-ico,.nav button.has-ico{gap:6px}.menu-icon-btn .ico,.menu-icon-pick .ico{width:18px;height:18px}.nav-mark{display:inline-flex;align-items:center;align-self:flex-start;margin:-2px 0 0 2px;padding:1px 5px 0;border-radius:4px 4px 4px 1px;font-size:9px;font-weight:900;letter-spacing:.05em;line-height:1.35;text-transform:uppercase;white-space:nowrap;box-shadow:0 1px #00000038}.nav-mark[data-mark=new]{background:linear-gradient(180deg,#ff4d6d,#c4122f);color:#fff}.nav-mark[data-mark=hot]{background:linear-gradient(180deg,#ff9f1c,#e85d04);color:#fff8e8}.nav-mark[data-mark=best]{background:linear-gradient(180deg,#ffe08a,#c9a227);color:#3a2a08}.nav-mark[data-mark=up]{background:linear-gradient(180deg,#4ade80,#15803d);color:#fff}.nav-mark[data-mark=hit]{background:linear-gradient(180deg,#60a5fa,#1d4ed8);color:#fff}.nav-mark[data-mark=soon]{background:linear-gradient(180deg,#c4b5fd,#6d28d9);color:#fff}.nav a.nav-auth-lock,.nav a[data-nav=auth-lock],.nav button[data-nav=auth-lock]{padding-left:9px;padding-right:9px}.nav .auth-lock-svg{width:18px;height:18px;overflow:visible;vertical-align:-3px}.nav[data-nav-icons="0"] .auth-lock-svg{display:inline-block}.auth-lock-shackle{transform-origin:8px 11px;transition:transform .42s cubic-bezier(.22,1.15,.32,1)}html:not(.is-member) .auth-lock-shackle{transform:rotate(-30deg) translate(2px,-2px)}html.is-member .auth-lock-shackle{transform:none}a[data-nav=signup],a[data-nav=signin]{display:none!important}html:not(.is-member) a[data-nav=mail]{display:none!important}.main{background:var(--paper);padding:28px 26px 40px;min-height:70vh;border:1px solid var(--line);border-top:none;border-radius:0 0 var(--radius) var(--radius);background-image:linear-gradient(90deg,var(--pattern-a) 0 12px,transparent 12px),repeating-linear-gradient(transparent,transparent 31px,var(--pattern-b) 32px)}html[data-pattern=none] .main{background-image:none}html[data-pattern=dots] .main{background-image:radial-gradient(var(--pattern-b) 1.4px,transparent 1.5px);background-size:14px 14px}html[data-pattern=grid] .main{background-image:linear-gradient(var(--pattern-b) 1px,transparent 1px),linear-gradient(90deg,var(--pattern-b) 1px,transparent 1px);background-size:22px 22px}html[data-density=compact] .main{padding:18px 18px 28px}html[data-density=airy] .main{padding:36px 32px 52px}.main.wide{max-width:none}.content{padding:16px;width:100%;max-width:none;margin:0 auto;box-sizing:border-box}.stack{display:grid;gap:12px}.muted{color:var(--muted);line-height:1.5}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px;border:1px solid var(--line)}h1,h2,.brand strong{font-family:var(--font-serif)}.btn,.btn-outline,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 16px;border-radius:8px;cursor:pointer;border:1px solid transparent;text-decoration:none;font-weight:600}.btn{background:var(--blue);color:#fff}.btn:hover{background:var(--blue-bright)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-outline{background:#fff;border-color:var(--line);color:var(--ink);width:100%}.btn-outline:hover{border-color:var(--blue);color:var(--blue)}.btn-outline:disabled,.btn-ghost:disabled{opacity:.55;cursor:not-allowed}.btn-ghost{background:transparent;border-color:var(--line)}.btn-block{width:100%}.file-row{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line);cursor:pointer}.file-row input{margin-top:4px}.file-row span{display:grid;gap:2px}.file-row .meta{color:var(--muted);font-size:.85rem}.file-row.warn .meta{color:#c62828}.progress.det>span{animation:none;width:var(--p, 0%);transform:none}.dialog-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a142373;display:flex;align-items:center;justify-content:center;z-index:50}.dialog{background:var(--surface);padding:20px;border-radius:var(--radius);max-width:420px;width:90%;box-shadow:var(--shadow)}.field{display:grid;gap:6px}.field label{font-size:.9rem;color:var(--muted)}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff}.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.quote-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer}.quote-row:hover{background:#1565c00a}.badge{display:inline-block;font-size:.75rem;padding:2px 8px;border-radius:999px;background:#d6e4ff;color:#0d47a1;margin-left:6px}.up{color:var(--up)}.down{color:var(--down)}.flat{color:var(--muted)}.chart{width:100%;height:220px;background:linear-gradient(180deg,#eef4ff,#fff);border:1px solid var(--line);border-radius:8px;position:relative;overflow:hidden}.chart svg{width:100%;height:100%;display:block}.progress{height:6px;background:#e3ebf5;border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:var(--blue);width:40%;animation:pulse 1.2s infinite}.loading-progress{display:flex;flex-direction:column;gap:8px;margin:8px 0 12px;padding:14px 16px;border-radius:10px;background:#1565c00f;border:1px solid rgba(21,101,192,.12)}.loading-progress-fade{animation:loading-fade-in .75s ease-out both}.loading-progress-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.loading-progress-msg{margin:0;font-size:1rem;font-weight:600;line-height:1.45;color:var(--ink, #1a2332);letter-spacing:-.01em;animation:loading-msg-fade .55s ease-out both}.loading-progress-pct{font-size:1.05rem;font-variant-numeric:tabular-nums;color:var(--blue, #1565c0);flex:0 0 auto}.loading-progress-detail{margin:0;font-size:.92rem;color:var(--muted);line-height:1.4}@keyframes loading-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes loading-msg-fade{0%{opacity:.35}to{opacity:1}}.hub-stock-search.is-loading input{color:var(--muted);font-weight:600;background:#2434470f;cursor:wait}@keyframes pulse{0%{transform:translate(-40%)}to{transform:translate(240%)}}.error{color:#c62828}.success{color:#2e7d32}.table{width:100%;border-collapse:collapse;font-size:.92rem}.table th,.table td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;cursor:pointer}.chip.active{background:#d6e4ff;border-color:#90caf9;color:#0d47a1}.topbar{justify-content:flex-start}.top-title{flex:1}.top-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.btn-ghost.compact{min-height:36px;padding:0 12px;font-weight:600}.small-inline{font-size:.85rem}.panel-kicker{margin:0;font-size:.75rem;letter-spacing:.12em;font-weight:700;color:var(--blue)}.lede{color:var(--muted);line-height:1.55;margin:0}.login-page{width:min(440px,100%)}.login-card{gap:14px}.pw-line{display:flex;gap:8px;align-items:center;position:relative}.pw-line input{flex:1}.pw-peek{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:42px;padding:0 10px;cursor:pointer}.pw-layout-tip{position:absolute;left:0;top:100%;font-size:.8rem;color:#c62828;background:#fff;padding:4px 0}.login-remember{display:flex;gap:16px;flex-wrap:wrap}.login-remember-item{display:flex;gap:6px;align-items:center;color:var(--muted)}.notice{background:#fff4e5;border:1px solid #ffcc80;color:#e65100;border-radius:8px;padding:10px 12px}.notice-ok{background:#e8f5e9;border-color:#a5d6a7;color:#2e7d32}.linkish{border:0;background:none;color:var(--blue);cursor:pointer;padding:0;font:inherit;text-decoration:underline}.btn.danger,.mad-btn-danger{background:#c62828;color:#fff}.content.wide{width:100%;max-width:none;padding:0 12px 24px}.admin-page{padding:8px 8px 32px;max-width:none;width:100%}.filters,.layout-tabs{display:flex;flex-wrap:wrap;gap:8px}.filters>button,.filters>a,.layout-tabs>button,.layout-tabs>a{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;text-decoration:none;font-weight:600}.filters>.on,.layout-tabs>.on{background:#d6e4ff;border-color:#90caf9;color:#0d47a1}.menu-preview-head,.mad-title-row,.proposal-ip-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.menu-preview-head h2{margin:0}.menu-preview-stage{margin-top:12px;padding:16px 18px 12px;border-radius:8px;background:var(--navy-2);color:var(--header-fg);font-family:var(--font-sans);box-shadow:inset 0 0 0 1px #f6efe214}.menu-preview-brand{font-family:var(--font-serif);font-size:18px;letter-spacing:-.03em;margin-bottom:8px;color:var(--header-fg)}.menu-preview-nav{margin-top:0;padding-top:8px}.menu-preview-nav .nav-lane{display:flex;align-items:stretch;gap:8px;width:100%;min-height:42px;margin:0 0 6px;padding:4px 6px;border:1px dashed rgba(228,195,122,.28);border-radius:10px;box-sizing:border-box}.menu-preview-nav .nav-lane.is-empty{background:#f6efe20a}.menu-preview-nav .nav-lane-n{flex:0 0 auto;align-self:center;min-width:2.4em;color:#e4c37aeb;font-size:12px;font-weight:700}.menu-preview-nav .nav-lane-items{display:flex;flex-wrap:wrap;align-items:center;gap:6px 2px;flex:1 1 auto;min-width:0;min-height:34px}.menu-preview-nav .has-ico,.menu-preview-nav .nav-propose{position:relative;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:#f6efe2;font-size:13px;padding:8px 10px;border-radius:999px}.menu-preview-nav .menu-preview-item{cursor:grab;-webkit-user-select:none;user-select:none;border:1px solid transparent;background:transparent}.menu-preview-nav .menu-preview-item:active{cursor:grabbing}.menu-preview-nav .menu-preview-item.is-dragging{opacity:.45;border-color:#e4c37a8c}.menu-preview-nav .menu-preview-item.is-drop-before{box-shadow:-3px 0 #e4c37af2}.menu-preview-nav .nav-lane.is-drop-lane{border-color:#e4c37ab3;background:#e4c37a14}.menu-preview-nav .nav-lane-items.is-drop-end{box-shadow:inset -2px 0 #e4c37ab3}.menu-ctx-menu{position:fixed;z-index:120;min-width:180px;padding:6px;border-radius:10px;border:1px solid var(--line);background:#fff;box-shadow:0 12px 32px #141c262e;display:grid;gap:2px}.menu-ctx-menu hr{border:0;border-top:1px solid var(--line);margin:4px 0}.menu-ctx-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:6px;padding:8px 10px;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer}.menu-ctx-menu button:hover:not(:disabled){background:#2563eb14;color:var(--blue)}.menu-ctx-menu button:disabled{opacity:.45;cursor:not-allowed}.menu-ctx-menu button.is-on{background:#2563eb1a;color:var(--blue)}.menu-edit-dialog{min-width:min(420px,92vw)}.home-empty{min-height:40vh}.home-guide-shell{display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr);gap:20px 24px;align-items:start;max-width:1180px;margin:0 auto 48px}.home-guide-sidebar{position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,#15202b 96%,#243447);color:#f4f7fb;box-shadow:0 10px 28px #0f17202e}.home-guide-sidebar-inner{padding:16px 14px 18px}.home-guide-sidebar-kicker{margin:0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold, #c4a35a)}.home-guide-sidebar-title{margin:6px 0 0;font-size:1.25rem;letter-spacing:-.02em;color:#f7fafc}.home-guide-sidebar-lede{margin:8px 0 14px;font-size:.86rem;line-height:1.45;color:#f2f6fab8}.home-guide-toc{margin:0}.home-guide-toc ol{margin:0;padding:0;list-style:none;display:grid;gap:2px}.home-guide-toc-group{display:block;margin:10px 0 4px;padding:0 8px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#c4a35ad9}.home-guide-toc li:first-child .home-guide-toc-group{margin-top:0}.home-guide-toc a{display:block;padding:7px 10px;border-radius:8px;color:#f2f6fae0;text-decoration:none;font-size:.9rem;line-height:1.3}.home-guide-toc a:hover,.home-guide-toc a.on{background:#f7fafc1a;color:#fff}.home-guide-toc a.on{box-shadow:inset 2px 0 0 var(--gold, #c4a35a)}.home-guide-sidebar-actions{display:grid;gap:8px;margin-top:14px}.home-guide-sidebar-actions .btn{background:#f7fafc;color:#15202b;border-color:#f7fafc;text-align:center}.home-guide-sidebar-actions .btn-outline{color:#f7fafc;border-color:#f7fafc66;background:transparent;text-align:center}.home-guide-main{min-width:0}.home-guide-main-head{margin:0 0 18px}.home-guide-main-head h2{margin:0;font-size:1.5rem;letter-spacing:-.02em}.home-guide-main-head p{margin:8px 0 0;color:var(--muted);font-size:.95rem}.home-guide-section{margin:0 0 28px;padding:18px 18px 16px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--card) 96%,transparent);scroll-margin-top:16px}.home-guide-section.is-active{border-color:color-mix(in srgb,var(--gold, #c4a35a) 55%,var(--line))}.home-guide-section-head{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;justify-content:space-between;margin-bottom:8px}.home-guide-section-head h2{margin:0;font-size:1.28rem;letter-spacing:-.02em}.home-guide-goto{flex-shrink:0}.home-guide-about{margin:0 0 12px;line-height:1.5;color:var(--muted);font-size:.95rem}.home-guide-steps{margin:0 0 14px;padding:0;list-style:none;display:grid;gap:8px}.home-guide-steps li{display:flex;gap:10px;align-items:flex-start;line-height:1.45;font-size:.95rem}.home-guide-step-num{flex:0 0 1.55rem;width:1.55rem;height:1.55rem;border-radius:999px;display:inline-grid;place-items:center;font-size:.75rem;font-weight:700;background:#c45c26;color:#fff;box-shadow:0 0 0 2px #fff,0 1px 4px #15202b40}.home-guide-figures{display:grid;gap:14px;margin:0 0 14px}.home-guide-figure{margin:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.home-guide-shot{position:relative;isolation:isolate}.home-guide-figure img{display:block;width:100%;height:auto}.home-guide-figure figcaption{padding:8px 12px 10px;font-size:.84rem;color:var(--muted);line-height:1.4;border-top:1px solid var(--line);background:color-mix(in srgb,var(--card) 94%,transparent)}.home-guide-figure-partial{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--gold, #c4a35a) 40%,transparent)}.home-guide-pin{position:absolute;transform:translate(-50%,-50%);z-index:2;display:grid;justify-items:center;gap:2px;pointer-events:none;filter:drop-shadow(0 2px 4px rgba(15,23,32,.35))}.home-guide-pin-badge{width:1.7rem;height:1.7rem;border-radius:999px;display:grid;place-items:center;font-size:.8rem;font-weight:800;background:#c45c26;color:#fff;border:2px solid #fff}.home-guide-pin-label{max-width:9rem;padding:2px 7px;border-radius:6px;background:#15202be0;color:#f7fafc;font-size:.72rem;font-weight:600;line-height:1.25;text-align:center;white-space:nowrap}.home-guide-pin-arrow{width:0;height:0;border-style:solid}.home-guide-pin-s{grid-template-areas:"badge" "arrow" "label"}.home-guide-pin-s .home-guide-pin-badge{grid-area:badge}.home-guide-pin-s .home-guide-pin-arrow{grid-area:arrow;border-width:8px 6px 0 6px;border-color:#c45c26 transparent transparent transparent}.home-guide-pin-s .home-guide-pin-label{grid-area:label}.home-guide-pin-n{grid-template-areas:"label" "arrow" "badge"}.home-guide-pin-n .home-guide-pin-badge{grid-area:badge}.home-guide-pin-n .home-guide-pin-arrow{grid-area:arrow;border-width:0 6px 8px 6px;border-color:transparent transparent #c45c26 transparent}.home-guide-pin-n .home-guide-pin-label{grid-area:label}.home-guide-pin-e{grid-template-columns:auto auto auto;grid-template-areas:"badge arrow label";align-items:center;transform:translateY(-50%)}.home-guide-pin-e .home-guide-pin-badge{grid-area:badge}.home-guide-pin-e .home-guide-pin-arrow{grid-area:arrow;border-width:6px 0 6px 8px;border-color:transparent transparent transparent #c45c26}.home-guide-pin-e .home-guide-pin-label{grid-area:label}.home-guide-pin-w{grid-template-columns:auto auto auto;grid-template-areas:"label arrow badge";align-items:center;transform:translate(-100%,-50%)}.home-guide-pin-w .home-guide-pin-badge{grid-area:badge}.home-guide-pin-w .home-guide-pin-arrow{grid-area:arrow;border-width:6px 8px 6px 0;border-color:transparent #c45c26 transparent transparent}.home-guide-pin-w .home-guide-pin-label{grid-area:label}.home-guide-table-wrap{overflow:auto;margin:0 0 12px;border:1px solid var(--line);border-radius:8px}.home-guide-table{width:100%;border-collapse:collapse;font-size:.92rem}.home-guide-table th,.home-guide-table td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}.home-guide-table th{background:color-mix(in srgb,var(--ink) 6%,var(--card));font-size:.8rem;color:var(--muted);font-weight:600}.home-guide-table tr:last-child td{border-bottom:0}.home-guide-table td:first-child{width:3.2rem}.home-guide-note{margin:4px 0 0;padding:10px 12px;border-radius:8px;border:1px solid color-mix(in srgb,#8b4a4a 35%,var(--line));background:color-mix(in srgb,#8b4a4a 8%,var(--card))}.home-guide-note-title{margin:0 0 6px;font-weight:700;font-size:.85rem}.home-guide-note ul{margin:0;padding-left:1.1rem;display:grid;gap:4px;font-size:.88rem;line-height:1.45}.home-guide-footer{margin-top:8px;padding-top:16px;border-top:1px solid var(--line)}.home-guide-footer p{margin:0 0 12px;color:var(--muted);font-size:.92rem}@media (max-width: 900px){.home-guide-shell{grid-template-columns:1fr}.home-guide-sidebar{position:static;max-height:none}.home-guide-toc ol{display:flex;flex-wrap:wrap;gap:4px}.home-guide-toc-group{flex-basis:100%}.home-guide-toc a{padding:6px 10px;background:#f7fafc14}.home-guide-pin-label{max-width:6.5rem;font-size:.65rem}}.menu-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}.menu-toolbar input[type=search]{flex:1;min-width:180px;border:1px solid var(--line);border-radius:8px;padding:8px 10px}.menu-list{display:grid;gap:8px}.menu-row{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:8px}.menu-row.is-hidden{opacity:.55}.menu-row.is-admin{background:#fff8e1}.menu-icon-btn{width:40px;height:40px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.menu-row-main{flex:1;min-width:0;display:grid;gap:8px}.menu-row-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.menu-label{flex:1;min-width:140px;border:1px solid var(--line);border-radius:8px;padding:8px 10px}.menu-href{font-size:.8rem;color:var(--muted)}.menu-row-opts{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.menu-row-move{display:grid;gap:4px}.chip.is-locked{opacity:.7}.menu-nav-row-field,.menu-mark-field{display:flex;gap:6px;align-items:center;font-size:.9rem;color:var(--muted)}.theme-grid{display:grid;gap:12px;grid-template-columns:1.4fr 1fr}@media (max-width: 860px){.theme-grid{grid-template-columns:1fr}}.menu-theme-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px}.menu-theme-preset{display:flex;flex-direction:column;gap:6px;align-items:stretch;text-align:left;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;font:inherit;color:inherit}.menu-theme-preset.on{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy)}.menu-theme-preset b{font-size:14px}.menu-theme-preset small{color:var(--muted);font-size:12px;line-height:1.4}.menu-theme-swatch{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px;font-family:var(--font-sans);margin:0;padding:10px 8px;border-top:0;border-radius:6px;background:var(--navy-2);min-height:0}.menu-theme-swatch .has-ico{color:#d9d1c3;font-size:11px;padding:5px 8px;border-radius:999px;border:1px solid transparent;background:transparent;box-shadow:none}.menu-theme-swatch .has-ico.on{color:#0f2744;background:#e4c37a;font-weight:700}.menu-theme-swatch[data-nav-theme=underline] .has-ico{border-radius:0;background:transparent}.menu-theme-swatch[data-nav-theme=underline] .has-ico.on{box-shadow:inset 0 -2px #e4c37a;color:#fff;background:transparent}.menu-theme-swatch[data-nav-theme=tablet] .has-ico{border-radius:4px;border:1px solid rgba(228,195,122,.4)}.menu-theme-swatch[data-nav-theme=dancheong] .has-ico.on{background:#9b222673;color:#fff8e8}.menu-theme-swatch[data-nav-theme=ink] .has-ico{border-radius:0;font-family:var(--font-serif)}.menu-theme-swatch[data-nav-theme=ink] .has-ico.on{background:transparent;color:#f3dd9e;box-shadow:inset 3px 0 #e4c37a}.menu-theme-swatch[data-nav-theme=gilt] .has-ico{border-radius:2px;border:1px solid rgba(196,163,90,.55);font-family:var(--font-serif)}.menu-theme-swatch[data-nav-theme=gilt] .has-ico.on{background:linear-gradient(180deg,#f3e2b5,#c9a227);color:#1a1408}.menu-icon-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.menu-icon-pick{min-height:40px;border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer}.theme-swatch{display:flex;height:12px;border-radius:4px;overflow:hidden}.theme-swatch i{flex:1}.theme-color-row{display:flex;gap:8px}.theme-color-row input[type=color]{width:48px;height:40px;padding:0;border:0;background:none}.site-theme-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}.site-theme-preset{display:grid;gap:6px;text-align:left;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:8px;cursor:pointer;font:inherit;color:inherit}.site-theme-preset.on{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy);background:color-mix(in srgb,var(--navy) 8%,#fff)}.site-theme-preset b{font-size:13px;font-weight:700}.theme-color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.theme-radius-row{display:flex;align-items:center;gap:10px}.theme-radius-row input[type=range]{flex:1}.theme-radius-row em{font-style:normal;font-weight:700;min-width:3em}.theme-preview-mini{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.theme-preview-top{display:flex;flex-direction:column;gap:2px;padding:12px 14px}.theme-preview-top strong{font-size:18px}.theme-preview-top span{font-size:12px;opacity:.85}.theme-preview-body{padding:14px}.theme-preview-card{border:1px solid;border-radius:var(--radius);padding:12px}.theme-preview-card p{margin:6px 0 0;font-size:13px}.layout-studio{display:grid;gap:14px}.layout-studio-label{margin:0;font-size:.8rem;color:var(--muted);font-weight:700}.layout-studio-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.layout-studio-links button,.layout-studio-links a{display:grid;gap:2px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px;cursor:pointer}.layout-studio-links .on{border-color:var(--blue);background:#eef4ff}.layout-studio-links span{color:var(--muted);font-size:.85rem}.mad,.imsg{display:grid;grid-template-columns:minmax(260px,340px) 1fr;min-height:calc(100vh - 72px);border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.mad-list,.imsg-list{border-right:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.mad-list-head,.imsg-list-head{padding:16px;display:grid;gap:10px;border-bottom:1px solid var(--line)}.mad-list-head h1,.imsg-list-head h1,.imsg-chat-head h1,.imsg-chat-head h2{margin:0;font-size:1.2rem}.mad-switch,.mad-check{display:flex;gap:6px;align-items:center}.mad-tabs{display:flex;flex-wrap:wrap;gap:6px}.mad-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 10px;cursor:pointer}.mad-tabs .on{background:#d6e4ff}.mad-tabs .has-new{box-shadow:0 0 0 2px #ffcc80}.mad-people,.imsg-inbox{overflow:auto}.mad-person,.imsg-person{display:flex;gap:8px;align-items:center;width:100%;padding:10px 12px;border:0;background:none;border-bottom:1px solid var(--line);text-align:left;cursor:pointer}.mad-person.on,.imsg-person.on{background:#eef4ff}.mad-person-link{display:flex;gap:8px;align-items:center;flex:1;border:0;background:none;cursor:pointer;text-align:left;font:inherit}.mad-avatar,.imsg-avatar{width:36px;height:36px;border-radius:50%;background:#d6e4ff;color:#0d47a1;display:grid;place-items:center;font-weight:800;flex:none}.mad-avatar-lg{width:48px;height:48px}.mad-person-body,.imsg-person span{display:grid;min-width:0}.mad-preview{color:var(--muted);font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mad-pill{font-size:.75rem;padding:2px 8px;border-radius:999px;background:#eee}.mad-pill-pending{background:#fff3e0;color:#e65100}.mad-pill-active{background:#e8f5e9;color:#2e7d32}.mad-pill-withdrawn{background:#eceff1}.mad-pill-forced{background:#ffebee;color:#c62828}.mad-unread{min-width:20px;height:20px;border-radius:999px;background:#c62828;color:#fff;font-size:.75rem;display:inline-grid;place-items:center;padding:0 6px}.mad-detail,.imsg-chat{padding:16px;display:flex;flex-direction:column;min-width:0}.mad-detail-head,.imsg-chat-head{display:flex;gap:10px;align-items:center}.mad-who h2{margin:0}.mad-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0}.mad-facts span{display:block;color:var(--muted);font-size:.8rem}.mad-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.member-reset-form{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.mad-kpis,.presence-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.mad-kpis>div{border:1px solid var(--line);border-radius:var(--radius);padding:12px;background:var(--card)}.mad-kpis b,.stat .n{font-size:1.4rem}.mad-kpis span,.stat .l{color:var(--muted);font-size:.85rem}.ops-page .ops-tabs button.has-ico,.ops-page .ops-grains button.has-ico{display:inline-flex;align-items:center;gap:6px}.ops-page .filters>button.on{background:var(--navy);border-color:var(--navy);color:var(--header-fg)}.ops-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 22px}.stat.ops-kpi{border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;background:var(--card);box-shadow:0 1px #ffffffb3 inset}.ops-kpi .n{font-family:var(--font-serif);font-size:28px;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--navy)}.ops-unit{font-size:13px;margin-left:4px;color:var(--muted);font-family:var(--font-sans);font-weight:500}.ops-delta{font-weight:600;margin-left:6px}.ops-delta.up{color:var(--ok)}.ops-delta.down{color:var(--bad)}.ops-delta.flat{color:var(--muted)}.ops-h{font-size:18px;margin:8px 0 10px;font-family:var(--font-serif)}.ops-fold{margin:8px 0 22px}.ops-fold-sum{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:8px;font-size:18px;font-weight:700;color:var(--navy);padding:4px 0;-webkit-user-select:none;user-select:none}.ops-fold-sum::-webkit-details-marker{display:none}.ops-fold-sum:before{content:"▶";font-size:12px;color:var(--gold);flex:0 0 auto}.ops-fold[open]>.ops-fold-sum:before{content:"▼"}.ops-fold-n{color:var(--muted);font-size:13px;font-weight:600}.ops-snap{margin-bottom:18px}.ops-snap-table{width:100%;border-collapse:collapse;background:color-mix(in srgb,var(--gold) 8%,var(--card));border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.ops-snap-table th,.ops-snap-table td{padding:10px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.ops-snap-table th{width:140px;color:var(--muted);font-weight:700}.ops-snap-table tr:last-child th,.ops-snap-table tr:last-child td{border-bottom:0}.ops-charts{margin-top:8px}.stats-wrap{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.stats-wrap .card{min-height:0;padding:14px}.stats-wrap canvas{display:block;width:100%}.chart-stance{grid-column:1 / -1}.chart-pie canvas{max-width:360px;margin:0 auto}.ops-error-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.ops-error-card{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px 14px;padding:12px 14px;background:color-mix(in srgb,var(--gold) 8%,var(--card));border:1px solid var(--line);border-radius:var(--radius)}.ops-error-status{font-family:var(--font-serif);font-size:28px;line-height:1;color:var(--bad)}.ops-error-kind{display:block;margin-top:4px;font-size:11px;color:var(--muted);font-weight:700}.ops-error-path{font-weight:700;word-break:break-all}.ops-error-method{display:inline-block;margin-right:6px;padding:1px 6px;border-radius:999px;background:#3d4f631a;font-size:11px;font-weight:700}.ops-error-meta{margin-top:4px;color:var(--muted);font-size:13px}.usage-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.host-live{display:flex;align-items:center;gap:8px;margin:0 0 14px}.host-live strong{font-size:18px}.host-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:8px 0 18px}.host-card h2{margin:0 0 8px;font-size:18px;font-family:var(--font-serif)}.host-card-wide{grid-column:1 / -1}.host-meta{margin:0 0 10px;color:var(--muted);font-size:13px}.host-meter{height:10px;background:color-mix(in srgb,var(--gold) 18%,#fff);border:1px solid var(--line);border-radius:99px;overflow:hidden;margin:8px 0 12px}.host-meter>span{display:block;height:100%;background:var(--navy);transition:width .35s ease}.host-meter.is-warn>span{background:#c49214}.host-meter.is-bad>span{background:var(--bad)}.host-pill{display:inline-block;margin-left:4px;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:700;background:#e8f3ea;color:var(--ok)}.host-pill.is-warn{background:#fff3d6;color:#8a6a10}.host-pill.is-bad{background:#fde8e6;color:var(--bad)}.host-cores{display:grid;grid-template-columns:repeat(auto-fill,minmax(28px,1fr));gap:4px;margin:0 0 12px}.host-core .host-meter{margin:0;height:7px}.path-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:8px 0 14px}.path-guide{margin:0 0 14px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--gold) 6%,var(--card))}.path-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 10px;padding:0;list-style:none}.path-flow li{display:flex;align-items:center;gap:8px;min-width:0}.path-flow-n{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;flex:0 0 auto}.path-flow strong{display:block}.path-flow span{color:var(--muted);font-size:13px}.path-guide-note{margin:0;color:var(--muted);line-height:1.6}.path-banner{margin:0 0 12px;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--line);background:#f4f7fb;font-weight:700;line-height:1.55}.path-banner.is-ok{background:#e8f3ea;border-color:#3d4f6340}.path-banner.is-warn{background:#fff8e8;border-color:#e2c36a}.path-banner.is-bad,.path-banner.is-run{background:#fde8e6;border-color:#e7b2ac}.path-banner.is-wait{background:#f4f7fb}.path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 18px}.path-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:14px 16px;min-width:0}.path-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.path-card header em{display:block;margin-top:2px;font-style:normal;font-weight:500;color:var(--muted);font-size:12px}.path-card .path-ms{margin:0 0 4px;font-family:var(--font-serif);font-size:28px;font-weight:700;letter-spacing:-.03em;line-height:1}.path-card.is-ok{box-shadow:inset 3px 0 0 var(--ok)}.path-card.is-warn{box-shadow:inset 3px 0 #c8960a}.path-card.is-bad{box-shadow:inset 3px 0 0 var(--bad)}.path-card.is-idle,.path-card.is-wait{opacity:.9}.path-meter{position:relative;height:8px;margin:8px 0 4px;background:color-mix(in srgb,var(--gold) 18%,#fff);border-radius:99px;overflow:hidden}.path-meter>span{display:block;height:100%;background:var(--ok)}.path-card.is-warn .path-meter>span{background:#c49214}.path-card.is-bad .path-meter>span{background:var(--bad)}.path-meter>i{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#8a6a10}.path-scale{display:flex;justify-content:space-between;gap:8px;margin:0 0 8px;color:var(--muted);font-size:11px}.path-mean{margin:0;line-height:1.55;font-size:13px;color:var(--muted)}.path-legend{margin:0 0 16px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}.path-legend summary{cursor:pointer;font-weight:700}.path-legend ul{margin:8px 0 0;padding-left:18px}.path-legend li{margin:4px 0;line-height:1.5}.path-legend b.is-ok{color:var(--ok)}.path-legend b.is-warn{color:#8a6a10}.path-legend b.is-bad{color:var(--bad)}.path-steps{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.path-step{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}.path-step .small{margin:2px 0 0}.act-table-wrap{overflow-x:auto;margin:8px 0 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}.act-table{width:100%;border-collapse:collapse;font-size:13px}.act-table th,.act-table td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.act-table th{background:color-mix(in srgb,var(--gold) 14%,#fff);font-weight:700;white-space:nowrap}.act-table tr.is-warn{background:#fffbf0}.act-table tr.is-bad{background:#fdf3f1}.act-title{max-width:420px}.act-detail{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45;word-break:break-all}.act-sev{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:700;background:#e8f3ea;color:var(--ok)}.act-sev.is-warn{background:#fff3d6;color:#8a6a10}.act-sev.is-bad{background:#fde8e6;color:var(--bad)}@media (max-width: 900px){.stats-wrap{grid-template-columns:1fr}.ops-kpis{grid-template-columns:1fr 1fr}.host-grid{grid-template-columns:1fr}.host-card-wide{grid-column:auto}}@media (max-width: 720px){.path-flow,.path-grid,.ops-kpis{grid-template-columns:1fr}.path-card .path-ms{font-size:24px}}.mad-timeline{list-style:none;padding:0;margin:0;display:grid;gap:8px}.mad-time{display:block;color:var(--muted);font-size:.8rem}.mad-blank,.mad-empty-list,.imsg-empty,.empty-note,.presence-empty{color:var(--muted);padding:24px;text-align:center}.mad-back{border:0;background:none;cursor:pointer;font-size:1.2rem}.imsg-chat.solo{grid-column:1 / -1}.imsg-thread{flex:1;overflow:auto;display:grid;gap:8px;padding:12px 0}.bubble{max-width:80%;padding:10px 12px;border-radius:12px;background:#eef4ff}.bubble.from-me{margin-left:auto;background:#d6e4ff}.bubble p{margin:0 0 4px;white-space:pre-wrap}.imsg-composer{display:flex;gap:8px;align-items:flex-end}.imsg-composer textarea{flex:1}.proposal-card{border-top:1px solid var(--line);padding-top:12px;display:grid;gap:8px}.proposal-card.is-hidden{opacity:.6}.proposal-card-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.proposal-status{font-weight:700}.proposal-body{white-space:pre-wrap}.proposal-actions{display:flex;flex-wrap:wrap;gap:8px}.presence-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#2e7d32;margin-right:6px;box-shadow:0 0 0 4px #2e7d3226}.presence-admin{margin-left:6px;font-size:.75rem;background:#fff3e0;color:#e65100;border-radius:4px;padding:1px 6px}.bar-list{display:grid;gap:6px}.bar-row{display:grid;grid-template-columns:140px 1fr auto;gap:8px;align-items:center;font-size:.85rem}.bar-row i{display:block;height:8px;background:var(--blue);border-radius:99px;min-width:2px}@media (max-width: 860px){.mad,.imsg{grid-template-columns:1fr}.mad.is-open .mad-list,.imsg.is-open .imsg-list{display:none}.mad:not(.is-open) .mad-detail,.imsg:not(.is-open) .imsg-chat{display:none}}@media (max-width: 720px){.frame{max-width:none;padding:0;padding-bottom:env(safe-area-inset-bottom)}.top{padding:14px 16px 8px;padding-top:max(14px,env(safe-area-inset-top));border-radius:0}.brand-kicker{font-size:10px;letter-spacing:.08em}.brand strong{font-size:24px}.brand-live{gap:4px;margin-left:6px}.brand-live-box{min-width:28px;height:34px;padding:2px 4px 3px}.brand-live-box b{font-size:15px}.brand-live-box em{font-size:8px}.nav-toggle-label{display:none}html.js .nav-toggle{display:inline-flex}html.js .nav{display:none;flex-direction:column;margin-top:10px;padding:8px 0 6px;max-height:min(70vh,560px);overflow:auto}html.js.nav-open .nav{display:flex}html.js .nav a,html.js .nav button.has-ico{width:100%;border-radius:8px;padding:12px;font-size:15px;min-height:44px}html.js .nav a .ico,html.js .nav button.has-ico .ico{width:16px;height:16px}html.js .nav .nav-propose{margin-left:0}html.js.nav-open .nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0f27446b}html.js.nav-open .top{position:relative;z-index:81}html.nav-open{overflow:hidden}.main{padding:18px 14px 88px;min-height:60vh;border-radius:0;border-left:0;border-right:0}}:root{--desk-amber: #c4a35a;--desk-grid: rgba(21, 32, 43, .05);--font-desk-display: "Fraunces", "Noto Serif KR", serif;--font-desk-body: "IBM Plex Sans", Pretendard, "Noto Sans KR", sans-serif}body{background:linear-gradient(180deg,#e8eef4eb,#adbccc8c),repeating-linear-gradient(0deg,transparent,transparent 23px,var(--desk-grid) 24px),repeating-linear-gradient(90deg,transparent,transparent 23px,var(--desk-grid) 24px),linear-gradient(160deg,var(--page-1),var(--page-2))}.frame.wide,.frame.desk-wide,.main.wide,html.data-hub-fluid .frame,html.data-hub-fluid .frame.wide,html.data-hub-fluid .frame.desk-wide,html.data-hub-fluid .main,html.data-hub-fluid .main.wide{max-width:none;width:100%}.desk-hero-with-tools{display:grid;grid-template-columns:1fr auto;gap:12px 16px;align-items:start}.desk-hero-with-tools .desk-hero-main{min-width:0}.desk-hero-with-tools .desk-hero-tools{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-items:center}.desk-hero-with-tools .desk-hero-actions{grid-column:1 / -1;margin-top:0}.hub-sheet-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end;flex:0 0 auto;width:auto;max-width:100%}.hub-stock-search{position:relative;min-width:min(280px,100%);flex:1 1 200px}.hub-stock-search input{width:100%;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:15px}.hub-stock-menu{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 4px);background:var(--card);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 28px #0f172029;max-height:280px;overflow:auto}.hub-stock-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:11px 14px;cursor:pointer;color:inherit;font-size:15px}.hub-stock-menu button:hover{background:#24344714}.hub-stock-menu em{color:var(--muted);font-style:normal;margin-left:6px;font-size:13px}.hub-panes{display:grid;gap:14px;grid-template-columns:repeat(var(--hub-cols, 1),minmax(0,1fr))}.hub-pane{min-width:0;border:1px solid var(--line);border-radius:10px;padding:14px;background:#ffffff8c}.hub-pane-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:10px}.hub-pane-bar .hub-stock-search{flex:1 1 160px;min-width:140px}.hub-pane-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-style:normal}.data-hub .desk-metric strong.hub-pane-name-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:nowrap;overflow:visible;white-space:normal}.hub-pane-name-row>em{font-style:normal;font-weight:inherit;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hub-pane-analyze{flex:0 0 auto;margin-left:auto;white-space:nowrap;padding:4px 9px;font-size:12px;font-weight:600;line-height:1.2}.hub-pane-title{font-size:14px;font-weight:700;color:var(--ink);letter-spacing:.02em}.hub-master-hint{margin:0;font-size:15px;line-height:1.55}.hub-insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.hub-insight-grid h3{margin:0 0 10px;font-size:17px}.data-hub{font-size:15px;line-height:1.5}.data-hub .desk-lede{font-size:1.05rem}.data-hub .desk-actions{gap:12px}.data-hub .desk-actions .btn,.data-hub .desk-actions .btn-outline,.data-hub .desk-actions .btn-ghost,.data-hub .hub-sheet-head .btn,.data-hub .hub-sheet-head .btn-outline,.data-hub .hub-sheet-head .btn-ghost,.data-hub .desk-panel-head .btn,.data-hub .desk-panel-head .btn-outline,.data-hub .desk-panel-head .btn-ghost,.data-hub .hub-pane .btn,.data-hub .hub-pane .btn-outline,.data-hub .hub-pane .btn-ghost{width:auto;min-height:42px;padding:9px 16px;font-size:15px;border-radius:8px}.data-hub .desk-panel-head h2{font-size:1.35rem}.data-hub .desk-metric span{font-size:13px;margin-bottom:6px}.data-hub .desk-metric strong{font-size:1.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:100%;line-height:1.3}.data-hub .desk-metrics{gap:12px}.data-hub .desk-metric{padding:12px 14px;min-height:68px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;min-width:0}.data-hub .hub-pane .desk-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.data-hub .hub-pane .hub-stock-search input,.data-hub .hub-pane .hub-pane-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.data-hub .wb-cell.wb-selected{background:#24344724;box-shadow:inset 0 0 0 1px var(--navy, #243447)}.data-hub .wb-table tr.wb-row-selected .wb-row-head{background:#2434471f;font-weight:700}.data-hub .wb-table tr.wb-row-selected .wb-cell{background:#2434471a}.data-hub .muted{font-size:14px}.data-hub .hub-wait-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 16px;margin:2px 0 0}.data-hub .hub-wait-line>.error,.data-hub .hub-wait-line>.muted{margin:0;flex:1 1 auto;min-width:min(100%,280px)}.data-hub .hub-cooldown-inline{flex:0 0 auto;min-width:5.5em;font-size:18px;font-weight:700;line-height:1.4;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#c62828}.data-hub .wb-table{font-size:14px}.data-hub .wb-table th,.data-hub .wb-table td{height:34px;min-height:34px}.data-hub .wb-corner,.data-hub .wb-row-head{width:40px;min-width:40px;max-width:40px;padding:4px 2px}.data-hub .wb-head{padding:8px;font-size:13px}.data-hub .wb-cell{padding:6px 8px}.data-hub .wb-filter-cell select,.data-hub .wb-filter-cell input{font-size:13px;padding:4px 6px}.data-hub .wb-scroll{max-height:min(62vh,560px)}@media (max-width: 980px){.hub-panes{grid-template-columns:1fr!important}.hub-insight-grid,.desk-hero-with-tools{grid-template-columns:1fr}}.top-search{flex:1 1 280px;max-width:420px;margin:0 12px;position:relative}.top-search input{width:100%;border:1px solid rgba(242,246,250,.28);background:#0f172059;color:var(--header-fg);border-radius:6px;padding:8px 12px;outline:none}.top-search input::placeholder{color:#f2f6fa8c}.top-search-menu{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 4px);background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 32px #0f17202e;max-height:420px;overflow:auto}.top-search-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:10px 12px;cursor:pointer;color:inherit}.top-search-menu button:hover{background:#24344714}.top-search-menu em{color:var(--muted);font-style:normal;margin-left:6px;font-size:12px}.spot-search{display:grid;gap:6px}.spot-trigger{display:none;align-items:center;justify-content:space-between;gap:10px;width:100%;border:1px solid rgba(242,246,250,.28);background:#0f172059;color:var(--header-fg);border-radius:6px;padding:8px 12px;cursor:pointer}.spot-trigger kbd,.spot-modal-head kbd{font:600 11px/1 var(--font-mono, ui-monospace, monospace);border:1px solid rgba(242,246,250,.35);border-radius:4px;padding:3px 6px;opacity:.85}.spot-dropdown{min-width:min(520px,92vw);right:auto}.spot-panel{padding:8px}.spot-meta{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted);margin-bottom:6px}.spot-seed,.spot-hint,.spot-empty{margin:0 0 8px;font-size:13px;color:var(--muted);line-height:1.45}.spot-seed strong{color:var(--ink)}.spot-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.spot-list li{display:grid;grid-template-columns:1fr auto;gap:4px;align-items:stretch;border-radius:8px}.spot-list li.on,.spot-list li:hover{background:#24344714}.spot-row{text-align:left;border:0;background:transparent;padding:8px 10px;cursor:pointer;color:inherit}.spot-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 8px}.spot-main strong{font-size:15px}.spot-code{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.spot-pill{font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:1px 7px}.spot-sub{display:flex;gap:10px;margin-top:4px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.spot-sub .up{color:#b42318}.spot-sub .down{color:#1d4f91}.spot-reasons{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.spot-reasons em{margin:0;font-style:normal;font-size:11px;color:var(--ink);background:#24344714;border-radius:999px;padding:2px 7px}.spot-actions{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:4px 6px 4px 0}.spot-data,.spot-compare,.spot-analysis{border:0;background:transparent;color:var(--desk-amber, #8a6a2f);font-size:12px;font-weight:650;padding:2px 10px;cursor:pointer;white-space:nowrap;text-align:right}.spot-data{color:var(--ink, #243447)}.spot-analysis{color:var(--blue, #1565c0)}.spot-foot{display:flex;justify-content:space-between;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.spot-modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0f172073;display:grid;place-items:start center;padding:10vh 16px 24px}.spot-modal{width:min(720px,100%);background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 64px #0f172047;overflow:hidden}.spot-modal-head{display:flex;align-items:center;gap:10px;padding:14px 14px 8px;border-bottom:1px solid var(--line)}.spot-modal-head input{flex:1;border:0;outline:none;background:transparent;color:inherit;font-size:18px;padding:6px 2px}.spot-modal .spot-panel{max-height:min(58vh,520px);overflow:auto}.hub-stock-meta{display:inline-block;margin-left:8px!important}@media (max-width: 860px){.spot-search>input{display:none}.spot-trigger{display:flex}}.desk-hero{margin-bottom:18px}.desk-kicker{margin:0 0 6px;letter-spacing:.14em;text-transform:uppercase;font-size:11px;color:var(--desk-amber, var(--gold));font-weight:600}.desk-title{margin:0;font-family:var(--font-desk-display),var(--font-serif);font-size:clamp(1.7rem,2.4vw,2.35rem);letter-spacing:-.03em;line-height:1.15;font-weight:700}.desk-lede{margin:10px 0 0;color:var(--muted);max-width:52rem;line-height:1.55}.desk-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.desk-home-hero{position:relative;min-height:min(72vh,560px);display:grid;align-content:end;padding:36px 28px 32px;margin:-8px -4px 22px;border-radius:var(--radius);overflow:hidden;color:#f4f7fb;background:linear-gradient(120deg,#0f1720e0 12%,#2434478c 55%,#0f172059),radial-gradient(800px 420px at 85% 20%,rgba(196,163,90,.35),transparent 55%),linear-gradient(160deg,#0f1720,#243447 48%,#1a2c38)}.desk-home-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(-18deg,transparent,transparent 14px,rgba(255,255,255,.03) 15px),linear-gradient(0deg,rgba(15,23,32,.45),transparent 40%);pointer-events:none}.desk-home-hero>*{position:relative;z-index:1}.desk-home-hero .desk-title{color:#f7fafc;max-width:16ch}.desk-home-hero .desk-lede{color:#f2f6fac7}.desk-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:0 0 18px}.desk-metric{padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--card) 92%,transparent)}.desk-metric span{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.desk-metric strong{font-size:1.15rem;font-variant-numeric:tabular-nums}.desk-metric.tone-up strong{color:var(--up)}.desk-metric.tone-down strong{color:var(--down)}.desk-metric.tone-amber strong{color:var(--desk-amber, var(--gold))}.desk-grid{display:grid;gap:14px;grid-template-columns:repeat(12,1fr)}.desk-span-4{grid-column:span 4}.desk-span-5{grid-column:span 5}.desk-span-6{grid-column:span 6}.desk-span-7{grid-column:span 7}.desk-span-8{grid-column:span 8}.desk-span-12{grid-column:span 12}.desk-panel{border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--card) 96%,transparent);padding:14px 16px 16px}.desk-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.desk-panel-head h2{margin:0;font-size:.95rem;letter-spacing:-.01em}.desk-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;border-bottom:1px solid var(--line);padding-bottom:8px}.desk-tabs button{border:0;background:transparent;color:var(--muted);padding:8px 12px;border-radius:6px 6px 0 0;cursor:pointer;font-weight:600}.desk-tabs button.on{color:var(--ink);box-shadow:inset 0 -2px 0 var(--desk-amber, var(--gold))}.desk-table-wrap{overflow:auto}.desk-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:.9rem}.desk-table th,.desk-table td{padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.desk-table th{text-align:left;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:600}.desk-table tr.is-click{cursor:pointer}.desk-table tr.is-click:hover td{background:#2434470d}.rate-up{color:var(--up);font-weight:600}.rate-down{color:var(--down);font-weight:600}.rate-flat{color:var(--muted)}.desk-chart{position:relative;width:100%;min-height:200px}.desk-chart-pending{display:flex;align-items:center;min-height:168px}.desk-chart-pending .loading-progress{width:100%;margin:0}.desk-chart-empty{display:flex;align-items:center;justify-content:center;min-height:168px}.desk-chart-ready{animation:chart-fade-in .6s ease-out both}@keyframes chart-fade-in{0%{opacity:0}to{opacity:1}}.desk-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:transparent;text-decoration:none;font-size:12px;margin:2px}.desk-empty{padding:28px 16px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:var(--radius)}.desk-empty strong{display:block;color:var(--ink);margin-bottom:6px}.desk-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.desk-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.desk-list a{text-decoration:none;font-weight:600}.desk-list a:hover{color:var(--navy)}.desk-checklist{list-style:none;margin:0;padding:0;display:grid;gap:8px}.desk-checklist li{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start;padding:8px 0;border-bottom:1px solid var(--line);font-size:.92rem}.desk-checklist i{width:14px;height:14px;margin-top:3px;border:1.5px solid var(--desk-amber, var(--gold));border-radius:3px}html[data-nav-theme=desk] .nav a.on,html[data-nav-theme=desk] .nav button.has-ico.on{box-shadow:inset 0 -2px 0 var(--desk-amber, var(--gold));background:transparent}.desk-step-guide{padding:12px 14px 14px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(36,52,71,.03),transparent)}.desk-step-menu-hint{margin:0 0 10px;font-size:.88rem;line-height:1.5;color:var(--muted)}.desk-step-menu-hint strong{color:var(--ink);font-weight:700;margin-right:4px}.desk-step-guide-title{margin:0 0 8px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--desk-amber, var(--gold))}.desk-step-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.desk-step-list li{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:start;font-size:.92rem;line-height:1.45}.desk-step-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:var(--navy);color:#f6efe2;font-size:11px;font-weight:700}.desk-sheet-wrap{max-height:min(62vh,640px);overflow:auto;border:1px solid var(--line);border-radius:8px}.desk-sheet-table{font-size:12px;font-variant-numeric:tabular-nums}.desk-sheet-table th,.desk-sheet-table td{white-space:nowrap;padding:6px 10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.desk-sheet-table thead th{position:sticky;top:0;z-index:1;background:#eef2f6;font-weight:700}.desk-sheet-sort{border:0;background:transparent;font:inherit;font-weight:700;cursor:pointer;padding:0;color:inherit}.desk-sheet-sort:hover{color:var(--navy)}.sheet-stock-pick .btn-ghost.on{border-color:var(--desk-amber, var(--gold));background:#c4a35a1f}.wb-page .wb-layout{display:grid;grid-template-columns:minmax(240px,280px) 1fr;gap:14px;align-items:start}.wb-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.wb-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;border:1px solid var(--line);background:#eef2f6;font-size:12px}.wb-chip em{color:var(--muted);font-style:normal}.wb-chip button{border:0;background:transparent;cursor:pointer;font-size:14px;line-height:1}.wb-pick-list{list-style:none;margin:8px 0 0;padding:0;max-height:200px;overflow:auto}.wb-tabs{display:flex;flex-wrap:wrap;gap:4px}.wb-tab{border:1px solid var(--line);background:#fff;padding:6px 12px;border-radius:6px;font-size:13px;cursor:pointer}.wb-tab.on{border-color:var(--navy);background:#eef2f6;font-weight:600}.wb-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:center}.wb-toolbar-actions{display:flex;flex-wrap:wrap;gap:6px}.wb-formula-bar{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;padding:4px 8px;background:#fafbfc}.wb-fx{font-size:11px;font-weight:700;color:var(--muted)}.wb-formula-input{flex:1;border:0;background:transparent;font-family:ui-monospace,monospace;font-size:13px}.wb-grid-wrap{outline:none;border:1px solid var(--line);border-radius:8px;overflow:hidden}.wb-scroll{max-height:min(58vh,520px);overflow:auto;overscroll-behavior:contain}.wb-table{border-collapse:separate;border-spacing:0;font-size:14px;font-variant-numeric:tabular-nums;width:max-content;min-width:100%;table-layout:fixed}.wb-table th,.wb-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:0;height:34px;min-height:34px;box-sizing:border-box}.wb-virt-pad td{border:0!important;background:transparent}.wb-head{position:sticky;top:0;z-index:3;background:#e8edf2;font-weight:600;padding:6px 8px;-webkit-user-select:none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wb-corner,.wb-row-head{position:sticky;left:0;width:40px;min-width:40px;max-width:40px;box-sizing:border-box;padding:4px 2px;text-align:center;overflow:hidden}.wb-corner{z-index:4;background:#dde4ea}.wb-row-head{z-index:2;background:#eef2f6;font-size:12px;font-weight:600;color:var(--muted)}.wb-cell{padding:4px 8px;min-width:0;cursor:cell;background:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wb-cell.wb-num{text-align:right}.wb-cell.wb-selected{background:#24344714;box-shadow:inset 0 0 0 1px var(--navy)}.wb-cell-input{width:100%;border:0;font:inherit;background:#fff;padding:4px 6px}.wb-col-resize{position:absolute;right:0;top:0;bottom:0;width:6px;cursor:col-resize}.wb-head{position:sticky}.wb-filter-row{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:0;border-bottom:1px solid var(--line);padding:4px;background:#f4f6f8}.wb-filter-cell{flex-shrink:0;padding:2px;display:flex;flex-direction:column;gap:2px}.wb-filter-cell select,.wb-filter-cell input{font-size:13px;max-width:100%}.wb-status{font-size:11px;color:var(--muted);margin:8px 0 0}.wb-stock-menu{border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fafbfc}.wb-stock-menu h3{margin:0 0 8px;font-size:13px}.wb-stock-actions{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}.wb-stock-actions:last-child{border-bottom:0;margin-bottom:0}.wb-chart-block{margin-bottom:12px}@media (max-width: 980px){.wb-page .wb-layout{grid-template-columns:1fr}.desk-span-4,.desk-span-5,.desk-span-6,.desk-span-7,.desk-span-8{grid-column:span 12}.top-search{max-width:none;order:3;flex-basis:100%;margin:8px 0 0}.desk-home-hero{min-height:420px;margin:0 0 16px;padding:28px 18px}}.research-search{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.research-search input{flex:1 1 220px;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;font-size:15px}.research-suggest{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 10px}.research-summary{margin:0 0 8px;padding:12px 14px;border-radius:10px;background:#2434470d;border:1px solid var(--line);line-height:1.5}.research-meaning{margin:0 0 10px;padding:10px 12px;border-left:3px solid var(--desk-amber, #8a6a2f);background:#c4a35a14;color:var(--ink);line-height:1.5;font-size:.95rem}.research-body p{margin:0 0 6px;line-height:1.55}.research-sections{display:grid;gap:12px}.research-login-box{margin-bottom:12px;padding:12px 14px;border-radius:10px;border:1px solid rgba(182,72,48,.25);background:#b648300f}.research-login-box ul{margin:8px 0 0;padding-left:18px}.research-login-box li{margin-bottom:4px;line-height:1.45}.research-source-table-wrap{overflow:auto;max-width:100%}.research-source-table{font-size:.9rem}.research-source-table th,.research-source-table td{vertical-align:top;padding:8px;border-bottom:1px solid var(--line)}.research-badge{display:inline-block;font-size:11px;font-weight:700;padding:2px 7px;border-radius:999px;border:1px solid var(--line)}.research-badge.is-login{color:#8a2b1a;background:#b648301f;border-color:#b6483059}.research-badge.is-open{color:#1b5e3b;background:#2e7d321a;border-color:#2e7d324d}.research-group-title{margin:16px 0 8px;font-size:14px;font-weight:700;padding-bottom:4px;border-bottom:1px solid var(--line)}.research-group-title.is-login{color:#8a2b1a}.research-snip,.research-hint{font-size:12px;margin-top:4px;line-height:1.4;max-width:280px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.research-cell-meaning,.research-cell-access{max-width:260px;font-size:13px;line-height:1.45;white-space:normal;word-break:keep-all}.research-status{font-size:11px;background:#2434470f;padding:2px 6px;border-radius:4px}.research-collect-msg{margin:0 0 10px;color:var(--ink);font-size:.95rem}.research-files{margin-bottom:14px;padding:10px 12px;border-radius:8px;background:#2434470a;border:1px solid var(--line)}.research-files ul{margin:6px 0 0;padding-left:18px;font-size:13px}.research-files-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px 12px}.research-files-head>strong{min-width:0;flex:1 1 160px;line-height:1.35}.research-files-head-text{min-width:0;flex:1 1 200px}.research-files-head-text>strong{display:block}.research-files-head-text>p{margin:6px 0 0}.research-cols-toggle{display:inline-flex;flex-wrap:wrap;gap:4px;flex:0 0 auto;margin-left:auto}.research-cols-btn{min-width:40px;padding:4px 8px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font-size:12px;font-weight:600;line-height:1.2;cursor:pointer}.research-cols-btn:hover{border-color:var(--blue);color:var(--blue)}.research-cols-btn.is-on{border-color:var(--blue);color:var(--blue);background:#2563eb14}.research-file-list{list-style:none;padding-left:0!important;display:grid;gap:8px;grid-template-columns:minmax(0,1fr)}.research-file-list[data-cols="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.research-file-list[data-cols="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.research-file-list[data-cols="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}.research-file-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;min-width:0}.research-file-list[data-cols="2"] .research-file-row,.research-file-list[data-cols="3"] .research-file-row,.research-file-list[data-cols="4"] .research-file-row{flex-direction:column;align-items:stretch;justify-content:flex-start}.research-file-main{min-width:0;flex:1 1 220px;font-size:13px;line-height:1.4}.research-file-list[data-cols="2"] .research-file-main,.research-file-list[data-cols="3"] .research-file-main,.research-file-list[data-cols="4"] .research-file-main{flex:1 1 auto;display:flex;flex-wrap:nowrap;align-items:baseline;gap:0 4px;overflow:hidden}.research-file-title{word-break:keep-all}.research-file-list[data-cols="2"] .research-file-title,.research-file-list[data-cols="3"] .research-file-title,.research-file-list[data-cols="4"] .research-file-title{display:block;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal}.research-file-list[data-cols="2"] .research-file-main>.muted,.research-file-list[data-cols="3"] .research-file-main>.muted,.research-file-list[data-cols="4"] .research-file-main>.muted{flex:0 0 auto;white-space:nowrap}.research-file-actions{display:inline-flex;flex-wrap:wrap;gap:6px;flex:0 0 auto}.research-file-list[data-cols="2"] .research-file-actions,.research-file-list[data-cols="3"] .research-file-actions,.research-file-list[data-cols="4"] .research-file-actions{width:100%}@media (max-width: 960px){.research-file-list[data-cols="3"],.research-file-list[data-cols="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.research-file-list[data-cols="2"],.research-file-list[data-cols="3"],.research-file-list[data-cols="4"]{grid-template-columns:minmax(0,1fr)}}.research-file-btn{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:5px 10px;border:1px solid var(--line);border-radius:6px;background:#f7f8fa;color:var(--ink);font-size:12px;font-weight:600;text-decoration:none;line-height:1.2}.research-file-btn:hover{border-color:var(--blue);color:var(--blue);background:#fff}.research-file-btn.is-download{background:var(--blue);border-color:var(--blue);color:#fff}.research-file-btn.is-download:hover{filter:brightness(.95);color:#fff}.research-peer-tabs{display:grid;gap:10px}.research-tab-row{display:flex;flex-wrap:wrap;gap:6px}.research-tab-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:600;font-size:13px;cursor:pointer}.research-tab-btn em{font-style:normal;font-size:11px;padding:1px 6px;border-radius:999px;background:#24344714}.research-tab-btn.is-on{border-color:var(--blue);color:var(--blue);background:#2563eb0f}.research-tab-note{margin:0;font-size:12px}.research-peer-fill{display:block;text-decoration:none}a.research-peer-name{color:inherit;text-decoration:none}a.research-peer-name:hover{color:var(--blue);text-decoration:underline}.research-risk-item{display:grid;gap:4px;min-width:0}.research-risk-item strong{font-size:13px}.research-risk-links{display:grid;gap:6px}.research-risk-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;min-width:0}.research-risk-link-title{min-width:0;color:var(--ink);font-size:12px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.research-risk-link-row .research-file-actions{justify-self:end;flex-wrap:nowrap}.research-risk-links a:not(.research-file-btn){color:var(--blue);font-size:12px;line-height:1.35;text-decoration:underline;text-underline-offset:2px;word-break:keep-all}.research-risk-links .research-file-btn{text-decoration:none}.research-news-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:10px}.research-news-list li{display:grid;grid-template-columns:minmax(140px,200px) 1fr auto;gap:8px 12px;align-items:baseline;padding-bottom:8px;border-bottom:1px solid var(--line)}.research-news-date{font-variant-numeric:tabular-nums;font-size:13px;color:var(--muted);white-space:nowrap}.research-news-date.is-stale{color:#8a6a2f;font-weight:600}.research-news-title{font-weight:600;line-height:1.4}.research-news-src{font-size:12px;white-space:nowrap}.research-modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#141c2673;display:flex;align-items:center;justify-content:center;padding:16px}.research-modal{width:min(720px,100%);max-height:min(88vh,900px);overflow:auto;background:#fff;border-radius:12px;padding:18px 18px 16px;box-shadow:0 18px 50px #00000038}.research-modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.research-cred-grid{display:grid;gap:12px}.research-cred-row{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#24344708}.research-cred-title{display:flex;justify-content:space-between;gap:8px}.research-cred-row label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.research-cred-row input{min-height:36px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;font-size:14px}@media (max-width: 720px){.research-news-list li{grid-template-columns:1fr}.research-source-table{min-width:720px}}.research-visual{display:grid;gap:14px}.research-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.research-kpi-grid.is-2{grid-template-columns:repeat(2,minmax(0,1fr))}.research-kpi{padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;gap:4px}.research-kpi.tone-up .research-kpi-value{color:#b42318}.research-kpi.tone-down .research-kpi-value{color:#1d4f91}.research-kpi.tone-amber .research-kpi-value{color:#8a6a2f}.research-kpi-label{font-size:12px;color:var(--muted)}.research-kpi-value{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.research-kpi-hint{font-style:normal;font-size:11px;color:var(--muted)}.research-subhead{margin:0 0 8px;font-size:14px;font-weight:700}.research-chart-block{padding:8px;border:1px solid var(--line);border-radius:10px;background:#fafbfc}.research-split{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;align-items:start}.research-mini-table{width:100%;font-size:.92rem}.research-mini-table th{width:18%;background:#2434470a;font-weight:600;color:var(--muted);white-space:nowrap}.research-mini-table td.tone-up,.research-peer-fill.is-up,.is-up{color:#b42318}.research-mini-table td.tone-down,.research-peer-fill.is-down,.is-down{color:#1d4f91}.research-meter{display:grid;gap:6px;margin-bottom:12px}.research-meter-head{display:flex;justify-content:space-between;font-size:13px}.research-meter-track{position:relative;height:12px;border-radius:999px;background:linear-gradient(90deg,#1d4f9140,#24344714,#b4231840);overflow:hidden}.research-meter-fill{display:block;height:100%;border-radius:999px;background:#243447;opacity:.85}.research-meter-mark{position:absolute;top:0;bottom:0;width:2px;background:#00000059;transform:translate(-1px)}.research-meter-legend{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.research-verdict{margin:8px 0 0;padding:10px 12px;border-radius:8px;background:#c4a35a1f;border:1px solid rgba(196,163,90,.35);line-height:1.45}.research-profile-grid{display:grid;gap:10px}.research-profile-main h4{margin:0 0 4px;font-size:1.2rem}.research-overview-text{margin:8px 0 0;line-height:1.55}.research-chip-wrap{display:flex;flex-wrap:wrap;gap:6px}.research-chip{display:inline-flex;padding:4px 10px;border-radius:999px;border:1px solid var(--line);font-size:12px;background:#fff}.research-chip.is-theme{background:#2434470f}.research-step-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.research-step-card{padding:12px 10px;border-radius:10px;border:1px solid var(--line);background:#fff;display:grid;gap:4px;min-height:110px}.research-step-card em{font-style:normal;font-size:11px;font-weight:700;color:var(--desk-amber, #8a6a2f)}.research-step-card strong{font-size:14px}.research-step-card span{font-size:12px;color:var(--muted);line-height:1.4}.research-check-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.research-check-grid li{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:.95rem;line-height:1.4}.research-check-grid.is-risk li{border-color:#b6483038;background:#b648300a}.research-check-box{flex:0 0 16px;width:16px;height:16px;margin-top:2px;border:1.5px solid var(--muted);border-radius:4px;background:#fff}.research-peer-bars{display:grid;gap:8px}.research-peer-bar-row{display:grid;grid-template-columns:100px 1fr 64px;gap:8px;align-items:center}.research-peer-name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.research-peer-track{height:10px;border-radius:999px;background:#24344714;overflow:hidden}.research-peer-fill{display:block;height:100%;border-radius:999px;background:#5a6b7a}.research-peer-fill.is-up{background:#c45c4a}.research-peer-fill.is-down{background:#3d6b8c}.research-source-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.research-source-chips li a{display:inline-flex;padding:6px 10px;border-radius:8px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--ink);font-size:13px}.research-source-chips.is-login li a{border-color:#b6483059;background:#b648300f}.research-remarks{margin:0 0 12px;padding:10px 12px;border-radius:8px;border:1px dashed rgba(36,52,71,.25);background:#24344708}.research-remarks>summary{cursor:pointer;list-style:none;font-size:13px;font-weight:700;color:var(--ink);-webkit-user-select:none;user-select:none}.research-remarks>summary::-webkit-details-marker{display:none}.research-remarks>summary:before{content:"▸";display:inline-block;margin-right:6px;color:var(--muted);transition:transform .15s ease}.research-remarks[open]>summary{margin-bottom:6px}.research-remarks[open]>summary:before{transform:rotate(90deg)}.research-remarks ul{margin:0;padding-left:18px;font-size:13px;line-height:1.45;color:var(--ink)}.research-remarks li{margin-bottom:4px}.research-c38-banner{padding:12px 14px;border-radius:10px;border:1px solid rgba(182,72,48,.28);background:#b648300f}.research-c38-banner.is-on{border-color:#2e7d3259;background:#2e7d3214}.research-c38-banner p{margin:6px 0;line-height:1.45;font-size:.95rem}.research-c38-hits{list-style:none;margin:8px 0;padding:0;display:grid;gap:4px}.research-c38-hits li{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-size:.9rem;line-height:1.35}.research-c38-hits a{color:inherit;text-decoration:underline;text-underline-offset:2px}.research-c38-hits em{font-style:normal;font-size:11px;font-weight:700;color:#1b5e3b;white-space:nowrap}.research-cred-hint{margin:0 0 6px;font-size:.85rem;line-height:1.35}.research-chip-tag{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-style:normal;font-size:10px;font-weight:700;background:#2e7d321f;color:#1b5e3b}.research-chip-tag.is-cred{background:#1565c01f;color:#1565c0}.research-job{margin:4px 0 12px;padding:14px 16px;border-radius:12px;border:1px solid rgba(21,101,192,.18);background:#1565c00d;animation:loading-fade-in .45s ease-out both}.research-job-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.research-job-title{font-size:1rem}.research-job-current{margin:6px 0 0;font-size:.98rem;font-weight:600;color:var(--ink);line-height:1.45}.research-job-pct{font-size:1.2rem;font-variant-numeric:tabular-nums;color:var(--blue, #1565c0)}.research-job-bar{margin-top:10px;height:8px;border-radius:999px;background:#e3ebf5;overflow:hidden}.research-job-bar>span{display:block;height:100%;width:var(--p, 0%);background:var(--blue, #1565c0);transition:width .35s ease}.research-job-log{list-style:none;margin:12px 0 0;padding:0;max-height:220px;overflow:auto;display:grid;gap:6px}.research-job-log li{display:grid;grid-template-columns:72px 1fr;gap:8px;font-size:13px;line-height:1.4;padding-bottom:6px;border-bottom:1px solid rgba(36,52,71,.08)}.research-job-log time{color:var(--muted);font-variant-numeric:tabular-nums}@media (max-width: 980px){.research-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.research-split,.research-step-grid,.research-check-grid{grid-template-columns:1fr}.research-peer-bar-row{grid-template-columns:80px 1fr 56px}}
