:root{--navy:#0A3470;--navy-deep:#0A2A5A;--navy-top:#0C3468;--blue:#0E5ED6;--blue-tint:#EAF3FF;--blue-tint-2:#DCEAFD;--yellow:#F5B800;--yellow-deep:#D99E00;--ink:#102A43;--ink-2:#324A63;--ink-soft:#62748A;--ink-faint:#8A9BB0;--line:#DDE7F3;--line-2:#CDDCEE;--canvas:#F7FBFF;--surface:#FFFFFF;--surface-2:#F4F9FF;--ok:#15A46B;--ok-tint:#E2F5EC;--danger:#DC2626;--danger-tint:#FDE7E7;--radius:14px;--shadow:0 1px 2px rgba(10,52,112,.05), 0 10px 30px rgba(10,52,112,.07);--shadow-lg:0 24px 70px rgba(10,35,80,.3);--font:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--canvas);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-weight:800;letter-spacing:-.02em;color:var(--navy);text-wrap:balance}button{font-family:inherit}.num{font-variant-numeric:tabular-nums}::selection{background:var(--blue-tint-2)}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.screen{display:flex;min-height:100vh;animation:fade .3s ease}@keyframes fade{0%{opacity:0}to{opacity:1}}.auth{width:100%;display:grid;grid-template-columns:1fr 1fr;min-height:100vh}@media (max-width:880px){.auth{grid-template-columns:1fr}.auth-brand{display:none}}.auth-brand{position:relative;overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:48px 52px;background:linear-gradient(160deg,var(--navy-top) 0%,var(--navy) 48%,var(--navy-deep) 100%)}.auth-brand:before{content:"";position:absolute;width:720px;height:720px;border-radius:50%;right:-280px;bottom:-280px;border:1.5px solid rgba(255,255,255,.07)}.auth-brand:after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;right:-150px;bottom:-150px;border:1.5px solid rgba(255,255,255,.1)}.brand-lockup{display:flex;align-items:center;gap:13px}.brand-mark{width:44px;height:44px;border-radius:11px;background:#fff;display:grid;place-items:center;box-shadow:0 6px 20px #00000040}.brand-mark svg{width:30px;height:30px}.brand-mark img{width:74%;height:74%;object-fit:contain;display:block}.brand-word{font-size:27px;font-weight:900;letter-spacing:-.04em;line-height:1}.brand-word span{color:var(--yellow)}.auth-hero{position:relative;z-index:1;max-width:400px}.auth-hero .snapbig{width:96px;height:auto;opacity:.95;margin-bottom:26px;display:block}.auth-hero h2{color:#fff;font-size:29px;line-height:1.18;letter-spacing:-.03em;margin-bottom:14px}.auth-hero h2 em{font-style:normal;color:var(--yellow)}.auth-hero p{color:#ffffffa6;font-size:14.5px;max-width:340px;margin:0}.auth-tag{position:relative;z-index:1;display:flex;align-items:center;gap:10px;font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#ffffff8c}.auth-tag i{width:3px;height:14px;border-radius:2px;background:var(--yellow);font-style:normal}.auth-form{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px 28px;background:var(--canvas)}.form-card{width:100%;max-width:380px}.form-card .mobile-logo{display:none;margin-bottom:28px}@media (max-width:880px){.form-card .mobile-logo{display:flex;align-items:center;gap:10px}.form-card .mobile-logo .brand-mark{width:36px;height:36px}.form-card .mobile-logo .brand-word{font-size:22px;color:var(--navy)}}.form-card h1{font-size:24px;letter-spacing:-.03em;margin-bottom:6px}.form-sub{color:var(--ink-soft);font-size:13.5px;margin:0 0 28px}.field{margin-bottom:16px}.field label{display:block;font-size:12.5px;font-weight:700;color:var(--ink-2);margin-bottom:6px}.inp-wrap{position:relative}.inp-wrap>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--ink-faint);pointer-events:none}.inp-wrap .inp{padding-left:38px}.inp{width:100%;border:1px solid var(--line-2);border-radius:11px;padding:11px 12px;font-family:inherit;font-size:14px;color:var(--ink);background:var(--surface);outline:0;transition:border-color .16s,box-shadow .16s}.inp:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-tint)}.inp.err{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-tint)}.eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;cursor:pointer;width:30px;height:30px;display:grid;place-items:center;color:var(--ink-faint);border-radius:8px}.eye:hover{color:var(--ink-2);background:var(--surface-2)}.eye svg{width:16px;height:16px}.form-row{display:flex;align-items:center;justify-content:space-between;margin:4px 0 22px}.lnk{font-size:13px;font-weight:700;color:var(--blue);background:none;border:0;cursor:pointer;padding:0}.lnk:hover{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:11px;font-size:14px;font-weight:800;padding:12px 18px;cursor:pointer;border:1px solid transparent;transition:transform .06s ease,background .16s,box-shadow .16s,border-color .16s,color .16s}.btn-block{width:100%}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--yellow);color:var(--navy);box-shadow:0 10px 26px #f5b8004d}.btn-primary:hover{background:var(--yellow-deep)}.btn-primary:disabled{opacity:.7;cursor:progress}.btn-ghost{background:var(--surface);border-color:var(--line-2);color:var(--navy)}.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}.spinner{width:16px;height:16px;border-radius:50%;border:2.5px solid rgba(10,52,112,.25);border-top-color:var(--navy);animation:spin .7s linear infinite;display:none}.btn.loading .spinner{display:inline-block}.btn.loading .btn-label{opacity:.75}@keyframes spin{to{transform:rotate(360deg)}}.form-alert{display:none;align-items:flex-start;gap:9px;background:var(--danger-tint);color:var(--danger);border-radius:10px;padding:10px 13px;font-size:12.5px;font-weight:600;margin-bottom:16px}.form-alert.on{display:flex;animation:fade .2s ease}.form-alert svg{width:15px;height:15px;flex:0 0 auto;margin-top:2px}.form-foot{margin-top:34px;text-align:center;font-size:12px;color:var(--ink-faint)}.back{display:inline-flex;align-items:center;gap:7px;margin-bottom:20px}.back svg{width:15px;height:15px}.sent{display:none;text-align:center;padding:10px 0}.sent.on{display:block;animation:fade .25s ease}.sent-ic{width:52px;height:52px;border-radius:50%;background:var(--ok-tint);color:var(--ok);display:grid;place-items:center;margin:0 auto 16px}.sent-ic svg{width:24px;height:24px}.shell{width:100%;display:grid;grid-template-columns:250px 1fr;min-height:100vh}.side{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow:hidden;color:#fff;background:linear-gradient(185deg,var(--navy-top) 0%,var(--navy) 45%,var(--navy-deep) 100%)}.side .brand-lockup{padding:20px 18px 14px}.side .brand-mark{width:32px;height:32px;border-radius:9px}.side .brand-mark svg{width:22px;height:22px}.side .brand-mark img{width:72%;height:72%}.side .brand-word{font-size:20px}.nav{flex:1;overflow-y:auto;padding:8px 12px 18px;display:flex;flex-direction:column}.nav-group{margin-top:16px}.nav-group--bottom{margin-top:auto}.nav-label{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#ffffff6b;padding:6px 12px 5px}.nav-item{display:flex;align-items:center;gap:11px;width:100%;border:0;background:transparent;text-align:left;color:#ffffffbd;padding:9px 12px;border-radius:10px;font-size:13.5px;font-weight:600;position:relative;transition:background .16s,color .16s;cursor:pointer}.nav-item svg{width:18px;height:18px;flex:0 0 auto;color:#fff9}.nav-item.active{background:#ffffff1c;color:#fff;font-weight:700}.nav-item.active svg{color:var(--yellow)}.nav-item.active:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--yellow)}.nav-item.soon{opacity:.42;cursor:default}.soon-pill{margin-left:auto;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#ffffffbf;border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:1px 7px}.side-foot{border-top:1px solid rgba(255,255,255,.12);padding:12px}.tenant{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px}.tenant-logo{width:32px;height:32px;border-radius:8px;background:var(--yellow);color:var(--navy);display:grid;place-items:center;font-weight:900;font-size:13px}.tenant-name{font-size:13px;font-weight:700;line-height:1.2}.tenant-plan{font-size:11px;color:#ffffff8c}.main{display:flex;flex-direction:column;min-width:0}.top{position:sticky;top:0;z-index:20;background:#f7fbffd9;-webkit-backdrop-filter:saturate(1.4) blur(8px);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:12px 28px}.crumb{font-size:12.5px;color:var(--ink-faint)}.crumb b{color:var(--ink-2);font-weight:700}.top-title{font-size:16px;font-weight:800;letter-spacing:-.02em;color:var(--navy)}.search{margin-left:auto;display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line-2);border-radius:11px;padding:8px 12px;width:290px;color:var(--ink-faint)}.search input{border:0;outline:0;background:transparent;font-family:inherit;font-size:13px;color:var(--ink);width:100%}.search svg{width:16px;height:16px}.icon-btn{width:38px;height:38px;border-radius:11px;border:1px solid var(--line-2);background:var(--surface);display:grid;place-items:center;color:var(--ink-2);cursor:pointer;position:relative;transition:border-color .16s}.icon-btn:hover{border-color:var(--blue)}.icon-btn svg{width:18px;height:18px}.avatar-wrap{position:relative}.avatar{width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;cursor:pointer;border:2px solid transparent;transition:border-color .16s}.avatar:hover{border-color:var(--yellow)}.menu{position:absolute;right:0;top:46px;width:210px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;display:none;z-index:30}.menu.open{display:block;animation:fade .16s ease}.menu-head{padding:10px 12px 8px;border-bottom:1px solid var(--line);margin-bottom:6px}.menu-head b{display:block;font-size:13px;color:var(--navy)}.menu-head span{font-size:11.5px;color:var(--ink-faint)}.menu-item{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;text-align:left;cursor:pointer;padding:9px 12px;border-radius:8px;font-size:13px;font-weight:600;color:var(--ink-2);transition:background .14s}.menu-item:hover{background:var(--surface-2)}.menu-item.danger{color:var(--danger)}.menu-item.danger:hover{background:var(--danger-tint)}.menu-item svg{width:15px;height:15px}.menu-item[disabled]{opacity:.45;cursor:default}.menu-item[disabled]:hover{background:transparent}.content{padding:32px 28px;max-width:1080px;width:100%}.welcome{margin-bottom:24px}.welcome h1{font-size:23px;letter-spacing:-.03em}.welcome p{margin:5px 0 0;color:var(--ink-soft);font-size:13.5px}.empty{background:var(--surface);border:1px dashed var(--line-2);border-radius:var(--radius);padding:56px 32px;text-align:center;margin-bottom:20px}.empty-ic{width:60px;height:60px;border-radius:16px;background:var(--blue-tint);color:var(--blue);display:grid;place-items:center;margin:0 auto 18px}.empty-ic svg{width:28px;height:28px}.empty h3{font-size:16.5px;margin-bottom:8px}.empty p{color:var(--ink-soft);font-size:13.5px;max-width:420px;margin:0 auto}.next{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.next-head{padding:15px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.next-head h3{font-size:14.5px}.next-item{display:flex;align-items:center;gap:13px;padding:14px 18px;border-bottom:1px solid var(--line);font-size:13.5px}.next-item:last-child{border-bottom:0}.next-num{width:26px;height:26px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-soft);display:grid;place-items:center;font-size:12px;font-weight:800;flex:0 0 auto}.next-item b{color:var(--navy)}.next-item span{color:var(--ink-soft)}.phase-pill{margin-left:auto;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;border-radius:20px;padding:2px 9px;background:var(--surface-2);color:var(--ink-faint);border:1px solid var(--line)}.phase-pill.now{background:var(--yellow);color:var(--navy);border-color:transparent}.content{padding:28px;max-width:1120px;width:100%}.page-head{display:flex;align-items:flex-end;gap:16px;margin-bottom:20px;flex-wrap:wrap}.page-head h1{font-size:23px;letter-spacing:-.03em}.page-head p{margin:5px 0 0;color:var(--ink-soft);font-size:13.5px}.head-actions{margin-left:auto;display:flex;gap:10px}.btn-danger{background:var(--danger-tint);color:var(--danger)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:20px}.tab{border:0;background:transparent;padding:12px 16px;font-size:13.5px;font-weight:700;color:var(--ink-soft);cursor:pointer;position:relative}.tab:hover,.tab.active{color:var(--navy)}.tab.active:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2.5px;border-radius:3px;background:var(--blue)}.tab .cnt{font-size:11px;color:var(--ink-faint);margin-left:6px}.tabpane{display:none;animation:fade .24s ease}.tabpane.show{display:block}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card-head{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}.card-head h3{font-size:14.5px}.card-head .sub{font-size:12px;color:var(--ink-faint)}.card-head .right{margin-left:auto;display:flex;gap:8px;align-items:center}.filter{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line-2);border-radius:9px;padding:6px 10px;font-size:12.5px;color:var(--ink-2)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-weight:800;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);padding:11px 18px;background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap}td{padding:12px 18px;border-bottom:1px solid var(--line);color:var(--ink-2);vertical-align:middle}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td{border-bottom:0}.t-strong{color:var(--navy);font-weight:700}.t-mono{font-variant-numeric:tabular-nums;color:var(--ink-soft)}.u-cell{display:flex;align-items:center;gap:10px}.u-av{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff;flex:0 0 auto}.u-mail{font-size:12px;color:var(--ink-faint)}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:20px;white-space:nowrap}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill.ok{background:var(--ok-tint);color:var(--ok)}.pill.warn{background:var(--warn-tint);color:var(--warn)}.pill.muted{background:var(--surface-2);color:var(--ink-soft);border:1px solid var(--line)}.pill.danger{background:var(--danger-tint);color:var(--danger)}.tag{display:inline-flex;font-size:11px;font-weight:700;padding:2px 8px;border-radius:6px;background:var(--blue-tint);color:var(--blue)}.tag.sys{background:var(--yellow-tint);color:#7a5c00}.row-x{color:var(--ink-faint);cursor:pointer;display:grid;place-items:center;width:28px;height:28px;border-radius:8px;border:1px solid transparent;background:transparent}.row-x:hover{background:var(--blue-tint);color:var(--blue)}.row-x svg{width:15px;height:15px}.radio-card{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line-2);border-radius:10px;padding:11px 13px;cursor:pointer;margin-bottom:8px}.radio-card input{accent-color:var(--blue);margin-top:2px}.radio-card.on{border-color:var(--blue);background:var(--blue-tint)}.radio-card b{display:block;font-size:13px;color:var(--navy)}.radio-card span{font-size:12px;color:var(--ink-soft)}.chk{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none}.chk input{accent-color:var(--blue);width:15px;height:15px}.danger-zone{border:1px solid var(--danger-tint);border-radius:10px;padding:14px;margin-top:22px}.danger-zone h4{margin:0 0 4px;font-size:13px;color:var(--danger)}.danger-zone p{margin:0 0 10px;font-size:12px;color:var(--ink-soft)}.perm-group{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:12px}.perm-group-head{background:var(--surface-2);padding:9px 13px;font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid var(--line)}.perm-row{display:flex;align-items:center;gap:10px;padding:10px 13px;border-bottom:1px solid var(--line);font-size:13px}.perm-row:last-child{border-bottom:0}.perm-row b{color:var(--navy);font-weight:600}.perm-row .desc{font-size:11.5px;color:var(--ink-faint)}.perm-row input{margin-left:auto;accent-color:var(--blue);width:16px;height:16px}.note{display:flex;gap:10px;align-items:flex-start;background:var(--blue-tint);border:1px solid var(--blue-tint-2);border-radius:10px;padding:11px 14px;color:var(--navy);font-size:12.5px;margin-bottom:16px}.note svg{width:16px;height:16px;flex:0 0 auto;margin-top:1px;color:var(--blue)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;display:none;place-items:center;z-index:60}.modal.open{display:grid}.modal-card{width:420px;max-width:92vw;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-lg);padding:26px;text-align:center;animation:fade .2s ease}.modal-ic{width:52px;height:52px;border-radius:50%;background:var(--ok-tint);color:var(--ok);display:grid;place-items:center;margin:0 auto 14px}.modal-ic svg{width:24px;height:24px}.pw-box{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px dashed var(--line-2);border-radius:10px;padding:12px 14px;margin:16px 0;justify-content:center}.pw-box code{font-size:16px;font-weight:800;letter-spacing:.06em;color:var(--navy)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(80px);background:var(--navy);color:#fff;border-radius:12px;padding:11px 18px;font-size:13px;font-weight:600;box-shadow:var(--shadow-lg);transition:transform .3s;z-index:70}.toast.show{transform:translate(-50%) translateY(0)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a23506b;opacity:0;pointer-events:none;transition:opacity .22s;z-index:40}.scrim.open{opacity:1;pointer-events:auto}.sheet{position:fixed;top:0;right:0;height:100vh;width:470px;max-width:94vw;background:var(--surface);z-index:50;box-shadow:var(--shadow-lg);transform:translate(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.sheet.open{transform:none}.sheet-head{display:flex;align-items:flex-start;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}.sheet-head h3{font-size:16px}.sheet-head p{margin:2px 0 0;font-size:12.5px;color:var(--ink-faint)}.sheet-body{padding:20px 22px;overflow-y:auto;flex:1}.sheet-foot{display:flex;gap:10px;padding:16px 22px;border-top:1px solid var(--line);background:var(--surface-2)}.sheet-foot .btn{flex:1}color:var(--ink);background:var(--surface);outline:0;transition:border-color .16s,box-shadow .16s} .mod-ic{width:28px;height:28px;border-radius:8px;background:var(--blue-tint);color:var(--blue);display:grid;place-items:center;flex:0 0 auto}.mod-ic svg{width:15px;height:15px}.icon-pick{display:flex;gap:8px;flex-wrap:wrap}.icon-pick button{width:38px;height:38px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface);display:grid;place-items:center;color:var(--ink-2);cursor:pointer}.icon-pick button svg{width:17px;height:17px}.icon-pick button.on{border-color:var(--blue);background:var(--blue-tint);color:var(--blue)}.pmx{border:1px solid var(--line);border-radius:10px;overflow:hidden}.pmx table{font-size:12.5px}.pmx th{padding:8px 10px;text-align:center}.pmx th:first-child{text-align:left;padding-left:13px}.pmx td{padding:7px 10px;text-align:center;border-bottom:1px solid var(--line)}.pmx td:first-child{text-align:left;padding-left:13px;font-weight:700;color:var(--navy);white-space:nowrap}.pmx tr:last-child td{border-bottom:0}.pmx input{accent-color:var(--blue);width:15px;height:15px}.pmx .lock{font-size:10.5px;color:var(--ink-faint);font-weight:600}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.doc-layout{display:grid;grid-template-columns:290px 1fr;min-height:540px}@media (max-width:980px){.doc-layout{grid-template-columns:1fr}}.toc{border-right:1px solid var(--line);background:var(--surface-2);padding:14px 10px 18px;overflow-y:auto}.toc-head{display:flex;align-items:center;gap:8px;padding:0 8px 10px}.toc-head h4{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.toc-head .right{margin-left:auto}.toc ul{list-style:none;margin:0;padding:0}.toc ul ul{padding-left:16px}.toc-item{display:flex;align-items:center;gap:5px;padding:5px 8px;border-radius:8px;cursor:pointer;font-size:12.5px;color:var(--ink-2);position:relative}.toc-item:hover{background:var(--blue-tint)}.toc-item.on{background:var(--blue-tint);color:var(--blue);font-weight:700}.toc-num{font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums;flex:0 0 auto}.toc-item.on .toc-num{color:var(--blue)}.toc-tit{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toc-chev{width:18px;height:18px;border:0;background:transparent;color:var(--ink-faint);cursor:pointer;display:grid;place-items:center;flex:0 0 auto;border-radius:5px;padding:0}.toc-chev svg{width:12px;height:12px;transition:transform .18s}.toc-chev.closed svg{transform:rotate(-90deg)}.toc-chev.leaf{visibility:hidden}.toc-acts{display:none;gap:2px;flex:0 0 auto}.toc-item:hover .toc-acts{display:flex}.toc-acts button{width:20px;height:20px;border:0;border-radius:5px;background:transparent;color:var(--ink-faint);cursor:pointer;display:grid;place-items:center;padding:0}.toc-acts button:hover{background:#fff;color:var(--blue)}.toc-acts button.del:hover{color:var(--danger)}.toc-acts svg{width:12px;height:12px}.toc-add{margin:10px 8px 0}.doc-pane{padding:0;min-width:0}.doc-meta{display:flex;gap:16px;flex-wrap:wrap;align-items:center;padding:13px 22px;border-bottom:1px solid var(--line);background:var(--surface)}.doc-meta .m{font-size:12px;color:var(--ink-soft)}.doc-meta .m b{color:var(--navy);display:block;font-size:12.5px}.doc-logo{width:38px;height:38px;border:1px solid var(--line);border-radius:9px;background:#fff;display:grid;place-items:center;flex:0 0 auto;overflow:hidden}.doc-logo img{max-width:78%;max-height:78%;object-fit:contain}.doc-anexos{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 22px;border-bottom:1px solid var(--line);background:var(--surface-2)}.anexo-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line-2);border-radius:9px;padding:6px 10px;font-size:12px;color:var(--ink-2);font-weight:600;cursor:pointer}.anexo-chip svg{width:14px;height:14px;color:var(--blue)}.anexo-chip .rev{color:var(--ink-faint);font-weight:500}.anexo-chip .x{border:0;background:transparent;color:var(--ink-faint);cursor:pointer;display:grid;place-items:center;width:18px;height:18px;border-radius:4px;padding:0}.anexo-chip .x:hover{color:var(--danger);background:var(--danger-tint)}.doc-body{padding:10px 22px 26px;max-height:600px;overflow-y:auto}.sec{padding:14px 12px 4px;border-radius:10px;scroll-margin-top:12px}.sec.flash{animation:flash 1.6s ease}@keyframes flash{0%{background:var(--yellow-tint)}to{background:transparent}}.sec-head{display:flex;align-items:baseline;gap:10px}.sec-num{font-weight:900;color:var(--navy);font-variant-numeric:tabular-nums;font-size:15px;flex:0 0 auto}.sec-tit{flex:1;border:0;background:transparent;font-family:inherit;font-weight:800;font-size:15px;color:var(--navy);letter-spacing:-.01em;outline:0;border-bottom:1.5px dashed transparent;padding:2px 4px;text-transform:uppercase}.sec-tit:hover,.sec-tit:focus{border-bottom-color:var(--line-2);background:var(--surface-2);border-radius:6px 6px 0 0}.sec-txt{width:100%;border:1px solid transparent;border-radius:9px;background:transparent;font-family:inherit;font-size:13.5px;color:var(--ink-2);line-height:1.7;resize:vertical;min-height:54px;padding:8px 10px;outline:0;margin-top:4px;transition:border-color .16s,background .16s}.sec-txt:hover{background:var(--surface-2)}.sec-txt:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px var(--blue-tint)}.sec[data-nivel="2"]{margin-left:18px}.sec[data-nivel="3"]{margin-left:36px}.sec[data-nivel="2"] .sec-num,.sec[data-nivel="2"] .sec-tit{font-size:13.5px}.sec[data-nivel="3"] .sec-num,.sec[data-nivel="3"] .sec-tit{font-size:13px;text-transform:none}.sec-meta{font-size:10.5px;color:var(--ink-faint);padding:1px 10px 4px;display:flex;gap:10px;flex-wrap:wrap}.sec-meta b{color:var(--ink-soft);font-weight:600}.file-drop{border:1.5px dashed var(--line-2);border-radius:10px;padding:16px;text-align:center;color:var(--ink-faint);font-size:12.5px;cursor:pointer}.file-drop:hover{border-color:var(--blue);color:var(--blue)}.file-drop svg{width:20px;height:20px;display:block;margin:0 auto 6px}.pdf-page{background:#fff;border:1px solid var(--line-2);border-radius:6px;box-shadow:0 8px 30px #0a34701f;padding:26px 30px 18px;font-size:12px;color:var(--ink)}.pdf-head{display:grid;grid-template-columns:86px 1fr 150px;border:1.5px solid var(--navy)}.pdf-head>div{padding:10px 12px;border-right:1.5px solid var(--navy);display:flex;flex-direction:column;justify-content:center}.pdf-head>div:last-child{border-right:0}.pdf-logo{display:grid;place-items:center}.pdf-logo img{max-width:56px;max-height:56px;object-fit:contain}.pdf-titulo{font-weight:900;color:var(--navy);font-size:13.5px;text-transform:uppercase;letter-spacing:.02em}.pdf-tipo{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--ink-soft);text-transform:uppercase;margin-bottom:2px}.pdf-info{font-size:11px;line-height:1.8;font-variant-numeric:tabular-nums}.pdf-info b{color:var(--navy)}.pdf-resp{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid var(--navy);border-top:0}.pdf-resp>div{padding:8px 12px;font-size:11px}.pdf-resp>div:first-child{border-right:1.5px solid var(--navy)}.pdf-resp b{display:block;color:var(--navy);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.modal-lg{width:640px;max-width:94vw;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-lg);padding:22px;animation:fade .2s ease;text-align:left}
