:root {
  --navy-950:#071426; --navy-900:#0d2038; --navy-850:#102a46; --navy-800:#173654;
  --blue-700:#185cc8; --blue-600:#2674e8; --blue-500:#3f83f8; --blue-100:#e8f1ff;
  --cyan-500:#14b8a6; --green-600:#08976d; --green-100:#e4f8f0;
  --amber-600:#d4830a; --amber-100:#fff4d9; --red-600:#d94452; --red-100:#ffe9ec;
  --violet-600:#7457d9; --violet-100:#f0ecff; --slate-900:#172437; --slate-700:#40516a;
  --slate-600:#61728a; --slate-500:#7e8da1; --slate-300:#ccd5e1; --slate-200:#e3e9f0;
  --slate-100:#f1f4f8; --surface:#ffffff; --canvas:#f5f7fb;
  --shadow-sm:0 2px 8px rgba(23,36,55,.05); --shadow-md:0 12px 32px rgba(23,36,55,.09);
  --radius-sm:9px; --radius:14px; --radius-lg:22px; --sidebar:262px;
}
*{box-sizing:border-box}html{font-size:16px}body{margin:0;color:var(--slate-900);background:var(--canvas);font-family:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}svg{display:block}.nav-toggle{position:fixed;opacity:0;pointer-events:none}
.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:var(--sidebar);display:flex;flex-direction:column;color:#d7e3f1;background:linear-gradient(160deg,var(--navy-950),var(--navy-900) 52%,#102b46);box-shadow:10px 0 34px rgba(7,20,38,.13)}
.sidebar:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 10%,rgba(63,131,248,.14),transparent 28%),radial-gradient(circle at 85% 88%,rgba(20,184,166,.08),transparent 30%)}
.sidebar-head{position:relative;display:flex;align-items:center;justify-content:space-between;padding:24px 20px 20px}.brand{display:flex;align-items:center;gap:11px;color:#fff;font-size:20px;font-weight:500;letter-spacing:-.5px}.brand strong{color:#64d5c8;font-weight:800}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(135deg,var(--blue-500),var(--cyan-500));box-shadow:0 8px 20px rgba(38,116,232,.25);font-size:12px;font-weight:800}.brand-mark svg{width:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar-close{display:none;font-size:26px;cursor:pointer}
.sidebar-nav{position:relative;flex:1;overflow-y:auto;padding:2px 12px 18px;scrollbar-width:thin;scrollbar-color:#284661 transparent}.nav-group{margin-top:16px}.nav-label{display:block;padding:0 12px 7px;color:#7290ad;font-size:10px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.nav-item{display:flex;align-items:center;gap:12px;margin:3px 0;padding:9px 11px;border-radius:10px;color:#b8c9db;font-size:13.5px;font-weight:550;transition:.18s ease}.nav-item:hover{color:#fff;background:rgba(255,255,255,.055);transform:translateX(2px)}.nav-item.is-active{color:#fff;background:linear-gradient(90deg,rgba(63,131,248,.2),rgba(20,184,166,.08));box-shadow:inset 3px 0 var(--cyan-500)}.nav-icon{width:29px;height:29px;display:grid;place-items:center;flex:0 0 29px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(255,255,255,.055);color:#8eb8e4;font-size:9px;font-weight:800;letter-spacing:.5px}.is-active .nav-icon{color:#fff;border-color:rgba(99,213,200,.25);background:rgba(20,184,166,.17)}
.nav-badge{min-width:20px;height:20px;display:grid;place-items:center;margin-left:auto;padding:0 5px;border-radius:999px;color:#ffd8dc;background:rgba(217,68,82,.2);font-size:9px}
.sidebar-user{position:relative;display:flex;align-items:center;gap:10px;margin:10px 12px 14px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.045)}.avatar,.top-avatar{display:grid;place-items:center;border-radius:10px;color:#fff;background:linear-gradient(135deg,#3f83f8,#15a99a);font-weight:800}.avatar{width:35px;height:35px}.user-copy{min-width:0;flex:1;display:flex;flex-direction:column}.user-copy strong{overflow:hidden;color:#fff;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.user-copy span{margin-top:2px;color:#7f9bb6;font-size:10px}.logout-button{width:28px;height:28px;border:0;border-radius:7px;color:#91a9c0;background:transparent}.logout-button:hover{color:#fff;background:rgba(255,255,255,.08)}
.app-main{width:calc(100% - var(--sidebar));min-height:100vh;margin-left:var(--sidebar);display:flex;flex-direction:column}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--slate-200);background:rgba(255,255,255,.92);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}.topbar-left,.topbar-right{display:flex;align-items:center;gap:14px}.topbar h1{margin:2px 0 0;font-size:20px;letter-spacing:-.4px}.eyebrow,.section-kicker{color:var(--blue-600);font-size:10px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase}.connection-dot{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--slate-200);border-radius:999px;color:var(--slate-600);background:#fff;font-size:11px;font-weight:650}.connection-dot i{width:7px;height:7px;border-radius:50%;background:#19ad7c;box-shadow:0 0 0 3px rgba(25,173,124,.12)}.top-avatar{width:36px;height:36px}.menu-button{display:none;width:38px;height:38px;padding:10px;border:1px solid var(--slate-200);border-radius:9px;background:#fff;cursor:pointer}.menu-button span{height:2px;display:block;margin:3px 0;border-radius:2px;background:var(--slate-700)}.nav-overlay{display:none}
.content{width:100%;max-width:1540px;flex:1;margin:0 auto;padding:28px 32px 44px}.app-footer{display:flex;justify-content:space-between;padding:18px 32px;border-top:1px solid var(--slate-200);color:var(--slate-500);font-size:11px}.panel{border:1px solid var(--slate-200);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--slate-200)}.panel-head h3{margin:3px 0 0;font-size:16px;letter-spacing:-.2px}.panel-head>div{display:flex;flex-direction:column}.text-link{color:var(--blue-600);font-size:11px;font-weight:750}.text-link:hover{color:var(--blue-700)}.icon-link{width:31px;height:31px;display:grid;place-items:center;border-radius:8px;color:var(--blue-600);background:var(--blue-100);font-weight:800}
.welcome-banner{position:relative;min-height:154px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;margin-bottom:20px;padding:28px 34px;border-radius:var(--radius-lg);color:#fff;background:linear-gradient(112deg,#102d4f,#174d77 55%,#176e80);box-shadow:0 16px 38px rgba(16,45,79,.16)}.welcome-banner:after{content:"";position:absolute;width:280px;height:280px;right:60px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.welcome-banner .section-kicker{color:#7fdbd0}.welcome-banner h2{margin:7px 0 5px;font-size:27px;letter-spacing:-.8px}.welcome-banner p{margin:0;color:#bcd1e2;font-size:13px}.welcome-art{position:relative;z-index:2;width:125px;height:110px;display:grid;place-items:center;margin-right:35px}.welcome-art span{position:absolute;width:100px;height:100px;border-radius:28px;background:rgba(255,255,255,.07);transform:rotate(10deg)}.welcome-art svg{z-index:1;width:86px;fill:none;stroke:#77d7ce;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric-card{position:relative;display:flex;align-items:center;gap:16px;overflow:hidden;min-height:122px;padding:20px;border:1px solid var(--slate-200);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm);transition:.18s ease}.metric-card:after{content:"";position:absolute;inset:auto -28px -38px auto;width:92px;height:92px;border-radius:50%;background:currentColor;opacity:.035}.metric-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.metric-icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border-radius:14px;font-size:11px;font-weight:850;letter-spacing:.5px}.metric-card>div:last-child{display:flex;flex-direction:column}.metric-card span{color:var(--slate-600);font-size:11px;font-weight:650}.metric-card strong{margin:2px 0 7px;color:var(--slate-900);font-size:25px;line-height:1}.metric-card small{color:var(--slate-500);font-size:10px}.metric-card small b{font-size:12px}.metric-blue{color:var(--blue-600)}.metric-blue .metric-icon{background:var(--blue-100)}.metric-violet{color:var(--violet-600)}.metric-violet .metric-icon{background:var(--violet-100)}.metric-green{color:var(--green-600)}.metric-green .metric-icon{background:var(--green-100)}.metric-amber{color:var(--amber-600)}.metric-amber .metric-icon{background:var(--amber-100)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:20px}.dashboard-side{display:flex;flex-direction:column;gap:20px}.table-wrap{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:11px 20px;color:var(--slate-500);background:#fafbfd;font-size:9.5px;font-weight:800;letter-spacing:.7px;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{padding:14px 20px;border-top:1px solid var(--slate-100);color:var(--slate-700);font-size:12px;vertical-align:middle}.data-table tbody tr{transition:.15s ease}.data-table tbody tr:hover{background:#fbfcfe}.data-table td>small,.cell-primary+small{display:block;margin-top:3px;color:var(--slate-500);font-size:9.5px}.cell-primary{display:block;color:var(--slate-900);font-weight:720}.soft-tag,.status-badge,.time-pill{display:inline-flex;align-items:center;border-radius:999px;font-size:10px;font-weight:750;white-space:nowrap}.soft-tag{padding:5px 9px;color:var(--blue-700);background:var(--blue-100)}.empty-inline{display:flex;align-items:center;gap:11px;padding:12px 0}.empty-inline>span{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;color:var(--blue-600);background:var(--blue-100);font-size:9px;font-weight:850}.empty-inline>div{display:flex;flex-direction:column}.empty-inline strong{font-size:11px}.empty-inline small{margin-top:3px;color:var(--slate-500);font-size:10px}.empty-inline.positive>span{color:var(--green-600);background:var(--green-100)}
.quick-panel .panel-head{border:0;padding-bottom:12px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:0 16px 16px}.quick-grid a{display:flex;flex-direction:column;min-height:103px;padding:13px;border:1px solid var(--slate-200);border-radius:12px;background:#fbfcfe;transition:.16s ease}.quick-grid a:hover{border-color:#a9c8f6;background:var(--blue-100);transform:translateY(-1px)}.quick-grid a>span{width:29px;height:29px;display:grid;place-items:center;margin-bottom:9px;border-radius:8px;color:var(--blue-600);background:#eaf2ff;font-size:8px;font-weight:850}.quick-grid strong{font-size:11px}.quick-grid small{margin-top:3px;color:var(--slate-500);font-size:9px}.compact-list{padding:7px 20px 12px}.compact-list>div{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--slate-100)}.compact-list>div:last-child{border:0}.status-dot{width:8px;height:8px;border-radius:50%}.status-warning{background:#f0a22d;box-shadow:0 0 0 4px #fff2dc}.compact-list p{flex:1;display:flex;flex-direction:column;margin:0}.compact-list strong{font-size:10.5px}.compact-list small{margin-top:2px;color:var(--slate-500);font-size:9px}.compact-list time{color:var(--amber-600);font-size:10px;font-weight:800}.empty-compact{color:var(--slate-500)!important;font-size:10px}
.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.page-intro h2{margin:5px 0 4px;font-size:24px;letter-spacing:-.6px}.page-intro p{margin:0;color:var(--slate-600);font-size:12px}.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 15px;border:1px solid transparent;border-radius:10px;font-size:11px;font-weight:780;transition:.17s ease}.button:hover{transform:translateY(-1px)}.button-primary{color:#fff;background:linear-gradient(135deg,var(--blue-600),#1d67cf);box-shadow:0 7px 16px rgba(38,116,232,.2)}.button-primary:hover{box-shadow:0 9px 21px rgba(38,116,232,.3)}.button-muted{border-color:var(--slate-200);color:var(--slate-700);background:#fff}.button-large{width:100%;min-height:49px;font-size:12px}.resource-panel{overflow:hidden}.resource-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;border-bottom:1px solid var(--slate-200)}.search-box{width:min(390px,100%);height:39px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--slate-200);border-radius:10px;background:#f9fbfd;transition:.15s ease}.search-box:focus-within{border-color:#8fbaf7;background:#fff;box-shadow:0 0 0 3px rgba(63,131,248,.1)}.search-box span{color:var(--slate-500);font-size:18px}.search-box input{width:100%;border:0;outline:0;color:var(--slate-800);background:transparent;font-size:11px}.export-group{display:flex;align-items:center;gap:5px}.export-group>span{margin-right:5px;color:var(--slate-500);font-size:9px;font-weight:800;text-transform:uppercase}.export-group a{padding:7px 9px;border:1px solid var(--slate-200);border-radius:8px;color:var(--slate-600);font-size:9.5px;font-weight:750}.export-group a:hover{color:var(--blue-700);border-color:#b6cdf0;background:var(--blue-100)}.resource-table th,.resource-table td{padding-left:18px;padding-right:18px}.actions-head{text-align:right!important}.row-actions{text-align:right;white-space:nowrap}.action-button{min-width:31px;height:29px;display:inline-grid;place-items:center;margin-left:4px;padding:0 8px;border:1px solid var(--slate-200);border-radius:7px;color:var(--slate-600);background:#fff;font-size:9px;font-weight:750}.action-button:hover{color:var(--blue-700);border-color:#aac7f0;background:var(--blue-100)}.action-edit{padding:0 10px}.panel-foot{display:flex;justify-content:space-between;padding:11px 20px;border-top:1px solid var(--slate-200);color:var(--slate-500);background:#fafbfd;font-size:9.5px}.empty-state{display:flex;align-items:center;flex-direction:column;padding:44px 20px;text-align:center}.empty-icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:12px;border-radius:15px;color:var(--blue-600);background:var(--blue-100);font-size:18px}.empty-state h3{margin:0 0 4px;font-size:13px}.empty-state p{margin:0;color:var(--slate-500);font-size:10px}
.form-intro{align-items:flex-start}.back-link{display:inline-block;margin-bottom:12px;color:var(--blue-600);font-size:10px;font-weight:750}.form-panel{max-width:1040px;overflow:hidden}.form-panel-head{display:flex;align-items:center;gap:12px;padding:19px 24px;border-bottom:1px solid var(--slate-200);background:#fbfcfe}.form-module-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;color:var(--blue-600);background:var(--blue-100);font-size:10px;font-weight:850}.form-panel-head h3{margin:0 0 3px;font-size:14px}.form-panel-head p{margin:0;color:var(--slate-500);font-size:10px}.resource-form{padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}.field-group{display:flex;flex-direction:column;gap:7px}.field-group>span{color:var(--slate-700);font-size:10.5px;font-weight:750}.field-group>span b{margin-left:2px;color:var(--red-600)}.field-group small,.checkbox-field small{color:var(--slate-500);font-size:9px}.field-group em,.checkbox-field em{color:var(--red-600);font-size:9px;font-style:normal}.form-control,.form-select,.field-group input,.field-group select,.field-group textarea{width:100%;min-height:41px;padding:9px 11px;border:1px solid var(--slate-300);border-radius:9px;outline:none;color:var(--slate-900);background:#fff;font-size:11px;transition:.15s ease}.field-group textarea{min-height:105px;resize:vertical}.field-group input:focus,.field-group select:focus,.field-group textarea:focus{border-color:#6ca2ee;box-shadow:0 0 0 3px rgba(63,131,248,.1)}.field-group input:disabled{color:var(--slate-500);background:var(--slate-100)}.field-group input[type=file]{padding:8px}.field-group input[type=file]::file-selector-button{margin:-4px 8px -4px -5px;padding:7px 10px;border:0;border-radius:6px;color:var(--blue-700);background:var(--blue-100);font-size:9px;font-weight:750}.checkbox-field{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--slate-200);border-radius:10px;background:#fbfcfe}.checkbox-field input{width:17px;height:17px;accent-color:var(--blue-600)}.checkbox-field>span{display:flex;flex-direction:column}.checkbox-field strong{font-size:10.5px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin:25px -24px -24px;padding:16px 24px;border-top:1px solid var(--slate-200);background:#fbfcfe}.form-alert{margin-bottom:16px;padding:11px 13px;border:1px solid #fac0c6;border-radius:9px;color:#a82936;background:var(--red-100);font-size:10px}.form-alert p{margin:0}.form-alert-wide{grid-column:1/-1}
.alert-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.alert-stat{position:relative;overflow:hidden;padding:17px 19px;border:1px solid var(--slate-200);border-radius:var(--radius);background:#fff}.alert-stat:after{content:"";position:absolute;right:-15px;bottom:-28px;width:75px;height:75px;border-radius:50%;background:currentColor;opacity:.07}.alert-stat span{font-size:10px;font-weight:750}.alert-stat strong{display:block;margin-top:4px;color:var(--slate-900);font-size:23px}.alert-danger{color:var(--red-600);border-left:3px solid var(--red-600)}.alert-warning{color:var(--amber-600);border-left:3px solid var(--amber-600)}.alert-info{color:var(--blue-600);border-left:3px solid var(--blue-600)}.alert-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.alert-panel{overflow:hidden}.alert-panel-wide{grid-column:1/-1}.alert-panel .panel-head>div{flex-direction:row;align-items:center;gap:10px}.alert-panel .panel-head h3{margin:0}.alert-symbol{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;font-size:9px;font-weight:850}.danger-symbol{color:var(--red-600);background:var(--red-100)}.warning-symbol{color:var(--amber-600);background:var(--amber-100)}.info-symbol{color:var(--blue-600);background:var(--blue-100)}.status-badge{padding:5px 8px}.status-danger{color:var(--red-600);background:var(--red-100)}.status-warning{color:var(--amber-600);background:var(--amber-100)}.status-info{color:var(--blue-600);background:var(--blue-100)}
.agenda-panel{overflow:hidden}.agenda-head{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--slate-200)}.agenda-legend{display:flex;gap:18px;color:var(--slate-600);font-size:9.5px}.agenda-legend span{display:flex;align-items:center;gap:6px}.legend-dot{width:7px;height:7px;border-radius:50%}.dot-blue{background:var(--blue-600)}.dot-green{background:var(--green-600)}.date-block{display:flex;align-items:center;gap:7px}.date-block>strong{font-size:21px}.date-block>span{display:flex;flex-direction:column;color:var(--slate-600);font-size:8px;font-weight:850}.date-block small{font-size:8px;font-weight:500}.time-pill{padding:6px 9px;color:var(--blue-700);background:var(--blue-100)}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.team-card{overflow:hidden;padding:18px;border:1px solid var(--slate-200);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm);transition:.17s ease}.team-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.team-card.is-inactive{opacity:.7}.team-card-top{display:flex;align-items:flex-start;justify-content:space-between}.team-avatar{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(135deg,var(--blue-600),var(--cyan-500));font-size:14px;font-weight:850}.member-status{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:800}.member-status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.member-active{color:var(--green-600);background:var(--green-100)}.member-inactive{color:var(--slate-600);background:var(--slate-100)}.team-copy{margin:14px 0}.team-copy h3{margin:0 0 2px;font-size:14px}.team-copy p{margin:0 0 9px;color:var(--slate-500);font-size:9.5px}.role-pill{display:inline-flex;padding:5px 8px;border-radius:7px;color:var(--blue-700);background:var(--blue-100);font-size:8.5px;font-weight:750}.team-card dl{margin:0;padding:12px 0;border-top:1px solid var(--slate-100);border-bottom:1px solid var(--slate-100)}.team-card dl>div{display:flex;justify-content:space-between;gap:10px;padding:4px 0}.team-card dt{color:var(--slate-500);font-size:8.5px}.team-card dd{overflow:hidden;margin:0;color:var(--slate-700);font-size:8.5px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.team-actions{display:flex;gap:7px;margin-top:13px}.team-actions a{flex:1;padding:8px;border:1px solid var(--slate-200);border-radius:8px;color:var(--slate-600);font-size:8.5px;font-weight:750;text-align:center}.team-actions a:hover{color:var(--blue-700);border-color:#afc9ee;background:var(--blue-100)}.password-panel{max-width:700px}
.notice{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:12px 14px;border:1px solid #b9e7d7;border-radius:10px;color:#087653;background:#e7f8f1;font-size:11px;font-weight:650}.notice button{border:0;color:inherit;background:transparent;font-size:18px}.notice-error{color:#a82936;border-color:#fac0c6;background:var(--red-100)}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(480px,1.08fr) minmax(420px,.92fr);background:#f8fafc}.login-showcase{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:42px 7vw 32px;color:#fff;background:linear-gradient(145deg,#071426,#0d2b49 58%,#10465c)}.login-showcase:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:44px 44px}.brand-light{position:relative;z-index:2}.login-glow{position:absolute;border-radius:50%;filter:blur(4px)}.login-glow-one{width:420px;height:420px;right:-180px;top:-170px;background:radial-gradient(circle,rgba(39,116,232,.3),transparent 68%)}.login-glow-two{width:360px;height:360px;left:-170px;bottom:-160px;background:radial-gradient(circle,rgba(20,184,166,.16),transparent 68%)}.showcase-copy{position:relative;z-index:2;max-width:600px;margin:auto 0}.showcase-pill{display:inline-flex;padding:7px 11px;border:1px solid rgba(99,213,200,.23);border-radius:999px;color:#7de0d4;background:rgba(20,184,166,.08);font-size:9px;font-weight:800;letter-spacing:.7px;text-transform:uppercase}.showcase-copy h1{max-width:570px;margin:20px 0 14px;font-size:clamp(36px,4.3vw,59px);line-height:1.03;letter-spacing:-2px}.showcase-copy>p{max-width:510px;margin:0;color:#a9bfd2;font-size:14px;line-height:1.7}.showcase-features{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:44px}.showcase-features>div{min-height:110px;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.035);backdrop-filter:blur(8px)}.showcase-features>div>span{color:#64d5c8;font-size:9px;font-weight:850}.showcase-features p{display:flex;flex-direction:column;margin:15px 0 0;color:#7894ad;font-size:9.5px;line-height:1.45}.showcase-features strong{margin-bottom:4px;color:#eaf2f9;font-size:11px}.showcase-foot{position:relative;z-index:2;margin:24px 0 0;color:#6f8ca6;font-size:9px}.login-panel{display:grid;place-items:center;padding:40px;background:radial-gradient(circle at 100% 0,#eaf3ff,transparent 35%),#f8fafc}.login-card{width:100%;max-width:400px}.login-card>.eyebrow{font-size:9px}.login-card h2{margin:8px 0 5px;font-size:29px;letter-spacing:-.8px}.login-subtitle{margin:0 0 30px;color:var(--slate-600);font-size:12px}.login-form{display:flex;flex-direction:column;gap:18px}.login-form>label>span{display:block;margin-bottom:7px;color:var(--slate-700);font-size:10px;font-weight:750}.input-with-icon{height:47px;display:flex;align-items:center;border:1px solid var(--slate-300);border-radius:11px;background:#fff;box-shadow:var(--shadow-sm);transition:.15s ease}.input-with-icon:focus-within{border-color:#6ca2ee;box-shadow:0 0 0 3px rgba(63,131,248,.1)}.input-with-icon i{width:42px;color:var(--blue-600);font-size:10px;font-style:normal;font-weight:850;text-align:center}.input-with-icon input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:11px}.password-toggle{margin-right:7px;padding:6px;border:0;color:var(--blue-600);background:transparent;font-size:9px;font-weight:750}.login-security{display:flex;align-items:flex-start;gap:10px;margin-top:25px;padding-top:20px;border-top:1px solid var(--slate-200);color:var(--slate-500)}.login-security>span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:var(--green-600);background:var(--green-100);font-size:10px;font-weight:850}.login-security p{margin:0;font-size:9.5px;line-height:1.5}.login-security strong{color:var(--slate-700)}.mobile-login-brand{display:none}.form-alert{padding:11px 13px;border:1px solid #fac0c6;border-radius:9px;color:#a82936;background:var(--red-100);font-size:10px}
@media(max-width:1180px){.metric-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.dashboard-side{display:grid;grid-template-columns:1fr 1fr}.team-grid{grid-template-columns:1fr 1fr}.showcase-features{grid-template-columns:1fr}.showcase-features>div{min-height:70px}.showcase-features p{margin-top:8px}.showcase-copy h1{font-size:42px}}
@media(max-width:900px){:root{--sidebar:248px}.sidebar{transform:translateX(-105%);transition:transform .22s ease}.nav-toggle:checked~.app-shell .sidebar{transform:translateX(0)}.sidebar-close{display:block}.nav-overlay{position:fixed;inset:0;z-index:35;background:rgba(7,20,38,.46);backdrop-filter:blur(2px)}.nav-toggle:checked~.app-shell .nav-overlay{display:block}.app-main{width:100%;margin-left:0}.menu-button{display:block}.content{padding:24px 20px 38px}.topbar{padding:0 20px}.login-shell{grid-template-columns:1fr}.login-showcase{display:none}.mobile-login-brand{display:flex;align-items:center;gap:10px;margin-bottom:38px}.mobile-login-brand .brand-mark{color:#fff}.login-panel{min-height:100vh}}
@media(max-width:680px){.topbar{height:70px}.topbar .eyebrow,.connection-dot{display:none}.topbar h1{font-size:17px}.content{padding:20px 14px 34px}.app-footer{padding:16px 14px}.welcome-banner{min-height:175px;padding:24px}.welcome-banner h2{font-size:23px}.welcome-banner p{max-width:75%;line-height:1.5}.welcome-art{width:85px;margin-right:0}.welcome-art svg{width:66px}.metric-grid{grid-template-columns:1fr}.metric-card{min-height:98px}.dashboard-side{grid-template-columns:1fr}.page-intro{align-items:flex-start;flex-direction:column}.page-intro .button{width:100%}.resource-toolbar{align-items:stretch;flex-direction:column}.search-box{width:100%}.export-group{justify-content:flex-end}.form-grid{grid-template-columns:1fr}.alert-summary,.alert-grid,.team-grid{grid-template-columns:1fr}.alert-panel-wide{grid-column:auto}.agenda-head{align-items:flex-start;flex-direction:column;gap:12px}.login-panel{padding:28px 20px}.login-card h2{font-size:25px}.quick-grid{grid-template-columns:1fr 1fr}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.welcome-link{display:inline-block;margin-top:17px;padding:7px 10px;border:1px solid rgba(119,215,206,.2);border-radius:8px;color:#88e3d9;background:rgba(20,184,166,.08);font-size:9.5px;font-weight:750}
.alert-summary-five{grid-template-columns:repeat(5,1fr)}.alert-violet{color:var(--violet-600);border-left:3px solid var(--violet-600)}.alert-green{color:var(--green-600);border-left:3px solid var(--green-600)}
.notification-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.notification-panel{overflow:hidden}.notification-wide{grid-column:1/-1}.notification-list{padding:5px 18px 10px}.notification-item{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--slate-100)}.notification-item:last-child{border:0}.notification-item>span{width:33px;height:33px;display:grid;place-items:center;flex:0 0 33px;border-radius:9px;font-size:8px;font-weight:850}.notification-item>p{min-width:0;flex:1;display:flex;flex-direction:column;margin:0}.notification-item strong{overflow:hidden;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.notification-item small{margin-top:3px;color:var(--slate-500);font-size:9px}.notification-item>b{max-width:40%;overflow:hidden;padding:5px 7px;border-radius:7px;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.notification-item.critical>span,.notification-item.critical>b{color:var(--red-600);background:var(--red-100)}.notification-item.attention>span,.notification-item.attention>b{color:var(--amber-600);background:var(--amber-100)}.notification-item.project-note>span,.notification-item.project-note>b{color:var(--violet-600);background:var(--violet-100)}.notification-item.reservation-note>span,.notification-item.reservation-note>b{color:var(--blue-600);background:var(--blue-100)}.horizontal-notifications{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.period-chip{display:inline-flex;padding:8px 11px;border:1px solid var(--slate-200);border-radius:9px;color:var(--slate-600);background:#fff;font-size:9.5px;font-weight:700}.analytics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:18px}.chart-panel{overflow:hidden}.bar-chart{display:flex;flex-direction:column;gap:15px;padding:20px}.bar-row{display:flex;flex-direction:column;gap:6px}.bar-copy{display:flex;justify-content:space-between;gap:12px}.bar-copy span{overflow:hidden;color:var(--slate-700);font-size:9.5px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.bar-copy strong{font-size:10px}.bar-track{height:7px;overflow:hidden;border-radius:999px;background:var(--slate-100)}.bar-track i{height:100%;min-width:3px;display:block;border-radius:999px;background:linear-gradient(90deg,var(--blue-600),var(--blue-500))}.chart-violet .bar-track i{background:linear-gradient(90deg,var(--violet-600),#9a82eb)}.chart-green .bar-track i{background:linear-gradient(90deg,var(--green-600),#37c59a)}.flow-panel{overflow:hidden}.flow-cards{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:13px;padding:18px}.flow-cards>div{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--slate-200);border-radius:12px;background:#fbfcfe}.flow-cards>div>span{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;font-size:13px;font-weight:850}.flow-cards p{display:flex;flex-direction:column;margin:0}.flow-cards small{color:var(--slate-500);font-size:8.5px}.flow-cards strong{margin-top:3px;font-size:17px}.flow-entry>span{color:var(--green-600);background:var(--green-100)}.flow-exit>span{color:var(--amber-600);background:var(--amber-100)}.flow-note>span{color:var(--blue-600);background:var(--blue-100)}.flow-note strong{font-size:10px}.flow-note small{margin-top:3px;line-height:1.45}.activity-filters{display:flex;align-items:center;gap:9px;padding:16px 20px;border-bottom:1px solid var(--slate-200)}.activity-filters .search-box{flex:1}.filter-select{height:39px;padding:0 30px 0 11px;border:1px solid var(--slate-200);border-radius:9px;outline:0;color:var(--slate-700);background:#fff;font-size:10px}.activity-badge{display:inline-flex;padding:5px 8px;border-radius:7px;font-size:8.5px;font-weight:750}.activity-create{color:var(--green-600);background:var(--green-100)}.activity-update{color:var(--blue-600);background:var(--blue-100)}
.intro-actions{display:flex;align-items:center;gap:9px}.label-filters{display:flex;align-items:end;gap:13px;margin-bottom:20px;padding:16px}.label-filters label{min-width:210px;display:flex;flex-direction:column;gap:6px}.label-filters label>span{color:var(--slate-600);font-size:9px;font-weight:750}.label-filters select{height:39px;padding:0 10px;border:1px solid var(--slate-200);border-radius:9px;outline:0;background:#fff;font-size:10px}.label-count{margin-left:auto;color:var(--slate-500);font-size:9.5px}.labels-sheet{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.sample-label{width:100%;min-height:180px;overflow:hidden;border:1px solid var(--slate-300);border-radius:10px;background:#fff;break-inside:avoid}.label-brand{height:31px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:#fff;background:linear-gradient(90deg,var(--navy-900),#164764)}.label-brand>span{font-size:11px}.label-brand strong{color:#64d5c8}.label-brand small{font-size:7px;font-weight:850;letter-spacing:1.2px}.label-body{display:grid;grid-template-columns:105px 1fr;gap:10px;padding:10px}.label-body img{width:100px;height:100px;object-fit:contain}.label-body h3{margin:2px 0 3px;font-size:17px;letter-spacing:.3px}.label-body p{overflow:hidden;margin:0 0 8px;color:var(--slate-600);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.label-body dl{display:grid;grid-template-columns:39px 1fr;gap:2px 5px;margin:0}.label-body dt{color:var(--slate-500);font-size:7px;font-weight:750}.label-body dd{overflow:hidden;margin:0;color:var(--slate-800);font-size:7px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1180px){.alert-summary-five{grid-template-columns:repeat(3,1fr)}.analytics-grid{grid-template-columns:1fr 1fr}.flow-cards{grid-template-columns:1fr 1fr}.flow-note{grid-column:1/-1}}
@media(max-width:680px){.activity-filters{align-items:stretch;flex-direction:column}.alert-summary-five,.notification-grid,.analytics-grid,.flow-cards{grid-template-columns:1fr}.notification-wide,.flow-note{grid-column:auto}.horizontal-notifications{grid-template-columns:1fr}}
@media(max-width:680px){.intro-actions,.label-filters{width:100%;align-items:stretch;flex-direction:column}.intro-actions .button{width:100%}.label-filters label{min-width:0}.label-count{margin:0}.labels-sheet{grid-template-columns:1fr}}
@media print{@page{size:A4 portrait;margin:8mm}body{background:#fff}.sidebar,.topbar,.app-footer,.no-print{display:none!important}.app-main{width:100%;margin:0}.content{max-width:none;padding:0}.labels-sheet{display:grid;grid-template-columns:50mm 50mm 50mm;justify-content:center;gap:3mm}.sample-label{width:50mm;height:30mm;min-height:30mm;border:1px solid #444;border-radius:1.5mm}.label-brand{height:6mm;padding:0 2.5mm}.label-brand>span{font-size:7pt}.label-brand small{font-size:5pt}.label-body{grid-template-columns:20mm 1fr;gap:1.5mm;padding:1.5mm}.label-body img{width:19mm;height:19mm}.label-body h3{margin:0;font-size:9pt}.label-body p{margin-bottom:1mm;font-size:5.5pt}.label-body dl{grid-template-columns:10mm 1fr;gap:.4mm 1mm}.label-body dt,.label-body dd{font-size:4.5pt}}

/* Gestão de projetos científicos */
.project-intro{align-items:center}.code-preview{min-width:145px;display:flex;flex-direction:column;padding:12px 16px;border:1px solid #c9ddfa;border-radius:12px;background:linear-gradient(135deg,#fff,var(--blue-100));box-shadow:var(--shadow-sm)}.code-preview span{color:var(--slate-500);font-size:8.5px;font-weight:800;letter-spacing:.7px;text-transform:uppercase}.code-preview strong{margin-top:3px;color:var(--blue-700);font-size:17px;letter-spacing:.4px}.project-create-panel,.project-list-panel,.project-detail-panel,.project-readonly{overflow:hidden}.project-create-panel{margin-bottom:20px}.project-code-chip,.record-count{display:inline-flex;align-items:center;padding:7px 10px;border-radius:8px;font-size:9px;font-weight:800}.project-code-chip{color:var(--blue-700);background:var(--blue-100);letter-spacing:.5px}.record-count{color:var(--slate-600);background:var(--slate-100)}.project-create-form{padding:22px}.project-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px 16px}.project-field-title{grid-column:span 7}.project-field-coordinator{grid-column:span 5}.project-field-funding_agency{grid-column:span 6}.project-field-start_date{grid-column:span 3}.project-field-status{grid-column:span 3}.project-field-description{grid-column:1/-1}.project-field-description textarea{min-height:112px}.project-form-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px -22px -22px;padding:16px 22px;border-top:1px solid var(--slate-200);background:#fbfcfe}.project-form-actions>span{color:var(--slate-500);font-size:9.5px}.project-list-panel{margin-top:20px}.project-code{display:inline-flex;padding:6px 9px;border-radius:8px;color:var(--blue-700);background:var(--blue-100);font-size:10px;font-weight:850;letter-spacing:.35px}.project-status{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap}.status-planning{color:var(--violet-600);background:var(--violet-100)}.status-active{color:var(--green-600);background:var(--green-100)}.status-paused{color:var(--amber-600);background:var(--amber-100)}.status-finished{color:var(--slate-600);background:var(--slate-100)}.project-detail-panel form{padding:22px}.project-detail-panel .form-actions{margin-bottom:-22px}.project-field-wide{grid-column:1/-1}.project-field-wide select{min-height:112px}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:17px 20px;border-color:#f4c4c9;background:#fffafb}.danger-zone>div{display:flex;flex-direction:column}.danger-zone strong{color:#a82936;font-size:11px}.danger-zone span{margin-top:3px;color:var(--slate-500);font-size:9.5px}.button-danger{color:#b12f3b;border-color:#efb5bb;background:var(--red-100)}.button-danger:hover{color:#fff;background:var(--red-600)}.project-details-list{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;padding:8px 22px 22px}.project-details-list>div{padding:15px 0;border-bottom:1px solid var(--slate-100)}.project-details-list>div:nth-child(odd):not(.project-detail-wide){padding-right:22px}.project-details-list dt{color:var(--slate-500);font-size:8.5px;font-weight:800;text-transform:uppercase}.project-details-list dd{margin:5px 0 0;color:var(--slate-800);font-size:11px;line-height:1.55}.project-detail-wide{grid-column:1/-1}
@media(max-width:1050px){.project-field-title,.project-field-coordinator,.project-field-funding_agency{grid-column:span 6}.project-field-start_date,.project-field-status{grid-column:span 3}}
@media(max-width:680px){.code-preview{width:100%}.project-form-grid{grid-template-columns:1fr}.project-form-grid>label{grid-column:1}.project-form-actions,.danger-zone{align-items:stretch;flex-direction:column}.project-form-actions .button,.danger-zone .button{width:100%}.project-details-list{grid-template-columns:1fr}.project-details-list>div{grid-column:1;padding-right:0!important}}

/* Biobanco e amostras */
.biobank-intro{align-items:center}.sample-code-preview strong{color:var(--violet-600)}.sample-create-panel{overflow:hidden;margin-bottom:20px}.sample-code-chip{display:inline-flex;padding:7px 10px;border-radius:8px;color:var(--violet-600);background:var(--violet-100);font-size:9px;font-weight:850;letter-spacing:.5px}.sample-create-form{padding:22px}.sample-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px 16px}.sample-form-grid>label{grid-column:span 3}.sample-field-name{grid-column:span 5}.sample-field-sample_type{grid-column:span 3}.sample-field-collected_at{grid-column:span 4}.sample-field-project,.sample-field-equipment,.sample-field-storage_container,.sample-field-storage_container_type,.sample-field-storage_box{grid-column:span 3}.sample-field-storage_position{grid-column:span 3}.sample-field-owner{grid-column:span 4}.sample-field-storage_position.is-disabled{opacity:.55}.sample-list-panel{overflow:hidden;margin-top:20px}.sample-code{display:inline-flex;padding:6px 9px;border-radius:8px;color:var(--violet-600);background:var(--violet-100);font-size:10px;font-weight:850;letter-spacing:.35px}.sample-type-tag,.location-tag{display:inline-flex;padding:5px 8px;border-radius:7px;font-size:9px;font-weight:750}.sample-type-tag{color:var(--blue-700);background:var(--blue-100)}.location-tag{color:var(--slate-700);background:var(--slate-100)}
.sample-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:18px;margin-bottom:18px}.storage-panel{overflow:hidden}.current-location{display:inline-flex;padding:7px 10px;border-radius:8px;color:var(--green-600);background:var(--green-100);font-size:9px;font-weight:800}.map-selector{display:grid;grid-template-columns:minmax(210px,1.1fr) minmax(180px,1fr) minmax(145px,.7fr) minmax(180px,.85fr) auto;align-items:end;gap:12px;padding:17px 20px;border-bottom:1px solid var(--slate-200);background:#fbfcfe}.map-selector label{display:flex;flex-direction:column;gap:6px}.map-selector label>span{color:var(--slate-600);font-size:9px;font-weight:800}.storage-legend{display:flex;justify-content:center;gap:22px;padding:17px 20px 4px;color:var(--slate-600);font-size:9px;font-weight:700}.storage-legend span{display:flex;align-items:center;gap:6px}.storage-legend i{width:10px;height:10px;border-radius:50%}.legend-current{background:#20bd7a}.legend-occupied{background:#e8525d}.legend-available{background:#dfe5eb}.storage-map-wrap{overflow-x:auto;padding:17px 20px 22px}.storage-map{min-width:650px;display:grid;grid-template-columns:24px repeat(12,minmax(34px,1fr));align-items:center;gap:8px}.map-column,.map-row{color:var(--slate-700);font-size:9px;text-align:center}.storage-cell{position:relative;aspect-ratio:1;max-width:38px;width:100%;justify-self:center;border:0;border-radius:50%;background:#e8edf2;transition:.15s ease}.storage-cell span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.storage-cell.is-current{background:#20bd7a;box-shadow:inset 0 0 0 4px rgba(255,255,255,.4)}.storage-cell.is-occupied{cursor:not-allowed;background:#e8525d}.storage-cell.is-available:hover{background:#b9c8d7;transform:scale(1.08)}.storage-cell.is-selected{outline:3px solid var(--blue-500);outline-offset:2px;background:#62a2f5}.location-save-form{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:15px 20px;border-top:1px solid var(--slate-200);background:#fbfcfe}.location-save-form>span{margin-right:auto;color:var(--slate-600);font-size:9.5px;font-weight:700}.location-save-form .form-alert{width:100%;margin:0}.map-empty{display:flex;align-items:center;justify-content:center;gap:12px;min-height:280px;color:var(--slate-500)}.map-empty.container-without-grid{min-height:210px}.map-empty>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:var(--blue-600);background:var(--blue-100);font-size:9px;font-weight:850}.map-empty>div{display:flex;flex-direction:column}.map-empty strong{color:var(--slate-700);font-size:11px}.map-empty small{margin-top:3px;font-size:9px}.sample-summary-card{padding:20px;text-align:center}.sample-summary-code{display:inline-flex;padding:7px 10px;border-radius:8px;color:var(--violet-600);background:var(--violet-100);font-size:10px;font-weight:850}.sample-summary-card h3{overflow:hidden;margin:12px 0 8px;font-size:16px;text-overflow:ellipsis}.sample-summary-card dl{margin:18px 0 0;padding-top:10px;border-top:1px solid var(--slate-200);text-align:left}.sample-summary-card dl>div{padding:8px 0;border-bottom:1px solid var(--slate-100)}.sample-summary-card dt{color:var(--slate-500);font-size:8px;font-weight:800;text-transform:uppercase}.sample-summary-card dd{overflow:hidden;margin:3px 0 0;color:var(--slate-700);font-size:9.5px;font-weight:650;text-overflow:ellipsis}.sample-metadata-panel{overflow:hidden}.sample-metadata-panel form{padding:22px}.sample-metadata-panel .form-actions{margin-bottom:-22px}.status-registered{color:var(--blue-700);background:var(--blue-100)}.status-processing{color:var(--amber-600);background:var(--amber-100)}.status-stored{color:var(--green-600);background:var(--green-100)}.status-consumed,.status-discarded{color:var(--slate-600);background:var(--slate-100)}
@media(max-width:1100px){.sample-field-name,.sample-field-project,.sample-field-equipment,.sample-field-storage_container_type,.sample-field-storage_box,.sample-field-owner{grid-column:span 6}.sample-field-sample_type,.sample-field-collected_at,.sample-field-storage_position{grid-column:span 3}.sample-detail-grid{grid-template-columns:1fr}.sample-detail-side{display:none}.map-selector{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.sample-form-grid{grid-template-columns:1fr}.sample-form-grid>label{grid-column:1}.map-selector{grid-template-columns:1fr}.location-save-form{align-items:stretch;flex-direction:column}.location-save-form .button{width:100%}.storage-legend{justify-content:flex-start;flex-wrap:wrap}}
.movement-reason{max-width:220px}.sample-traceability-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;margin:18px 0}.traceability-panel{overflow:hidden}.timeline-list{padding:8px 20px 18px}.timeline-list>div{display:flex;gap:10px;padding:11px 0;border-bottom:1px solid var(--slate-100)}.timeline-list>div>span{flex:0 0 30px;height:30px;display:grid;place-items:center;border-radius:9px;color:var(--blue-700);background:var(--blue-100);font-size:8px;font-weight:850}.timeline-list p{display:flex;flex-direction:column;margin:0}.timeline-list strong{color:var(--slate-700);font-size:10px}.timeline-list small{margin-top:3px;color:var(--slate-500);font-size:8.5px}@media(max-width:900px){.sample-traceability-grid{grid-template-columns:1fr}}
.module-tabs{display:flex;gap:6px;margin:-4px 0 16px;padding:5px;border:1px solid var(--slate-200);border-radius:12px;background:var(--panel)}.module-tabs a{padding:9px 14px;border-radius:8px;color:var(--slate-600);font-size:9px;font-weight:800;text-decoration:none}.module-tabs a.is-active{color:#fff;background:var(--blue-600)}.detail-copy{padding:20px;color:var(--slate-700);font-size:10px}.detail-copy p{margin:0 0 12px}.container-child-grid{padding:18px}.container-child-grid a{text-decoration:none}

/* Primers, protocolos e ferramentas de bancada */
.button-success{color:#fff;background:linear-gradient(135deg,#0aaa75,#07865e);box-shadow:0 7px 16px rgba(8,151,109,.2)}.button-success:hover{box-shadow:0 9px 21px rgba(8,151,109,.28)}
.primer-intro{align-items:center}.primer-code-preview strong{color:var(--green-600)}.primer-create-panel,.primer-list-panel{overflow:hidden;margin-bottom:20px}.primer-code-chip,.upload-limit{display:inline-flex;padding:7px 10px;border-radius:8px;color:var(--green-600);background:var(--green-100);font-size:9px;font-weight:850;letter-spacing:.4px}.primer-create-form{padding:22px}.primer-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px 16px}.primer-field-name{grid-column:span 3}.primer-field-sequence{grid-column:span 5}.primer-field-melting_temperature{grid-column:span 2}.primer-field-manufacturer{grid-column:span 2}.primer-field-tube_photo,.primer-field-datasheet{grid-column:span 3}.primer-field-equipment{grid-column:span 3}.primer-field-storage_box,.primer-field-storage_position{grid-column:span 2}.primer-field-project{grid-column:span 3}.primer-field-received_at{grid-column:span 2}.primer-field-owner{grid-column:span 3}.primer-field-notes{grid-column:1/-1}.primer-code{color:var(--green-600);font-weight:850;letter-spacing:.3px}.sequence-code{display:inline-block;max-width:340px;overflow:hidden;padding:6px 8px;border-radius:7px;color:#26516b;background:#edf8f7;font-family:"SFMono-Regular",Consolas,monospace;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.file-pills{display:flex;gap:5px}.file-pills a{padding:4px 7px;border-radius:6px;color:var(--blue-700);background:var(--blue-100);font-size:8.5px;font-weight:800}.primer-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;margin-bottom:18px}.primer-summary{overflow:hidden}.primer-sequence-card{display:flex;flex-direction:column;gap:9px;padding:23px;border-bottom:1px solid var(--slate-200);background:linear-gradient(135deg,#f7fffd,#f1f7ff)}.primer-sequence-card span{color:var(--slate-500);font-size:8.5px;font-weight:850;text-transform:uppercase}.primer-sequence-card code{overflow-wrap:anywhere;color:#164f58;font-size:15px;line-height:1.6}.primer-photo-card{overflow:hidden;padding:12px}.primer-photo-card img{width:100%;height:235px;display:block;border-radius:10px;object-fit:cover}.primer-photo-card span{display:block;padding:10px 3px 2px;color:var(--slate-500);font-size:9px;font-weight:750;text-align:center}.primer-edit-panel{max-width:none}
.protocol-upload-panel{overflow:hidden;margin-bottom:20px;scroll-margin-top:95px}.protocol-upload-form{padding:22px}.protocol-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px 16px}.protocol-field-title{grid-column:span 4}.protocol-field-author{grid-column:span 3}.protocol-field-culture{grid-column:span 2}.protocol-field-year{grid-column:span 1}.protocol-field-file{grid-column:span 4}.protocol-field-project{grid-column:span 3}.protocol-list-panel{overflow:hidden}.protocol-list-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.7fr) 170px;padding:10px 20px;color:var(--slate-500);background:#fafbfd;font-size:8.5px;font-weight:850;letter-spacing:.6px;text-transform:uppercase}.protocol-list-head span:last-child{text-align:right}.protocol-list-body table{width:100%;border-collapse:collapse}.protocol-list-body td{padding:0}.protocol-row{display:grid;grid-template-columns:42px minmax(220px,1.4fr) minmax(240px,.7fr) 170px;align-items:center;gap:13px;padding:15px 20px;border-top:1px solid var(--slate-100)}.protocol-row:hover{background:#fbfcfe}.protocol-file-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:10px;color:var(--red-600);background:var(--red-100);font-size:8px;font-weight:900}.protocol-copy{min-width:0;display:flex;flex-direction:column}.protocol-copy strong{overflow:hidden;font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.protocol-copy span{margin-top:4px;color:var(--slate-500);font-size:9px}.protocol-tags{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.protocol-tags b,.protocol-tags span{padding:5px 7px;border-radius:7px;font-size:8.5px}.protocol-tags b{color:var(--green-600);background:var(--green-100)}.protocol-tags span{color:var(--amber-600);background:var(--amber-100)}.protocol-actions{display:flex;justify-content:flex-end;gap:6px}.protocol-actions form{margin:0}.protocol-actions .button{min-height:34px;padding:7px 11px}.protocol-text-panel{overflow:hidden}.protocol-content{padding:24px;color:var(--slate-700);font-size:11px;line-height:1.75}
.bench-tools{overflow:hidden}.tool-tabs{display:flex;overflow-x:auto;padding:9px;border-bottom:1px solid var(--slate-200);background:#f5f7fa}.tool-tabs button{min-height:38px;padding:8px 14px;border:0;border-radius:9px;color:var(--slate-600);background:transparent;font-size:10px;font-weight:750;white-space:nowrap}.tool-tabs button:hover{color:var(--blue-700);background:#fff}.tool-tabs button.is-active{color:#fff;background:linear-gradient(135deg,var(--blue-600),#1d67cf);box-shadow:0 5px 13px rgba(38,116,232,.2)}.tool-workspace{min-height:560px;padding:38px;background:radial-gradient(circle at 50% 10%,#fff,transparent 48%),#f5f7fa}.tool-pane{max-width:980px;margin:0 auto}.tool-pane>header{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 auto 25px;text-align:left}.tool-pane header h3{margin:0 0 5px;font-size:19px}.tool-pane header p{margin:0;color:var(--slate-500);font-size:10.5px}.tool-symbol{width:45px;height:45px;display:grid;place-items:center;flex:0 0 45px;border-radius:13px;color:var(--blue-700);background:var(--blue-100);font-size:10px;font-weight:900}.calculator-card{max-width:720px;margin:0 auto;overflow:hidden;border:1px solid var(--slate-200);border-radius:16px;background:#fff;box-shadow:var(--shadow-md)}.calculator-wide{max-width:920px}.calculator-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:24px}.calculator-fields label{display:flex;flex-direction:column;gap:7px}.calculator-fields label>span{color:var(--slate-700);font-size:9.5px;font-weight:800}.calculator-fields label>div{display:flex;min-height:42px;overflow:hidden;border:1px solid var(--slate-300);border-radius:9px;background:#fff}.calculator-fields input,.calculator-fields select{min-width:0;flex:1;padding:8px 10px;border:0;outline:0;color:var(--slate-900);background:#fff;font-size:11px}.calculator-fields select{max-width:95px;border-left:1px solid var(--slate-200);color:var(--slate-600);background:#fafbfd}.fixed-unit,.unit-mirror{display:flex;align-items:center;padding:0 10px;border-left:1px solid var(--slate-200);color:var(--slate-500);background:#fafbfd;font-size:9px;white-space:nowrap}.calculator-actions{display:flex;justify-content:center;gap:9px;padding:16px 24px;border-top:1px solid var(--slate-200);background:#fafbfd}.calculator-actions .button{min-width:150px}.calculator-result{display:none;margin:0 24px 24px;padding:17px;border-radius:12px}.calculator-result.is-ready,.calculator-result.is-error{display:block}.calculator-result.is-ready{border:1px solid #b9ead8;color:#096a4d;background:var(--green-100)}.calculator-result.is-error{border:1px solid #f4c4c9;color:#a82936;background:var(--red-100)}.calculator-result>strong{display:block;margin-bottom:9px;font-size:11px}.calculator-result>span{font-size:9.5px}.calculator-result p{display:flex;justify-content:space-between;gap:18px;margin:0;padding:7px 0;border-top:1px solid rgba(8,151,109,.13);font-size:9.5px}.calculator-result p b{text-align:right}.pcr-fields{grid-template-columns:repeat(4,1fr)}.calculation-note{margin:12px 0 0;color:var(--slate-500);font-size:9px;text-align:center}
@media(max-width:1100px){.primer-form-grid,.protocol-form-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.primer-form-grid>label,.protocol-form-grid>label{grid-column:span 3}.primer-field-sequence,.primer-field-notes{grid-column:1/-1}.primer-detail-layout{grid-template-columns:1fr}.primer-photo-card{max-width:380px}.protocol-list-head{display:none}.protocol-row{grid-template-columns:42px minmax(0,1fr) auto}.protocol-tags{grid-column:2}.protocol-actions{grid-column:3;grid-row:1/3}.pcr-fields{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.primer-form-grid,.protocol-form-grid{grid-template-columns:1fr}.primer-form-grid>label,.protocol-form-grid>label{grid-column:1}.primer-intro .intro-actions{flex-direction:column-reverse}.protocol-row{grid-template-columns:38px minmax(0,1fr);padding:13px}.protocol-tags{grid-column:2}.protocol-actions{grid-column:1/-1;grid-row:auto;justify-content:stretch}.protocol-actions .button,.protocol-actions form{flex:1}.protocol-actions form .button{width:100%}.tool-workspace{min-height:500px;padding:24px 14px}.tool-pane>header{align-items:flex-start}.calculator-fields,.pcr-fields{grid-template-columns:1fr}.calculator-actions{flex-direction:column}.calculator-actions .button{width:100%}.calculator-result p{align-items:flex-start;flex-direction:column;gap:3px}}
@media print{.tools-intro,.tool-tabs,.calculation-note,.calculator-actions{display:none!important}.bench-tools{border:0;box-shadow:none}.tool-workspace{min-height:0;padding:0;background:#fff}.calculator-card{border:0;box-shadow:none}.calculator-fields{padding:10mm 0}.calculator-result{margin:0}}

/* Mapa visual da posição de primers e oligos */
.primer-detail-layout{grid-template-columns:minmax(0,1fr) 360px}.primer-detail-side{display:flex;flex-direction:column;gap:18px}.primer-position-card{overflow:hidden;padding:18px}.primer-position-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid var(--slate-200)}.primer-position-head>div{display:flex;flex-direction:column}.primer-position-head span{color:var(--slate-500);font-size:8px;font-weight:850;text-transform:uppercase}.primer-position-head strong{margin-top:4px;font-size:14px}.primer-position-head>b{padding:6px 8px;border-radius:7px;color:var(--blue-700);background:var(--blue-100);font-size:8.5px}.primer-map-legend{display:flex;justify-content:center;gap:16px;padding:13px 0 10px;color:var(--slate-600);font-size:8px;font-weight:750}.primer-map-legend span{display:flex;align-items:center;gap:5px}.primer-map-legend i{width:8px;height:8px;border-radius:50%}.primer-position-map{display:grid;grid-template-columns:14px repeat(12,minmax(0,1fr));align-items:center;gap:4px}.primer-map-column,.primer-map-row{color:var(--slate-600);font-size:7px;text-align:center}.primer-map-cell{position:relative;width:100%;aspect-ratio:1;border:1px solid #cfd8e2;border-radius:50%;background:#f7f9fb}.primer-map-cell.is-occupied{border-color:#e8525d;background:#e8525d}.primer-map-cell.is-current{border-color:#0aaa75;background:#20bd7a;box-shadow:0 0 0 3px rgba(32,189,122,.18),inset 0 0 0 3px rgba(255,255,255,.35)}.primer-map-cell i{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.primer-position-card>p{margin:13px 0 0;color:var(--slate-500);font-size:8.5px;text-align:center}.primer-position-card>p strong{color:var(--green-600)}
@media(max-width:1100px){.primer-detail-layout{grid-template-columns:1fr}.primer-detail-side{display:grid;grid-template-columns:minmax(320px,420px) minmax(260px,380px)}}
@media(max-width:680px){.primer-detail-side{display:flex}.primer-position-card{padding:14px}.primer-position-map{gap:3px}}

/* Consulta rápida e conteúdo de equipamentos */
.readonly-chip{display:inline-flex;align-items:center;padding:8px 11px;border:1px solid #bfe5d7;border-radius:999px;color:var(--green-600);background:var(--green-100);font-size:9px;font-weight:850}.consultation-search-panel{overflow:hidden;margin-bottom:18px}.consultation-search{display:flex;align-items:center;gap:9px;padding:20px}.consultation-search>label{height:46px;display:flex;align-items:center;gap:10px;flex:1;padding:0 14px;border:1px solid var(--slate-300);border-radius:11px;background:#fff}.consultation-search>label:focus-within{border-color:#6ca2ee;box-shadow:0 0 0 3px rgba(63,131,248,.1)}.consultation-search>label>span{color:var(--slate-500);font-size:20px}.consultation-search input{width:100%;border:0;outline:0;color:var(--slate-900);background:transparent;font-size:11.5px}.consultation-tabs{display:flex;gap:4px;overflow-x:auto;padding:0 20px 16px}.consultation-tabs a{display:flex;align-items:center;gap:7px;padding:9px 12px;border-radius:9px;color:var(--slate-600);font-size:9.5px;font-weight:800;white-space:nowrap}.consultation-tabs a:hover{color:var(--blue-700);background:var(--blue-100)}.consultation-tabs a.is-active{color:#fff;background:var(--blue-600)}.consultation-tabs b{min-width:20px;padding:3px 5px;border-radius:999px;background:rgba(127,141,161,.16);font-size:8px;text-align:center}.consultation-section{overflow:hidden;margin-bottom:18px}.consultation-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:15px}.consultation-card{display:grid;grid-template-columns:38px minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:89px;padding:14px;border:1px solid var(--slate-200);border-radius:12px;background:#fbfcfe;transition:.16s ease}.consultation-card:hover{border-color:#aac7f0;background:var(--blue-100);transform:translateY(-1px)}.consultation-card>div{min-width:0;display:flex;flex-direction:column}.consultation-card strong{overflow:hidden;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.consultation-card small{overflow:hidden;margin-top:4px;color:var(--slate-500);font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.consultation-card p{overflow:hidden;margin:6px 0 0;color:var(--slate-600);font-size:8.8px;text-overflow:ellipsis;white-space:nowrap}.consultation-card>b{color:var(--blue-600);font-size:16px}.consultation-kind{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:10px;font-size:8px;font-weight:900}.sample-kind{color:var(--violet-600);background:var(--violet-100)}.primer-kind{color:var(--green-600);background:var(--green-100)}.equipment-kind{color:var(--blue-700);background:var(--blue-100)}.consultation-empty{margin-top:18px}
.equipment-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:13px;margin-bottom:18px}.equipment-metrics>div{position:relative;overflow:hidden;padding:17px 19px}.equipment-metrics span{color:var(--slate-500);font-size:8.5px;font-weight:800;text-transform:uppercase}.equipment-metrics>div>strong{display:block;margin:4px 0 2px;font-size:22px}.equipment-metrics small{color:var(--slate-500);font-size:8.5px}.equipment-status{width:max-content;padding:6px 9px!important;border-radius:999px;font-size:9px!important}.status-available{color:var(--green-600);background:var(--green-100)}.status-in_use{color:var(--blue-700);background:var(--blue-100)}.status-maintenance{color:var(--amber-600);background:var(--amber-100)}.status-inactive{color:var(--slate-600);background:var(--slate-100)}.equipment-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px}.equipment-content-column,.equipment-side-column{display:flex;flex-direction:column;gap:18px}.equipment-contents{overflow:hidden}.equipment-content-search{display:flex;align-items:center;gap:9px;padding:15px 20px;border-bottom:1px solid var(--slate-200);background:#fbfcfe}.equipment-content-search .search-box{flex:1;width:auto}.equipment-section-title{display:flex;align-items:center;gap:10px;padding:18px 20px 10px}.equipment-section-title>div{display:flex;flex-direction:column}.equipment-section-title strong{font-size:11px}.equipment-section-title small{margin-top:2px;color:var(--slate-500);font-size:8.5px}.equipment-items-table{border-bottom:1px solid var(--slate-200)}.equipment-qr-card{display:flex;align-items:center;flex-direction:column;padding:20px;text-align:center}.equipment-qr-card h3{margin:5px 0 13px;font-size:15px}.equipment-qr-card img{width:205px;height:205px;padding:8px;border:1px solid var(--slate-200);border-radius:13px;background:#fff}.equipment-qr-card>strong{margin-top:10px;font-size:16px;letter-spacing:.5px}.equipment-qr-card p{margin:7px 0 14px;color:var(--slate-500);font-size:8.5px;line-height:1.5}.equipment-qr-card .button{width:100%}.equipment-info-card,.equipment-reservations{overflow:hidden}.equipment-info-card dl{margin:0;padding:7px 18px 15px}.equipment-info-card dl>div{padding:10px 0;border-bottom:1px solid var(--slate-100)}.equipment-info-card dt{color:var(--slate-500);font-size:7.5px;font-weight:850;text-transform:uppercase}.equipment-info-card dd{margin:3px 0 0;color:var(--slate-700);font-size:9.5px;font-weight:650}.equipment-reservations>div:last-child{padding:10px 18px 16px}.equipment-reservations p{display:flex;flex-direction:column;margin:0;padding:9px 0;border-bottom:1px solid var(--slate-100)}.equipment-reservations p strong{font-size:9px}.equipment-reservations p span,.equipment-reservations small{margin-top:3px;color:var(--slate-500);font-size:8.5px}
.theme-toggle{height:36px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--slate-200);border-radius:999px;color:var(--slate-600);background:#fff}.theme-toggle:hover{color:var(--blue-700);border-color:#aac7f0}.theme-toggle span{font-size:15px}.theme-toggle b{font-size:8.5px;white-space:nowrap}
@media(max-width:1100px){.consultation-cards{grid-template-columns:1fr}.equipment-metrics{grid-template-columns:1fr 1fr}.equipment-detail-layout{grid-template-columns:1fr}.equipment-side-column{display:grid;grid-template-columns:1fr 1fr}.equipment-qr-card{grid-row:span 2}}
@media(max-width:680px){.consultation-search{align-items:stretch;flex-direction:column}.consultation-search>label{min-height:46px;flex:none}.consultation-search .button{width:100%}.consultation-tabs{padding-left:12px;padding-right:12px}.consultation-cards{padding:10px}.consultation-card{grid-template-columns:34px minmax(0,1fr) 15px;padding:11px}.equipment-metrics{grid-template-columns:1fr 1fr}.equipment-detail-layout,.equipment-side-column{display:block}.equipment-side-column>section{margin-top:16px}.equipment-content-search{align-items:stretch;flex-direction:column}.equipment-content-search .button{width:100%}.theme-toggle b{display:none}.theme-toggle{width:36px;justify-content:center;padding:0}.connection-dot{display:none}}

/* Tema escuro persistente */
:root[data-theme="dark"]{color-scheme:dark;--blue-700:#7db0ff;--blue-600:#5595f5;--blue-500:#6da4fa;--blue-100:#1b3657;--green-600:#49d3a4;--green-100:#183f37;--amber-600:#f3b653;--amber-100:#46371e;--red-600:#ff7c88;--red-100:#4b2830;--violet-600:#b29cff;--violet-100:#322d55;--slate-900:#edf4fb;--slate-700:#c5d1df;--slate-600:#a5b5c7;--slate-500:#8496aa;--slate-300:#425166;--slate-200:#2d3b4d;--slate-100:#202d3c;--surface:#142131;--canvas:#0d1724;--shadow-sm:0 2px 8px rgba(0,0,0,.2);--shadow-md:0 12px 32px rgba(0,0,0,.3)}
[data-theme="dark"] .topbar,[data-theme="dark"] .metric-card,[data-theme="dark"] .button-muted,[data-theme="dark"] .theme-toggle,[data-theme="dark"] .consultation-search>label,[data-theme="dark"] .form-control,[data-theme="dark"] .form-select,[data-theme="dark"] .field-group input,[data-theme="dark"] .field-group select,[data-theme="dark"] .field-group textarea,[data-theme="dark"] .calculator-card,[data-theme="dark"] .calculator-fields label>div,[data-theme="dark"] .calculator-fields input,[data-theme="dark"] .calculator-fields select{color:var(--slate-900);background:#172536}
[data-theme="dark"] .data-table th,[data-theme="dark"] .panel-foot,[data-theme="dark"] .form-panel-head,[data-theme="dark"] .form-actions,[data-theme="dark"] .project-form-actions,[data-theme="dark"] .resource-toolbar,[data-theme="dark"] .map-selector,[data-theme="dark"] .location-save-form,[data-theme="dark"] .equipment-content-search,[data-theme="dark"] .calculator-actions,[data-theme="dark"] .tool-tabs{background:#111e2d}
.traceability-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;padding:20px}.traceability-columns>div{display:flex;flex-direction:column;gap:7px;padding:14px;border:1px solid var(--slate-200);border-radius:12px;background:var(--slate-50)}.traceability-columns h4{margin:0 0 4px;color:var(--slate-700);font-size:10px}.traceability-columns a,.traceability-columns span{font-size:9px}.detail-copy h4{margin:18px 0 6px;color:var(--slate-700)}[data-theme="dark"] .traceability-columns>div{background:#111e2d}
[data-theme="dark"] .search-box,[data-theme="dark"] .consultation-card,[data-theme="dark"] .quick-grid a,[data-theme="dark"] .checkbox-field,[data-theme="dark"] .flow-cards>div{background:#172536}
[data-theme="dark"] .consultation-card:hover,[data-theme="dark"] .quick-grid a:hover,[data-theme="dark"] .data-table tbody tr:hover{background:#1b3048}
[data-theme="dark"] .tool-workspace{background:radial-gradient(circle at 50% 10%,#18283a,transparent 48%),#101b29}
[data-theme="dark"] .primer-sequence-card{background:linear-gradient(135deg,#132b2d,#15283e)}[data-theme="dark"] .sequence-code{color:#8fe1d7;background:#18383a}[data-theme="dark"] .primer-map-cell{border-color:#536276;background:#172536}[data-theme="dark"] .danger-zone{background:#301e25}[data-theme="dark"] .login-panel{background:#142131}[data-theme="dark"] .label-filters select{color:var(--slate-900);background:#172536}
[data-theme="dark"] input::placeholder,[data-theme="dark"] textarea::placeholder{color:#71859b}

/* Permissões individuais */
.user-access-form{display:flex;flex-direction:column;gap:18px}.user-account-panel{max-width:none}.user-account-panel .resource-form{padding-bottom:24px}.permission-panel{overflow:hidden}.permission-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid var(--slate-200);background:linear-gradient(135deg,#fbfdff,#f2f7ff)}.permission-head h3{margin:4px 0;font-size:16px}.permission-head p,.special-permissions-head p,.permission-foot p{margin:0;color:var(--slate-500);font-size:9.5px}.permission-mode-badge{flex:none;padding:7px 10px;border-radius:999px;color:var(--slate-600);background:var(--slate-100);font-size:8.5px;font-weight:850;text-transform:uppercase}.permission-mode-badge.is-custom{color:var(--violet-600);background:var(--violet-100)}.permission-errors{margin:18px 24px 0}.permission-options{display:grid;grid-template-columns:1fr 1fr minmax(230px,.8fr);gap:14px;padding:20px 24px}.permission-option{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid var(--slate-200);border-radius:10px;background:var(--slate-50)}.permission-option input{flex:none;width:17px;height:17px;margin-top:1px;accent-color:var(--blue-600)}.permission-option>span{display:flex;flex-direction:column;gap:3px}.permission-option strong{color:var(--slate-800);font-size:9.5px}.permission-option small,.permission-copy small{color:var(--slate-500);font-size:8.5px;line-height:1.45}.permission-option em,.permission-table em{color:var(--red-600);font-size:8px;font-style:normal}.permission-option-main{border-color:#bcd5f7;background:var(--blue-100)}.permission-copy{justify-content:center}.permission-table-wrap{overflow-x:auto;margin:0 24px;border:1px solid var(--slate-200);border-radius:12px}.permission-table{width:100%;min-width:850px;border-collapse:collapse}.permission-table th,.permission-table td{padding:10px 8px;border-bottom:1px solid var(--slate-100);text-align:center}.permission-table thead th{position:sticky;top:0;color:var(--slate-500);background:var(--slate-50);font-size:8px;font-weight:850;text-transform:uppercase}.permission-table thead th:first-child,.permission-table tbody th{text-align:left}.permission-table tbody th{width:210px;padding-left:14px;color:var(--slate-700);font-size:9.5px}.permission-table tbody tr:hover{background:var(--blue-100)}.permission-table input{width:16px;height:16px;accent-color:var(--blue-600)}.permission-table input:disabled,.special-permissions input:disabled{opacity:.45}.special-permissions{margin:20px 24px;border:1px solid var(--slate-200);border-radius:12px;overflow:hidden}.special-permissions-head{padding:15px 17px;border-bottom:1px solid var(--slate-200);background:var(--slate-50)}.special-permissions-head h4{margin:0 0 3px;font-size:11px}.special-permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px}.special-permission-grid .permission-option{min-height:47px;align-items:center}.permission-foot{padding:14px 24px;border-top:1px solid var(--slate-200);background:var(--slate-50)}.sticky-form-actions{position:sticky;bottom:12px;z-index:5;display:flex;justify-content:flex-end;gap:9px;padding:13px 14px;border:1px solid var(--slate-200);border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 10px 32px rgba(23,42,70,.13);backdrop-filter:blur(10px)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.access-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.access-tag{padding:4px 7px;border-radius:999px;color:var(--slate-600);background:var(--slate-100);font-size:7.8px;font-weight:800}.access-tag.is-custom{color:var(--violet-600);background:var(--violet-100)}.access-tag.is-scoped{color:var(--amber-600);background:var(--amber-100)}
[data-theme="dark"] .permission-head{background:linear-gradient(135deg,#152436,#172b42)}[data-theme="dark"] .permission-option,[data-theme="dark"] .special-permissions-head,[data-theme="dark"] .permission-table thead th,[data-theme="dark"] .permission-foot{background:#111e2d}[data-theme="dark"] .permission-option-main{background:#182f4d}[data-theme="dark"] .sticky-form-actions{background:rgba(20,33,49,.94)}
@media(max-width:1050px){.permission-options{grid-template-columns:1fr 1fr}.permission-copy{grid-column:1/-1}.special-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.permission-head{align-items:flex-start;flex-direction:column}.permission-options,.special-permission-grid{grid-template-columns:1fr}.permission-copy{grid-column:auto}.permission-table-wrap,.special-permissions{margin-left:14px;margin-right:14px}.sticky-form-actions{flex-direction:column-reverse}.sticky-form-actions .button{width:100%}}
@media print{.equipment-intro,.equipment-metrics,.equipment-content-column,.equipment-info-card,.equipment-reservations,.theme-toggle{display:none!important}.equipment-detail-layout{display:block}.equipment-side-column{display:block}.equipment-qr-card{max-width:85mm;margin:15mm auto;border:1px solid #ccd5e1!important;color:#172437!important;background:#fff!important;box-shadow:none!important}.equipment-qr-card p{color:#61728a!important}.equipment-qr-card .button{display:none}.equipment-qr-card img{width:58mm;height:58mm}}
