:root{--coral: #f16c6c;--coral-strong: #ff4949;--blue: #91afdb;--blue-soft: #a9d7f6;--navy: #0b4876;--ink: #0f1416;--ink-2: #1e262b;--graphite: #4a5560;--slate: #7b8691;--mist: #c8cfd6;--bone: #f5f2ec;--paper: #fbf9f5;--hair: rgba(11, 72, 118, .1);--hair-strong: rgba(11, 72, 118, .18);--serif: "Source Serif 4", Georgia, serif;--sans: "Geist", -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box;-webkit-font-smoothing:antialiased}html,body{margin:0;padding:0;font-family:var(--sans);color:var(--ink)}body{background:var(--paper);min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:var(--paper);font-family:var(--sans);color:var(--ink)}.sb{background:#fff;border-right:1px solid var(--hair);padding:22px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto}.sb .brand{display:flex;align-items:center;gap:10px;padding:6px 10px 22px}.sb .brand .word{font-family:var(--serif);font-style:italic;font-weight:400;font-size:24px;color:var(--ink);letter-spacing:.02em}.sb .brand .tag{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--coral);font-weight:600;margin-top:2px}.sb .nav-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--slate);font-weight:600;padding:16px 12px 6px}.sb .nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;font-size:13.5px;color:var(--graphite);font-weight:500;cursor:pointer;border-left:2px solid transparent;margin-left:-2px;text-decoration:none;transition:background .1s}.sb .nav-item:hover{background:var(--bone)}.sb .nav-item.active{background:#f16c6c14;color:var(--navy);border-left-color:var(--coral);font-weight:600}.sb .nav-item .ct{margin-left:auto;font-size:11px;background:var(--bone);padding:1px 7px;border-radius:999px;color:var(--graphite);font-weight:500}.sb .nav-item.active .ct{background:#0b48761a;color:var(--navy)}.sb .nav-item.disabled{opacity:.4;cursor:default;pointer-events:none}.sb .footer{margin-top:auto;padding:14px 10px;border-top:1px solid var(--hair);display:flex;align-items:center;gap:10px}.sb .footer .av{width:30px;height:30px;border-radius:50%;background:var(--bone);border:1px solid var(--hair);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-style:italic;font-size:12px;color:var(--navy);font-weight:500;flex-shrink:0}.sb .footer .who{font-size:12px;color:var(--ink);font-weight:500}.sb .footer .who span{color:var(--slate);font-size:11px;display:block}.main{display:flex;flex-direction:column;min-width:0;min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;border-bottom:1px solid var(--hair);background:var(--paper);position:sticky;top:0;z-index:5}.topbar .crumb{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);font-weight:600;margin-bottom:2px}.topbar .pt{font-family:var(--serif);font-size:26px;font-weight:400;letter-spacing:-.01em;line-height:1;margin:0}.topbar .pt em{font-style:italic;color:var(--navy)}.topbar .right{display:flex;align-items:center;gap:14px}.topbar .search{background:#fff;border:1px solid var(--hair-strong);border-radius:999px;padding:7px 14px;font-size:12.5px;color:var(--slate);display:flex;align-items:center;gap:8px;min-width:220px;cursor:text}.topbar .search span{color:var(--slate)}.content{padding:28px 32px;flex:1;overflow:auto;min-width:0}.row-between{display:flex;align-items:center;justify-content:space-between;gap:16px}.muted{color:var(--slate)}.serif-label{font-family:var(--serif);font-style:italic;font-size:17px;font-weight:400;color:var(--ink)}.serif-label:before{content:"";display:inline-block;width:14px;height:1px;background:var(--coral);vertical-align:middle;margin-right:10px;transform:translateY(-4px)}.card{background:#fff;border-radius:18px;border:1px solid var(--hair);padding:22px}.card+.card{margin-top:16px}.card-tight{padding:0}.pill{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 16px;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;border:1px solid var(--hair-strong);background:#fff;color:var(--ink);font-family:var(--sans);transition:background .1s}.pill.coral{background:var(--coral);color:#fff;border-color:var(--coral)}.pill.coral:hover{background:var(--coral-strong)}.pill.navy{background:var(--navy);color:#fff;border-color:var(--navy)}.pill.navy:hover{background:#0a3d65}.pill.ghost{background:transparent}.pill.ghost:hover{background:var(--bone)}.pill.sm{height:28px;padding:0 12px;font-size:11.5px;font-weight:500}.pill:disabled{opacity:.5;cursor:not-allowed}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.chip-coral{background:#f16c6c1f;color:var(--coral-strong)}.chip-blue{background:#a9d7f659;color:var(--navy)}.chip-navy{background:#0b487614;color:var(--navy)}.chip-quiet{background:var(--bone);color:var(--graphite)}.chip-soft{background:#91afdb33;color:var(--navy)}.chip-ok{background:#40a0641f;color:#2d6a47}.chip-warn{background:#f16c6c1f;color:var(--coral-strong)}.chip-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.segmented{display:inline-flex;background:var(--bone);border-radius:10px;padding:3px;gap:2px}.segmented .seg{padding:7px 14px;font-size:12.5px;font-weight:500;color:var(--graphite);border-radius:8px;cursor:pointer;border:none;background:transparent;font-family:var(--sans);transition:background .1s}.segmented .seg.active{background:#fff;color:var(--ink);box-shadow:0 1px 3px #0000000d}.segmented .seg:hover:not(.active){background:#ffffff80}.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl thead th{text-align:left;padding:12px 18px;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);font-weight:600;border-bottom:1px solid var(--hair);background:#f5f2ec66;font-family:var(--sans)}.tbl tbody td{padding:14px 18px;border-bottom:1px solid var(--hair);vertical-align:middle;color:var(--ink)}.tbl tbody tr:hover td{background:#f5f2ec66}.tbl tbody tr:last-child td{border-bottom:none}.tbl .actions{display:flex;gap:6px;justify-content:flex-end}.icon-btn{width:28px;height:28px;border-radius:7px;border:1px solid var(--hair);background:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--graphite);transition:background .1s}.icon-btn:hover{background:var(--bone);border-color:var(--hair-strong)}.icon-btn.danger:hover{background:#f16c6c14;color:var(--coral-strong);border-color:var(--coral)}.cb{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--mist);background:#fff;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .1s,border-color .1s}.cb.on{background:var(--navy);border-color:var(--navy)}.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.metric{background:#fff;border:1px solid var(--hair);border-radius:14px;padding:14px 16px}.metric .ml{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);font-weight:600}.metric .mv{font-family:var(--serif);font-size:28px;font-weight:400;letter-spacing:-.015em;color:var(--ink);line-height:1;margin-top:6px;font-feature-settings:"lnum"}.metric .mv em{font-style:italic;color:var(--coral)}.metric .md{font-size:11px;color:var(--navy);font-weight:600;margin-top:4px}.kb-row{display:flex;align-items:flex-start;gap:16px;padding:18px 22px;border-bottom:1px solid var(--hair);transition:background .1s}.kb-row:last-child{border-bottom:none}.kb-row:hover{background:#f5f2ec66}.kb-row .doc-ico{width:38px;height:38px;border-radius:10px;background:#91afdb33;color:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kb-row .body{flex:1;min-width:0}.kb-row .body .t{font-family:var(--serif);font-size:16px;font-weight:400;color:var(--ink);margin-bottom:4px}.kb-row .body .meta{display:flex;align-items:center;gap:10px;font-size:11.5px;color:var(--slate);flex-wrap:wrap}.kb-row .body .preview{margin-top:8px;font-size:12.5px;color:var(--graphite);line-height:1.5;max-width:700px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.login-stage{background:var(--paper);display:flex;align-items:center;justify-content:center;min-height:100vh;position:relative;overflow:hidden}.login-stage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(700px 400px at 20% 30%,rgba(241,108,108,.08) 0%,transparent 60%),radial-gradient(600px 500px at 80% 70%,rgba(145,175,219,.18) 0%,transparent 55%);pointer-events:none}.login-card{background:#fff;border:1px solid var(--hair-strong);border-radius:22px;padding:44px 40px 36px;width:380px;position:relative;box-shadow:0 20px 60px #0b487614;text-align:center}.login-card .lk-mark{width:64px;height:64px;border-radius:18px;border:1px solid var(--hair);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;padding:10px}.login-card .lk-eye{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--coral);font-weight:600;margin-bottom:6px}.login-card h2{font-family:var(--serif);font-style:italic;font-weight:400;font-size:26px;margin:0 0 8px;color:var(--ink)}.login-card .sub{font-size:13px;color:var(--graphite);margin-bottom:24px;line-height:1.5}.login-card label{display:block;text-align:left;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);font-weight:600;margin-bottom:6px}.login-card input{width:100%;height:42px;padding:0 14px;border:1px solid var(--hair-strong);border-radius:10px;font-family:var(--sans);font-size:14px;color:var(--ink);background:var(--paper);outline:none;margin-bottom:18px}.login-card input:focus{border-color:var(--navy);background:#fff}.login-card .pill{width:100%;height:44px;justify-content:center}.login-card .ftr{margin-top:18px;font-size:11px;color:var(--slate)}.login-card .error-msg{font-size:12.5px;color:var(--coral-strong);margin-bottom:12px;margin-top:-8px}.acct-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.user-hero{background:linear-gradient(145deg,#0b4876,#123d63);color:#fff;border-radius:18px;padding:24px;position:relative;overflow:hidden}.user-hero:before{content:"";position:absolute;right:-40px;top:-40px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(241,108,108,.18) 0%,transparent 70%);pointer-events:none}.user-hero .hr{display:flex;align-items:center;gap:18px;position:relative;z-index:2}.user-hero .ahero{width:64px;height:64px;border-radius:50%;background:linear-gradient(145deg,var(--blue-soft),var(--blue));color:var(--navy);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-style:italic;font-size:24px;font-weight:500;border:2px solid rgba(255,255,255,.3);flex-shrink:0}.user-hero h3{font-family:var(--serif);font-size:24px;font-weight:400;margin:0}.user-hero h3 em{font-style:italic;color:var(--blue-soft)}.user-hero .sub2{font-size:12.5px;color:#ffffffb3;margin-top:4px}.status-line{display:flex;align-items:center;gap:10px;padding:14px 0;border-top:1px solid var(--hair)}.status-line:first-child{border-top:none}.status-line .val{font-size:12.5px;color:var(--graphite)}.led{width:8px;height:8px;border-radius:50%}.led.on{background:#40a064;box-shadow:0 0 0 3px #40a0642e}.led.off{background:var(--coral-strong);box-shadow:0 0 0 3px #f16c6c2e}.editor-card{background:#fff;border-radius:18px;border:1px solid var(--hair);overflow:hidden}.editor-card .ec-head{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--hair)}.editor-card .ec-head .ec-title{font-family:var(--serif);font-style:italic;font-weight:400;font-size:18px;color:var(--ink)}.editor-card .ec-body{padding:0}.editor-card .row-input{display:grid;grid-template-columns:160px 1fr;gap:16px;padding:14px 22px;border-bottom:1px solid var(--hair);align-items:center}.editor-card .row-input label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);font-weight:600}.editor-card .row-input input,.editor-card .row-input select{width:100%;height:36px;border:1px solid var(--hair);border-radius:8px;padding:0 12px;font-family:var(--sans);font-size:13px;background:var(--paper);color:var(--ink);outline:none}.editor-card .row-input input:focus,.editor-card .row-input select:focus{border-color:var(--navy);background:#fff}.editor-card .ta-wrap{padding:16px 22px 22px}.editor-card textarea{width:100%;min-height:180px;border:1px solid var(--hair);border-radius:10px;background:var(--paper);padding:12px 14px;font-family:var(--mono);font-size:12.5px;color:var(--ink-2);line-height:1.6;resize:vertical;outline:none}.editor-card textarea:focus{border-color:var(--navy);background:#fff}.editor-card .ec-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--hair);background:#f5f2ec66}.task-card{display:grid;grid-template-columns:28px 1fr auto auto auto;gap:16px;align-items:center;padding:16px 22px;border-bottom:1px solid var(--hair);transition:background .1s}.task-card:last-child{border-bottom:none}.task-card:hover{background:#f5f2ec66}.task-card .tt{font-size:13.5px;color:var(--ink);font-weight:500;line-height:1.4}.task-card .tt-sub{font-size:11.5px;color:var(--slate);margin-top:2px}.task-card.done .tt{text-decoration:line-through;color:var(--slate)}.pillar-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}.pillar-pills .pp{padding:7px 14px;border-radius:999px;background:var(--bone);color:var(--graphite);font-size:12px;font-weight:500;cursor:pointer;border:1px solid transparent;font-family:var(--sans);transition:background .1s}.pillar-pills .pp.active{background:#fff;color:var(--navy);border-color:var(--navy)}.pillar-pills .pp:hover:not(.active){background:#fff}.topic-name{display:flex;align-items:flex-start;gap:10px;flex-direction:column}.topic-name .pillar-tag{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);font-weight:600;display:block;margin-bottom:2px}.topic-name .tn{font-size:13.5px;color:var(--ink);font-weight:500;line-height:1.35}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f141673;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-card{background:#fff;border-radius:18px;padding:28px;max-width:480px;width:100%;box-shadow:0 24px 80px #0b487624;border:1px solid var(--hair);position:relative}.modal-card h3{font-family:var(--serif);font-style:italic;font-weight:400;font-size:22px;margin:0 0 20px;color:var(--ink)}.modal-card .form-field{margin-bottom:14px}.modal-card .form-field label{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);font-weight:600;margin-bottom:6px}.modal-card .form-field input,.modal-card .form-field select,.modal-card .form-field textarea{width:100%;padding:0 12px;height:40px;border:1px solid var(--hair-strong);border-radius:10px;font-family:var(--sans);font-size:13px;color:var(--ink);background:var(--paper);outline:none}.modal-card .form-field input:focus,.modal-card .form-field select:focus,.modal-card .form-field textarea:focus{border-color:var(--navy);background:#fff}.modal-card .form-field textarea{height:auto;min-height:80px;padding:10px 12px;resize:vertical}.modal-card .form-field .checkbox-row{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--graphite);cursor:pointer}.modal-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.toggle-wrap{display:flex;align-items:center;gap:10px}.toggle{width:38px;height:22px;border-radius:999px;background:var(--mist);position:relative;cursor:pointer;transition:background .2s;flex-shrink:0;border:none;padding:0}.toggle.on{background:var(--navy)}.toggle .knob{position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:2px;left:2px;transition:left .2s;box-shadow:0 1px 3px #00000026}.toggle.on .knob{left:18px}.toggle-label{font-size:12.5px;color:var(--graphite)}.callout{background:linear-gradient(145deg,#f16c6c0a,#fff 60%);border-left:3px solid var(--coral);border-radius:14px;border:1px solid var(--hair);border-left-width:3px;padding:22px;margin-bottom:24px;display:flex;gap:16px;align-items:flex-start}.callout .callout-icon{flex-shrink:0;width:36px;height:36px;border-radius:10px;background:#f16c6c1f;color:var(--coral-strong);display:flex;align-items:center;justify-content:center}.callout p{font-size:13px;color:var(--graphite);margin:8px 0 0;line-height:1.6;max-width:780px}
