:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#17263b;background:#f4f6fa;--green:#32c49a;--green-dark:#159b78;--green-soft:#e2f7f0;--ink:#17263b;--muted:#718096;--line:#dfe5ec;--panel:#fff;--shadow:0 2px 8px rgba(24,39,75,.10)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#f4f6fa}body{font-size:14px}a{color:var(--green-dark)}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:270px;background:#fff;border-right:1px solid #e5e9ef;display:flex;flex-direction:column;z-index:20}.brand{height:94px;display:flex;align-items:center;padding:20px 24px;border-bottom:1px solid #edf0f4}.brand img{display:block;width:165px;height:auto}.sidebar nav{padding:30px 10px;overflow:auto}.menu-label{padding:17px 12px 8px;color:#9aabc0;font-size:11px;font-weight:800;letter-spacing:.06em}.menu-link{display:flex;align-items:center;gap:13px;padding:12px 14px;margin:3px 0;border-radius:7px;color:#596a80;text-decoration:none;font-weight:500}.menu-link span{width:21px;color:#9aabc0;text-align:center;font-size:18px}.menu-link:hover{background:#f1faf7;color:var(--green-dark)}.menu-link.active{background:var(--green-soft);color:#128967;font-weight:700}.menu-link.active span{color:var(--green)}.sidebar-footer{margin-top:auto;padding:18px 24px;color:#a0aec0;font-size:12px;border-top:1px solid #edf0f4}.workspace{margin-left:270px;min-height:100vh}.topbar{height:78px;position:sticky;top:0;z-index:15;background:var(--green);display:flex;align-items:center;justify-content:space-between;padding:0 28px;color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08)}.topbar>div:first-child{display:grid;gap:2px}.topbar strong{font-size:18px}.topbar small{font-size:11px;opacity:.88}.top-actions{display:flex;align-items:center;gap:12px}.top-actions form{margin:0}.user-box{display:grid;text-align:right;border-left:1px solid rgba(255,255,255,.35);padding-left:15px;min-width:110px}.user-box span{font-weight:700}.user-box small{font-size:10px}.support-pill{background:rgba(255,255,255,.20);padding:8px 11px;border-radius:999px;font-size:12px}.content{max-width:1500px;margin:0 auto;padding:25px 28px 45px}.content>h1{font-size:24px;margin:4px 0 20px;color:var(--ink)}.card,.study{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:20px;margin-bottom:17px;overflow:auto;box-shadow:var(--shadow)}.login{max-width:430px;margin:8vh auto}.login h1{margin-top:0}.auth-main{min-height:100vh;display:grid;place-items:center;padding:25px;background:linear-gradient(135deg,#eefaf6,#f4f6fa)}.auth-main .login{width:min(430px,100%);margin:0;border-top:4px solid var(--green)}label{display:block;font-size:12px;color:#68788d;margin-bottom:10px}input,select,textarea{display:block;width:100%;padding:10px 12px;border:1px solid #cbd4df;border-radius:5px;background:#fff;margin-top:6px;color:var(--ink);outline:none;transition:.15s}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(50,196,154,.13)}textarea{min-height:80px;resize:vertical}button,.button{border:1px solid transparent;border-radius:5px;padding:10px 15px;background:var(--green-dark);color:#fff;font-weight:650;text-decoration:none;cursor:pointer;display:inline-block;line-height:1.2}button:hover,.button:hover{filter:brightness(.96)}.secondary{background:#edf2f6;color:#334155}.logout{background:transparent;border:1px solid rgba(255,255,255,.55)}.support{background:#fff1c2;color:#7f5a00;border-color:#e8c45f}.inline{display:flex;gap:10px;align-items:end}.inline input,.inline select{min-width:200px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stats{display:flex;gap:14px;margin-bottom:18px}.stats>div{background:#fff;padding:20px;border-radius:7px;min-width:190px;border-left:4px solid var(--green);box-shadow:var(--shadow)}.stats b{font-size:27px;display:block}.stats span{color:var(--muted)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #e7ebf0;font-size:13px}th{color:#53647a;font-size:12px;font-weight:750;background:#fafbfd}tbody tr:hover,table tr:hover td{background:#f8fcfb}.alert{padding:14px;border-radius:6px;margin-bottom:15px}.error{background:#ffe5e2;color:#9f2920}.support-bar{background:#ffca58;text-align:center;padding:8px;font-weight:700}.filters{padding:5px 0 14px;display:flex;gap:8px;flex-wrap:wrap}.filters a{background:#fff;border:1px solid var(--line);padding:8px 12px;border-radius:5px;text-decoration:none}.study{padding:0}.study>header{position:static;background:#fff;color:inherit;border-bottom:1px solid #e5e9ed;padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.study h2{margin:3px 0;font-size:18px}.badge{padding:6px 10px;border-radius:999px}.pending{background:#fff1c7}.approved{background:#d9f2df}.review{background:#ffe0d9}.discarded{background:#e5e7e9}.current-data{padding:15px 20px;display:flex;gap:25px;background:#f8fafc}.proposals{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1px;background:#e1e6ea}.proposals details{background:#fff;padding:14px}.proposals summary{font-weight:700;cursor:pointer}.candidate{border:1px solid #dce3e8;border-radius:7px;margin:10px 0;padding:11px;display:grid;gap:5px}.candidate.recommended{border:2px solid var(--green)}.candidate span,.candidate small{color:#68737d}.candidate button{justify-self:start;padding:6px 10px}.decision{padding:18px 20px;background:#fbfcfd;border-top:1px solid #e5e9ed}.decision .grid{grid-template-columns:1fr 3fr 1fr 1fr}.decision>button{margin-right:8px}.scroll{overflow:auto}.actions,.toolbar,.pagination{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.actions form{display:inline;margin:0}.toolbar{margin-bottom:12px}.pagination{justify-content:flex-end;margin:12px 0}@media(max-width:980px){.sidebar{width:220px}.workspace{margin-left:220px}.grid,.decision .grid{grid-template-columns:repeat(2,1fr)}.topbar{padding:0 16px}.content{padding:20px 16px}}@media(max-width:720px){.sidebar{position:static;width:100%;height:auto}.brand{height:70px}.brand img{width:140px}.sidebar nav{padding:8px;display:flex;gap:4px;overflow:auto}.menu-label,.sidebar-footer{display:none}.menu-link{white-space:nowrap}.workspace{margin-left:0}.topbar{height:auto;min-height:68px;position:static;align-items:flex-start;padding:12px 14px}.top-actions{flex-wrap:wrap;justify-content:flex-end}.user-box,.support-pill{display:none}.content{padding:16px 10px}.content>h1{font-size:21px}.grid,.decision .grid{grid-template-columns:1fr}.inline{display:block}.inline input,.inline select{min-width:0}.current-data{display:grid;gap:8px}.proposals{grid-template-columns:1fr}.stats{display:grid}.actions{min-width:210px}}
