:root{--navy:#172c3c;--ink:#1c3343;--muted:#697c8a;--line:#dce5e9;--bg:#f4f7f9;--teal:#096c68;--white:#fff}*{box-sizing:border-box}body{margin:0;font:14px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button,.button{cursor:pointer;border:1px solid #d2dfe4;border-radius:7px;padding:9px 13px;background:white;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}button:hover,.button:hover{background:#edf4f4;border-color:#8aaab3}button:disabled{opacity:.5;cursor:not-allowed}button.primary,.primary{background:var(--teal);border-color:var(--teal);color:#fff}input,textarea,select{width:100%;padding:10px 12px;border:1px solid #cfdae0;border-radius:6px;color:var(--ink);background:white}input:focus,select:focus,textarea:focus{outline:2px solid #8ec6c0;outline-offset:1px}label{display:block;font-size:12px;font-weight:650;color:#425c6a;margin:15px 0 6px}label input,label select,label textarea{display:block;margin-top:6px;font-weight:400;font-size:14px}textarea{resize:vertical;min-height:95px}h1,h2,p{margin-top:0}h1{font-size:28px;letter-spacing:-.8px;margin-bottom:3px}h2{font-size:22px;letter-spacing:-.5px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.6px;color:var(--muted);margin:0 0 7px}.muted{color:var(--muted)}[hidden]{display:none!important}.sidebar{position:fixed;width:224px;inset:0 auto 0 0;background:var(--navy);color:#dce9ee;padding:28px 16px}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:21px;padding:0 10px 35px}.brand span{display:block;font-size:8px;letter-spacing:1.7px;font-weight:500;color:#9ab5c5}.brand-mark{display:inline-grid;place-items:center;background:#287b78;color:white;width:38px;height:38px;border-radius:10px;font-size:23px;font-weight:750}.nav-label{font-size:9px;letter-spacing:1.6px;color:#819da9;margin:21px 12px 10px}.nav{width:100%;border:0;background:transparent;color:#adc4cf;justify-content:flex-start;padding:12px;margin:3px 0;font-size:13px}.nav:hover,.nav.active{background:#294454;color:white}.nav.active{box-shadow:inset 3px 0 #73c5b4}.side-bottom{position:absolute;bottom:25px;left:27px;right:20px;font-size:11px;color:#a7bfca}.side-bottom p{margin:16px 0 5px;color:#e8eff4}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#6ecba8;margin-right:7px}.quiet{border:0;background:transparent;color:inherit;padding:0}.side-bottom .quiet:hover{background:transparent}main{margin-left:224px;padding:30px 32px 12px}header{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px}.header-actions{display:flex;align-items:center;gap:9px}.mode{padding:6px 11px;background:#e7eeee;color:#54717c;border-radius:20px;font-size:11px}.mode.edit{background:#fff0cf;color:#8a5c09}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:0 0 24px}.stat{border:1px solid var(--line);border-radius:9px;background:white;padding:15px 19px;display:flex;align-items:center;justify-content:space-between}.stat strong{font-size:28px;letter-spacing:-1px}.stat span{font-size:11px;color:var(--muted)}.stat i{width:4px;height:31px;background:#7ba5a8;border-radius:3px}.stat:nth-child(2) i{background:#e2b059}.stat:nth-child(3) i{background:#89b3da}.stat:nth-child(4) i{background:#70b89b}.workspace{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.toolbar{padding:17px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line)}.search-wrap{position:relative;flex:1;min-width:210px}.search-wrap span{position:absolute;left:12px;top:6px;font-size:23px;color:#8a9ba5}.search-wrap input{padding-left:35px;background:#f8fafb}.toolbar select{width:auto;max-width:210px;font-size:12px}.toolbar-actions{display:flex;gap:8px}.toolbar-actions button{font-size:12px}.matrix-scroll,.table-scroll{overflow:auto;max-height:calc(100vh - 320px)}table{border-collapse:separate;border-spacing:0;width:100%}.matrix{min-width:1350px;table-layout:fixed}.matrix th,.matrix td{border-right:1px solid #e5ecef;border-bottom:1px solid #e5ecef}.matrix th{background:#f0f5f6;font-size:10px;font-weight:700;padding:14px 8px;position:sticky;top:0;z-index:3;text-transform:uppercase;letter-spacing:.4px}.matrix th:first-child{width:265px;left:0;z-index:5;text-align:left;padding-left:19px}.matrix td{height:81px;padding:7px}.matrix td.row-name{position:sticky;left:0;z-index:2;background:white;padding:13px 18px;font-weight:600;font-size:12px}.row-name small{display:block;color:#84949c;font-size:10px;font-weight:400;margin-top:3px}.group-row td{height:33px!important;background:#eaf2f2!important;color:#456a70;padding:7px 18px!important;font-size:10px!important;text-transform:uppercase;letter-spacing:1px;font-weight:700}.drawing-cell{width:100%;height:65px;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;border:1px solid transparent;padding:5px;background:#f7f9fa;border-radius:6px}.drawing-cell:hover{border-color:#7eaaa9;background:#edf6f3}.drawing-cell strong{font-size:12px}.drawing-cell .version{font-size:9px;color:#83929b}.empty-cell{color:#a6b6be;background:transparent;font-size:17px}.status{display:inline-block;padding:3px 8px;border-radius:4px;font-size:9px;font-weight:650;white-space:nowrap;background:#edf0f3;color:#677c8a}.status.production,.status.approved,.status.released{background:#e0f2e9;color:#227853}.status.review,.status.preproduction{background:#e4edf9;color:#396e9e}.status.changes{background:#fde8e5;color:#ad4e40}.status.obsolete{background:#eee8ee;color:#896e85}.register th,.register td{padding:13px 17px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}.register th{background:#f5f8fa;font-size:10px;letter-spacing:.6px;text-transform:uppercase}.register tr:hover td{background:#fafcfd}.ref-link{border:0;background:none;padding:0;color:#136d78;font-weight:700}.empty{padding:60px;text-align:center;color:var(--muted)}footer{display:flex;justify-content:space-between;color:#85959e;font-size:10px;padding:15px 2px}dialog{border:0;box-shadow:0 12px 80px #0e283b4d;color:var(--ink)}dialog::backdrop{background:#13283766}#drawer{position:fixed;inset:0 0 0 auto;margin:0;width:610px;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:13px 0 0 13px;padding:0}#drawingForm{height:100%;display:flex;flex-direction:column}.drawer-head{display:flex;justify-content:space-between;align-items:flex-start;padding:25px 27px 18px;border-bottom:1px solid var(--line)}.drawer-head h2{margin:0}.icon{border:0;font-size:25px;padding:0 5px;color:#78909b}.drawer-footer{padding:17px 26px;display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);background:#fafcfd}.drawer-footer span{margin-right:auto;font-size:11px;color:#a04438}#drawerBody{padding:0 27px 24px;overflow-y:auto;flex:1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.section-title{font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:750;border-top:1px solid var(--line);padding-top:22px;margin-top:24px}.pdf-card{border:1px solid var(--line);border-radius:8px;padding:14px;margin-top:12px;background:#fafcfd}.pdf-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.pdf-card-head strong{font-size:12px}.pdf-card small{color:var(--muted);font-size:10px;display:block;margin-top:7px}.pdf-card input[type=file]{border:0;background:none;padding-left:0;font-size:11px}.pdf2{background:#235a87!important;border-color:#235a87!important}.history{border-left:2px solid #d9e7e7;padding:0 0 12px 14px;margin:14px 0}.history strong{font-size:12px}.history small{display:block;color:var(--muted);font-size:10px}.history p{font-size:11px;margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}#smallDialog{width:470px;max-width:95vw;border-radius:12px;padding:25px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px}.error{color:#ae4232;font-size:12px;margin:10px 0}.settings{padding:25px;max-width:900px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-card{border:1px solid var(--line);padding:20px;border-radius:8px;margin-bottom:20px}.settings code{font-size:12px;background:#f1f5f6;padding:3px 6px}.settings p{font-size:12px;color:var(--muted)}.settings h3{font-size:16px}.settings .table-scroll{max-height:none}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:11px 20px;color:white;background:#203e48;border-radius:8px;box-shadow:0 4px 20px #203e4833;z-index:10;display:none;max-width:90vw}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:white}.login-card{align-self:center;width:360px;max-width:85%;margin:auto;padding:40px 0}.login-card>.brand-mark{margin-bottom:26px}.login-card h1{font-size:36px;line-height:1.15;margin:14px 0 18px}.login-card .primary{width:100%;margin-top:18px}.login-art{background:var(--navy);padding:12vh 9%;color:#ecf6f6;display:flex;flex-direction:column;justify-content:center}.login-art>span{font-size:10px;letter-spacing:3px;color:#8fbbb9}.login-art h2{font-size:57px;line-height:1.1;margin:25px 0 40px;font-weight:550;letter-spacing:-2px}.sample{padding:24px;border:1px solid #46616c;border-radius:12px;background:#24414f}.sample strong{display:block;margin:18px 0 10px;font-size:17px}.sample p{color:#aac2cc;font-size:13px;margin:0}.sample .status{font-size:11px}@media(min-width:1900px){main{padding:32px 45px}.matrix{min-width:1450px}.matrix td{height:88px}.drawing-cell{height:70px}}@media(max-width:1100px){.sidebar{width:185px}main{margin-left:185px;padding:22px 18px}.header-actions{flex-wrap:wrap;justify-content:flex-end}.stats{gap:9px}.stat{padding:12px}.toolbar-actions{flex-wrap:wrap}.matrix-scroll{max-height:65vh}}@media(max-width:720px){.sidebar{position:static;width:100%;padding:12px;display:flex;flex-wrap:wrap;align-items:center;gap:5px}.brand{padding:0 12px 0 0;font-size:17px}.brand-mark{width:30px;height:30px}.nav{width:auto;font-size:11px;padding:7px}.nav-label,.side-bottom{display:none}#adminNav{display:contents}main{margin:0;padding:20px 12px}header{align-items:flex-start}h1{font-size:23px}.header-actions{max-width:185px;gap:5px}.header-actions button,.header-actions a{font-size:10px;padding:6px}.stats{grid-template-columns:1fr 1fr}.stat strong{font-size:23px}.toolbar{padding:12px}.toolbar select{max-width:100%;font-size:11px}.login{display:block}.login-art{display:none}.login-card{padding-top:15vh}.settings-grid{grid-template-columns:1fr}footer{display:block}.matrix-scroll{max-height:65vh}}
