:root{--wine:#741f2d;--wine2:#4e1420;--ink:#17212a;--navy:#152a34;--paper:#f6f2e9;--white:#fffefa;--line:#d7cec1;--muted:#69737a;--gold:#b98a45;--serif:Georgia,'Times New Roman',serif;--sans:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px}.auth-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:radial-gradient(circle at center,#fff 0,#eee5d8 70%);padding:2rem}.auth-gate img{width:110px}.auth-gate h1{font:3rem var(--serif);margin:.4rem}.auth-gate p{max-width:520px;color:var(--muted)}.auth-gate a{color:var(--wine);margin:.5rem}.auth-gate .primary{background:var(--wine);color:#fff;text-decoration:none;padding:.85rem 1.4rem;margin-top:1.2rem}#app{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}#app>aside{position:sticky;top:0;height:100vh;background:var(--navy);color:#eaf0ef;padding:1.5rem 1rem;display:flex;flex-direction:column}.portal-brand{display:flex;align-items:center;gap:.7rem;color:white;text-decoration:none;padding:0 .4rem 1.4rem;border-bottom:1px solid #314750}.portal-brand img{width:48px}.portal-brand span{display:flex;flex-direction:column}.portal-brand strong{font:1.6rem var(--serif)}.portal-brand small{font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:#d5b97d}.side-label,.kicker{font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;font-weight:800;color:var(--wine)}.side-label{color:#d5b97d;margin:2rem .5rem .8rem}#app>aside button{border:0;background:transparent;color:#dbe5e5;text-align:left;padding:.75rem .8rem;cursor:pointer;border-left:3px solid transparent}#app>aside button:hover,#app>aside button.active{background:#203a45;border-color:#d5b97d;color:#fff}.side-bottom{margin-top:auto;padding:.9rem .5rem;border-top:1px solid #314750;display:grid;gap:.5rem}.side-bottom span{font-weight:700}.side-bottom a{color:#e2c998;font-size:.75rem}main{min-width:0;padding:0 3vw 5rem}main>header{min-height:120px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:2.2rem}main>header h1{font:2.3rem var(--serif);margin:.2rem 0}.classification{font-size:.65rem;letter-spacing:.18em;border:1px solid var(--wine);color:var(--wine);padding:.55rem .7rem}.view{display:none}.view.active{display:block}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.metrics article{background:var(--white);border:1px solid var(--line);padding:1.5rem;display:flex;justify-content:space-between;align-items:center}.metrics span{color:var(--muted)}.metrics strong{font:2.2rem var(--serif);color:var(--wine)}.panel{background:var(--white);border:1px solid var(--line);padding:1.4rem}.panel h2{font:1.7rem var(--serif);margin:.25rem 0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel button,.studio-top button,.toolbar button,.explorer button{border:1px solid #aeb6b7;background:#fff;padding:.55rem .8rem;cursor:pointer}.primary{background:var(--wine)!important;color:#fff!important;border-color:var(--wine)!important}.danger{color:#9b2635;border-color:#9b2635!important}.policy-note{margin-top:1rem;padding:1rem 1.3rem;border-left:4px solid var(--gold);background:#eee4d5}.policy-note p{margin:.35rem 0;color:var(--muted)}.list{display:grid;gap:.6rem}.list.scroll{max-height:67vh;overflow:auto}.list-item{border:1px solid var(--line);padding:.9rem;cursor:pointer;background:#fff;display:grid;gap:.25rem}.list-item:hover,.list-item.selected{border-color:var(--wine);box-shadow:inset 4px 0 var(--wine)}.list-item strong{font-family:var(--serif);font-size:1rem}.list-item span,.list-item small{color:var(--muted)}.badge{display:inline-block;width:max-content;font-size:.64rem;text-transform:uppercase;letter-spacing:.08em;background:#efe1c9;color:#684716;padding:.2rem .4rem}.two-col{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(440px,1.25fr);gap:1rem}.search{width:100%;border:1px solid var(--line);padding:.75rem;margin-bottom:.8rem}.form-panel{display:grid;gap:1rem}label{display:grid;gap:.3rem;font-size:.72rem;font-weight:700;color:#35424a}input,select,textarea{border:1px solid #b9c0c0;padding:.65rem;background:#fff;color:var(--ink);font:inherit;width:100%}textarea{resize:vertical}.grid2,.grid4{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}.grid4{grid-template-columns:repeat(4,1fr)}.check{display:flex;align-items:center;gap:.5rem}.check input{width:auto}details{border:1px solid var(--line);padding:.8rem}details summary{cursor:pointer;font-weight:700}details label{margin-top:.7rem}.studio-top{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.studio-top>div{margin-right:auto}.studio-top select{max-width:360px}.document-controls{margin-bottom:1rem}.toolbar{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:1rem}.toolbar .redact{background:#111;color:white;border-color:#111}.paper{position:relative;width:min(210mm,100%);min-height:297mm;margin:1rem auto;background:#fff;box-shadow:0 10px 38px rgba(20,30,35,.15);padding:22mm 20mm 18mm;overflow:hidden}.paper>.watermark{position:absolute;inset:42% -15%;transform:rotate(-32deg);font:700 72px var(--sans);letter-spacing:.18em;color:rgba(116,31,45,.085);text-align:center;pointer-events:none;white-space:nowrap}.paper>header{position:relative;display:grid;grid-template-columns:55px 1fr auto;gap:1rem;align-items:center;border-bottom:3px solid var(--wine);padding-bottom:1rem}.paper>header img{width:52px}.paper>header div{display:flex;flex-direction:column}.paper>header small{letter-spacing:.12em;text-transform:uppercase;color:var(--wine)}.paper>header strong{font:1.8rem var(--serif)}.paper>header>span{font-size:.7rem;color:var(--wine);font-weight:800}.paper #editor{position:relative;min-height:210mm;padding:1.5rem 0;outline:none;line-height:1.65}.paper #editor h2{font:1.6rem var(--serif);color:var(--wine);border-bottom:1px solid var(--line);padding-bottom:.35rem}.paper #editor .redacted{background:#080808;color:#080808;border-radius:1px;user-select:none;padding:0 .14em}.paper>footer{position:relative;border-top:1px solid var(--wine);display:flex;justify-content:space-between;padding-top:.6rem;color:var(--wine);font-size:.62rem;letter-spacing:.12em;font-weight:800}.explorer{border:1px solid #b9c1c0;background:#fff}.explorer-bar{min-height:58px;display:flex;align-items:center;gap:.6rem;padding:.7rem;border-bottom:1px solid var(--line);background:#eee9e0}.explorer-bar strong{flex:1}.upload{display:block;border:1px solid #aeb6b7;background:#fff;padding:.55rem .8rem;cursor:pointer}.upload input{display:none}.explorer-body{display:grid;grid-template-columns:220px minmax(400px,1fr) 290px;min-height:620px}.explorer-body>nav{padding:1rem;background:#f3efe8;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:.2rem}.explorer-body>nav button{text-align:left;border:0;background:transparent;padding:.55rem}.explorer-body>nav button:hover{background:#e4dbce}.file-head,.file-row{display:grid;grid-template-columns:1fr 150px 90px 80px;gap:.5rem;align-items:center;padding:.65rem .8rem;border-bottom:1px solid #ece7df}.file-head{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.file-row{cursor:pointer}.file-row:hover{background:#f7f2e9}.file-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-row button{padding:.25rem .45rem}#file-preview{padding:1rem;border-left:1px solid var(--line);background:#fbfaf6;overflow:auto}#file-preview pre{white-space:pre-wrap;font-size:.72rem;max-height:460px;overflow:auto}.audit-list{margin-top:1rem}.audit-row{display:grid;grid-template-columns:170px 1fr 180px;gap:1rem;padding:.75rem 0;border-top:1px solid var(--line)}.audit-row small{color:var(--muted)}
@media(max-width:1100px){#app{grid-template-columns:200px minmax(0,1fr)}.grid4{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.explorer-body{grid-template-columns:170px 1fr}.explorer-body>#file-preview{grid-column:1/-1;border-left:0;border-top:1px solid var(--line)}}@media(max-width:720px){#app{display:block}#app>aside{position:static;height:auto}#app>aside button{display:inline-block}.side-label{display:none}.side-bottom{margin-top:1rem}.metrics,.grid2,.grid4{grid-template-columns:1fr}.explorer-body{grid-template-columns:1fr}.explorer-body>nav{border-right:0;border-bottom:1px solid var(--line)}.file-head,.file-row{grid-template-columns:1fr 70px}.file-head span:nth-child(2),.file-head span:nth-child(3),.file-row span{display:none}.paper{min-height:0;padding:12mm}.paper #editor{min-height:180mm}.audit-row{grid-template-columns:1fr}.classification{display:none}}
@media print{body{background:#fff}#app>aside,main>header,.studio-top,.document-controls,#studio-message{display:none!important}main{padding:0}.view{display:none!important}#studio{display:block!important}.paper{box-shadow:none;margin:0;width:210mm;height:297mm;page-break-after:always}}
.auth-gate{position:relative;isolation:isolate;overflow:hidden}.auth-gate::before,.auth-gate::after{content:"";position:absolute;z-index:-1;width:420px;height:420px;border-radius:50%;filter:blur(60px);opacity:.3;animation:gateDrift 10s ease-in-out infinite alternate}.auth-gate::before{background:#c18f91;top:-180px;left:-120px}.auth-gate::after{background:#d7bd89;bottom:-180px;right:-100px;animation-direction:alternate-reverse}.auth-gate img{filter:drop-shadow(0 18px 28px rgba(116,31,45,.22));animation:staffSeal 4.5s ease-in-out infinite}.view.active{animation:viewIn .42s cubic-bezier(.2,.75,.2,1)}.panel,.metrics article{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.panel:hover,.metrics article:hover{border-color:rgba(116,31,45,.28);box-shadow:0 14px 38px rgba(35,32,28,.06)}.metrics article:hover{transform:translateY(-4px)}#app>aside button{position:relative;overflow:hidden;transition:background .25s ease,color .25s ease,padding-left .25s ease}#app>aside button.active{padding-left:1.05rem;box-shadow:inset 0 0 32px rgba(213,185,125,.07)}.list-item{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.list-item:hover{transform:translateX(4px)}.paper{transition:transform .35s ease,box-shadow .35s ease}.paper:focus-within{transform:translateY(-4px);box-shadow:0 22px 65px rgba(20,30,35,.2)}.classification{animation:classificationPulse 3.5s ease-in-out infinite}@keyframes viewIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes gateDrift{to{translate:100px 70px;scale:1.18}}@keyframes staffSeal{50%{transform:translateY(-9px) rotate(1.5deg)}}@keyframes classificationPulse{50%{box-shadow:0 0 0 5px rgba(116,31,45,.07)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition-duration:.01ms!important}}
