:root{--navy:#0b3270;--blue:#1456b8;--mint:#25b59f;--ink:#172438;--muted:#66758a;--line:#e5ebf2;--bg:#f4f7fb;--white:#fff;--warn:#c77716}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}.hidden{display:none!important}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#f9fbff,#e8f2ff);overflow:hidden;position:relative}.login-card{width:min(520px,calc(100% - 32px));background:#ffffffd9;backdrop-filter:blur(20px);border:1px solid #fff;border-radius:30px;padding:42px;box-shadow:0 30px 80px #19447a25;z-index:1}.brand-mark{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:var(--navy);color:white;font-size:24px}.eyebrow{letter-spacing:.14em;font-size:12px;font-weight:750;color:var(--blue);margin:18px 0 8px}.login h1{font-size:44px;line-height:1.12;margin:0 0 16px;letter-spacing:-.04em}.muted{color:var(--muted);line-height:1.7}.accounts{display:grid;gap:10px;margin:26px 0}.account{border:1px solid var(--line);background:white;padding:14px 16px;border-radius:16px;text-align:left;display:flex;justify-content:space-between;cursor:pointer}.account:hover{border-color:var(--blue);transform:translateY(-1px)}small{color:#8793a4}.orb{position:absolute;width:420px;height:420px;border-radius:50%;background:linear-gradient(145deg,#1868d4,#35c7af);filter:blur(1px);right:-100px;top:-100px;opacity:.85}.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}aside{background:#092b61;color:white;padding:28px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.logo{font-size:20px;padding:0 12px 28px}.logo span{color:#56d5c2;margin-right:9px}nav{display:grid;gap:6px}nav button{color:#c8d8ef;border:0;background:transparent;padding:12px 14px;text-align:left;border-radius:12px;cursor:pointer}nav button.active,nav button:hover{background:#ffffff18;color:white}.profile{margin-top:auto;border-top:1px solid #ffffff22;padding:20px 12px 0}.profile b,.profile span{display:block}.profile span{color:#a9bdd9;font-size:13px;margin-top:5px}main{padding:0 42px 50px;max-width:1500px;width:100%;margin:auto}header{height:104px;display:flex;align-items:center;justify-content:space-between}header h2{margin:0;font-size:27px}header .eyebrow{margin:0 0 3px}.ghost,.icon-btn{border:1px solid var(--line);background:white;border-radius:12px;padding:10px 14px;cursor:pointer}.icon-btn{display:none}.hero{background:linear-gradient(125deg,#0b397c,#1566c4 70%,#25b59f);color:white;border-radius:26px;padding:34px;display:grid;grid-template-columns:1fr auto;gap:20px;box-shadow:0 20px 50px #164d9020}.hero h3{font-size:30px;margin:0 0 10px}.hero p{color:#dceaff;max-width:600px}.score{font-size:54px;font-weight:750;text-align:right}.score small{display:block;color:#dceaff;font-size:13px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}.card{background:white;border:1px solid var(--line);border-radius:20px;padding:22px}.card h3{margin:0 0 16px}.metric{font-size:30px;font-weight:750;color:var(--navy)}.wide{grid-column:span 2}.section-head{display:flex;justify-content:space-between;align-items:center;margin:28px 0 14px}.section-head h3{margin:0}.btn{border:0;background:var(--blue);color:white;border-radius:12px;padding:11px 16px;cursor:pointer}.btn.secondary{background:#e9f1fc;color:var(--blue)}.btn.danger{background:#fff0ee;color:#b3362d}.list{background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden}.row{padding:17px 20px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.row:last-child{border:0}.row p{margin:5px 0 0;color:var(--muted);font-size:14px}.tag{display:inline-block;border-radius:999px;padding:5px 9px;font-size:12px;background:#eaf8f5;color:#117c6d}.tag.pending{background:#fff5e6;color:#a8630a}.tag.rejected{background:#fff0ee;color:#b3362d}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.product{background:white;border:1px solid var(--line);border-radius:20px;overflow:hidden}.product img{width:100%;height:165px;object-fit:cover}.product-body{padding:18px}.product h3{margin:0}.product .meta{display:flex;justify-content:space-between;margin:14px 0}.points{color:var(--blue);font-weight:750}.form{display:grid;gap:15px}.form.two{grid-template-columns:1fr 1fr}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:650}.field input,.field select,.field textarea{border:1px solid #dce3ec;border-radius:11px;padding:11px;background:white}.field textarea{min-height:86px;resize:vertical}.checks{display:flex;flex-wrap:wrap;gap:9px}.check{border:1px solid var(--line);border-radius:10px;padding:9px 12px}.empty{padding:38px;text-align:center;color:var(--muted)}dialog{border:0;border-radius:22px;padding:28px;width:min(620px,calc(100% - 28px));box-shadow:0 30px 90px #102b5055}dialog::backdrop{background:#0e213d77;backdrop-filter:blur(4px)}.dialog-close{float:right;border:0;background:transparent;font-size:25px;cursor:pointer}#toast{position:fixed;right:24px;bottom:24px;background:#172438;color:white;padding:13px 18px;border-radius:12px;opacity:0;transform:translateY(10px);transition:.2s;z-index:9}#toast.show{opacity:1;transform:none}.rule-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.rule-col{border-top:4px solid var(--blue)}.rule-col:nth-child(2){border-color:#5679bd}.rule-col:nth-child(3){border-color:var(--mint)}.rule{padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px}.rule:last-child{border:0}.review-actions{display:flex;gap:8px}.roles{margin-top:7px;display:flex;gap:5px;flex-wrap:wrap}.role{font-size:11px;background:#ffffff18;padding:4px 7px;border-radius:6px}@media(max-width:900px){.shell{grid-template-columns:1fr}aside{position:fixed;z-index:5;width:250px;transform:translateX(-100%);transition:.2s}aside.open{transform:none}main{padding:0 18px 36px}.icon-btn{display:block}header{gap:12px}.grid,.products,.rule-columns{grid-template-columns:1fr}.wide{grid-column:auto}.hero{grid-template-columns:1fr}.score{text-align:left}.form.two{grid-template-columns:1fr}.field.full{grid-column:auto}}
