:root{--bg:#12161c;--bg-elev:#1a212b;--panel:#222b38;--line:#334155;--text:#e8eef6;--muted:#94a3b8;--accent:#e8a317;--accent-dim:#b8840f;--ok:#34d399;--danger:#f87171;--radius:10px;--font:"Segoe UI",system-ui,sans-serif;--display:"Segoe UI Semibold","Segoe UI",system-ui,sans-serif}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:radial-gradient(1200px 600px at 10% -10%,#2a3344 0,transparent 55%),linear-gradient(165deg,#0f1318,#171d27 45%,#10151c);color:var(--text);font-family:var(--font);font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}.app{display:grid;grid-template-columns:240px minmax(0,1fr) minmax(300px,380px);min-height:100vh}.app-col{display:flex;flex-direction:column;min-width:0}.app-topbar{display:flex;justify-content:flex-end;align-items:center;padding:14px 28px 0}.sidebar{background:linear-gradient(180deg,#161c26,#121820);border-right:1px solid var(--line);padding:28px 18px;display:flex;flex-direction:column;gap:28px;min-height:100vh;position:-webkit-sticky;position:sticky;top:0;max-height:100vh;overflow:auto}.brand{font-family:var(--display);font-size:1.55rem;letter-spacing:.04em;font-weight:700}.brand span{color:var(--accent)}.brand-sub{margin-top:4px;color:var(--muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.nav{display:flex;flex-direction:column;gap:6px}.nav a{padding:10px 12px;border-radius:8px;color:var(--muted);border:1px solid transparent}.nav a:hover{background:rgba(255,255,255,.04);color:var(--text)}.nav a.active{background:rgba(232,163,23,.12);border-color:rgba(232,163,23,.35);color:var(--text)}.nav-footer{margin-top:auto}.nav-section-label{color:var(--muted);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}.nav-future{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.nav-future li{padding:8px 10px;border-radius:8px;border:1px dashed rgba(148,163,184,.25);color:var(--muted);font-size:.8rem;display:flex;justify-content:space-between;gap:8px}.nav-future em{font-style:normal;color:#64748b;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.right-panel{border-left:1px solid var(--line);background:linear-gradient(180deg,#161c26,#121820);padding:20px 16px 28px;display:flex;flex-direction:column;gap:14px;min-height:100vh;position:-webkit-sticky;position:sticky;top:0;max-height:100vh;overflow:auto}.right-panel-head{display:flex;justify-content:space-between;align-items:start;gap:10px}.right-panel-kicker{color:var(--accent);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:650}.right-panel h2{margin:4px 0 0;font-size:1.15rem;font-family:var(--display)}.right-panel-empty{margin:0;line-height:1.5;font-size:.9rem}.right-panel-actions{display:flex;flex-wrap:wrap;gap:8px}.detail-list{margin:0;display:grid;grid-gap:10px;gap:10px}.detail-list>div{display:grid;grid-template-columns:88px 1fr;grid-gap:8px;gap:8px;font-size:.88rem}.detail-list dt{color:var(--muted);margin:0}.detail-list dd{margin:0;white-space:pre-wrap}.pdf-frame-wrap{flex:1 1;min-height:320px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#525659}.pdf-frame{width:100%;height:100%;min-height:420px;border:0;background:#525659}.row-selected td{background:rgba(232,163,23,.12)!important}.panel-title{padding:14px 16px 0;font-weight:650;font-family:var(--display)}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:16px;gap:16px}.ok-msg{color:var(--ok);margin:0 0 12px}.perm-grid{display:grid;grid-gap:10px;gap:10px;padding:4px 0 8px}.perm-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;color:var(--text)!important}.perm-mod{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.perm-mod strong{text-transform:capitalize;min-width:88px}.perm-mod label{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.85rem}.main{padding:28px 32px 48px}.top{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px}.top h1{margin:0;font-family:var(--display);font-size:1.7rem;font-weight:650}.top p{margin:6px 0 0;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:14px;gap:14px;margin-bottom:22px}.stat{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.stat .label{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.stat .value{margin-top:8px;font-size:1.8rem;font-weight:700}.panel{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.toolbar{display:flex;gap:10px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line)}.form input,.form select,.form textarea,.toolbar input[type=search],.toolbar input[type=text]{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px 12px;outline:none;min-width:0}.toolbar input[type=search]{flex:1 1}.form input:focus,.form select:focus,.form textarea:focus,.toolbar input:focus{border-color:var(--accent)}.btn{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px;padding:8px 14px;cursor:pointer}.btn:hover{border-color:#4b5d75}.btn.primary{background:linear-gradient(180deg,#f0b12a,var(--accent-dim));border-color:#c99412;color:#1a1406;font-weight:650}.btn.primary:hover{filter:brightness(1.05)}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:11px 14px;border-bottom:1px solid rgba(51,65,85,.7);vertical-align:top}th{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;background:rgba(0,0,0,.15)}tr:hover td{background:rgba(255,255,255,.02)}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.badge.draft{background:#334155;color:#cbd5e1}.badge.pro_forma{background:rgba(232,163,23,.18);color:#f6d07a}.badge.available,.badge.tax_invoice{background:rgba(52,211,153,.15);color:#6ee7b7}.badge.on_hire{background:rgba(232,163,23,.18);color:#f6d07a}.badge.maintenance{background:rgba(248,113,113,.15);color:#fca5a5}.form{display:grid;grid-gap:12px;gap:12px;padding:16px}.form label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:.82rem}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.empty,.muted{color:var(--muted)}.empty{padding:28px 14px;text-align:center}.landing{min-height:100vh;padding:28px clamp(20px,5vw,64px) 64px;display:grid;grid-template-rows:auto 1fr auto;grid-gap:40px;gap:40px;max-width:1100px;margin:0 auto}.landing-top{display:flex;justify-content:space-between;align-items:center}.landing-hero{align-self:end;max-width:34rem;padding-bottom:8px}.landing-kicker{margin:0 0 12px;color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:650}.landing-hero h1{margin:0;font-family:var(--display);font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.08;letter-spacing:-.02em}.landing-lead{margin:16px 0 0;color:var(--muted);font-size:1.05rem;line-height:1.55;max-width:36ch}.landing-login{max-width:420px;justify-self:start;padding:8px 0 20px}.landing-login h2{margin:18px 18px 0;font-size:1.15rem}.landing-login>.muted{margin:6px 18px 0}.login-error{color:var(--danger);font-size:.9rem}.upill-login{display:inline-flex;align-items:center;padding:8px 14px;border-radius:999px;border:1px solid rgba(232,163,23,.45);color:var(--text);background:rgba(232,163,23,.1);font-weight:600;font-size:.9rem}.upill-login:hover{background:rgba(232,163,23,.18)}.upill-wrap{position:relative}.upill-outer{display:inline-flex;align-items:stretch;border-radius:12px;border:1px solid #e5e7eb;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08)}.upill-outer.open{background:#f8fafc}.upill-avatar-link{display:inline-flex;align-items:center;padding:4px 6px;border-radius:11px 0 0 11px}.upill-avatar{width:36px;height:36px;border-radius:50%;background:#2563eb;color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center}.upill-chev{display:inline-flex;align-items:center;padding:4px 6px;border:none;border-left:1px solid #e5e7eb;border-radius:0 11px 11px 0;background:transparent;cursor:pointer}.upill-chev svg{width:16px;height:16px;color:#6b7280}.upill-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:200;min-width:220px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1),0 2px 8px rgba(0,0,0,.06);padding:4px;color:#111827}.upill-identity{padding:10px 14px 8px;border-bottom:1px solid #f3f4f6}.upill-role{margin:0 0 2px;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.upill-name{margin:0;font-size:13px;font-weight:600}.upill-email,.upill-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.upill-email{margin:2px 0 0;font-size:11px;color:#6b7280}.upill-section{padding:4px 8px}.upill-sep{height:1px;background:#f3f4f6;margin:4px 0}.midas-upill-item{display:flex;align-items:center;gap:9px;width:100%;box-sizing:border-box;padding:8px 12px;margin:0;font-size:13px;font-weight:500;line-height:1.25;text-align:left;color:#111827;text-decoration:none;background:none;border:0;border-radius:9px;cursor:pointer}.midas-upill-item:hover{background:#f1f5f9}.midas-upill-item--danger{color:#b91c1c}.midas-upill-item--danger:hover{background:#fef2f2}.midas-upill-ico{width:16px;height:16px;flex-shrink:0;color:#6b7280}.midas-upill-item--danger .midas-upill-ico{color:#b91c1c}@media (max-width:1200px){.app{grid-template-columns:220px minmax(0,1fr) minmax(260px,320px)}}@media (max-width:980px){.app{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.right-panel,.sidebar{position:static;max-height:none}.right-panel{border-left:0;border-top:1px solid var(--line);min-height:0}.form-row{grid-template-columns:1fr}.app-topbar{padding:12px 16px 0}}