:root{--bg: #f3f5f1;--ink: #121417;--accent: #1f5eff;--accent-2: #19a87a;--muted: #5f6b7a;--card: #ffffff;--card-edge: #e7ecf3;font-family:Space Grotesk,Sora,IBM Plex Sans,sans-serif}body{margin:0;background:radial-gradient(1200px 600px at 12% 8%,rgba(31,94,255,.1),transparent 55%),radial-gradient(1200px 600px at 90% 12%,rgba(25,168,122,.12),transparent 50%),#f3f5f1;color:var(--ink)}.container{max-width:1100px;margin:0 auto;padding:24px}.change-password-forced{min-height:100vh;display:grid;align-content:center}.change-password-card{max-width:760px}.change-password-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:#0f1520;border-right:1px solid #1f2a3b;padding:24px;display:grid;grid-template-rows:auto auto auto;align-content:start;gap:8px;overflow-y:auto}.sidebar-header{display:grid;gap:4px;padding-bottom:0;border-bottom:none}.sidebar-nav{display:flex;flex-direction:column;gap:6px;margin-top:0}.sidebar-footer{display:grid;gap:10px;padding-top:12px;border-top:1px solid #1f2a3b;margin-top:0}.brand{font-size:20px;font-weight:700;color:#f5f8ff}.role{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#9bb0ca}.sidebar .meta{font-size:12px;color:#c6d2e6;margin-top:-6px}.nav{display:flex;flex-direction:column;gap:8px}.nav a{text-decoration:none;color:#d6e2f5;padding:10px 12px;border-radius:10px;transition:background-color .15s ease,color .15s ease,transform .15s ease;display:block}.nav a.active{background:#1f5eff2e;border:1px solid rgba(31,94,255,.6);color:#fff}.main{padding:24px}.card{background:linear-gradient(180deg,#fffffff2,#fff);border:1px solid var(--card-edge);border-radius:18px;padding:22px;box-shadow:0 18px 48px #11182714}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.sequence-grid,.form-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}.form-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.field-stack{display:grid;gap:12px}.field-row-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.section-stack{gap:12px}.section-actions{margin-top:4px}.search-select{position:relative}.search-options{position:absolute;z-index:20;background:#fff;border:1px solid #d7e0ec;border-radius:10px;box-shadow:0 12px 24px #0f172a1f;width:100%;max-height:220px;overflow:auto;margin-top:6px}.search-option{display:block;width:100%;text-align:left;background:none;border:none;padding:10px 12px;font-size:13px;cursor:pointer}.search-option:hover{background:#f3f6fb}.search-empty{padding:10px 12px;font-size:12px;color:var(--muted)}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:16px}.full-row{grid-column:1 / -1}.button{background:linear-gradient(135deg,var(--accent),#2b7bff);color:#fff;border:none;padding:10px 16px;border-radius:10px;font-weight:600;cursor:pointer;box-shadow:0 10px 20px #1f5eff33;transition:transform .15s ease,box-shadow .15s ease}.button.small{padding:6px 10px;font-size:12px;border-radius:8px;box-shadow:none;background:#1b2b45}.link-button{background:none;border:none;padding:0;color:#9bb0ca;font-size:12px;text-align:left;cursor:pointer}.link-button:hover{color:#fff;text-decoration:underline}.button:hover{transform:translateY(-1px);box-shadow:0 16px 26px #1f5eff47}.button.ghost{background:transparent;color:var(--ink);border:1px solid #c8d3e1;box-shadow:none}.sidebar .button.ghost{color:#d6e2f5;border-color:#2b394f}.sidebar .button.ghost:hover{background:#ffffff14}.sidebar-select{display:grid;gap:6px;font-size:12px;color:#9bb0ca}.sidebar-select select{background:#101826;color:#e6eef9;border:1px solid #2b394f}.mobile-menu-toggle{display:none;position:fixed;top:14px;left:14px;z-index:60;background:#0f1520;color:#e6eef9;border:1px solid #2b394f;padding:8px 12px;border-radius:10px;font-size:12px}.sidebar-backdrop{display:none}.button:disabled{opacity:.7;cursor:not-allowed}input,select{padding:10px;border:1px solid #cfd8e3;border-radius:8px;width:100%;background:#fff;color:var(--ink);font-size:16px}table{width:100%;border-collapse:collapse;table-layout:fixed}th,td{text-align:left;padding:10px;border-bottom:1px solid #eef2f7;vertical-align:top;overflow:hidden}.table-scroll{width:100%;overflow-x:auto}.report-table th,.report-table td{max-width:none;white-space:normal;overflow:visible;text-overflow:clip}.report-table td{word-break:break-word;overflow-wrap:anywhere}.report-table{width:100%;table-layout:fixed}.table-input{width:100%;box-sizing:border-box;min-width:120px}.table-compact th,.table-compact td{padding:6px}.row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.row-actions .button{white-space:nowrap}.checkbox-row{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid #e3e8f0;border-radius:10px;background:#f8fafc;font-weight:600}.checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:#1f6b2a}.worker-form{background:linear-gradient(160deg,#fff,#f5f8fb);border:1px solid #e4ecf3;max-width:980px;margin:0 auto}.worker-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;width:100%;box-sizing:border-box}.worker-form label{display:flex;flex-direction:column;gap:6px;font-weight:600}.worker-form input,.worker-form select{background:#fff;border:1px solid #dbe5ee;border-radius:10px;padding:10px 12px;width:100%;box-sizing:border-box}.worker-form .field-row-2{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.range-row{font-size:14px;color:var(--muted);text-align:left;padding-top:6px}.date-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;align-items:end}.row-move{display:inline-flex;gap:4px}.table-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid #eef2f7}.table-actions-left,.table-actions-right{display:flex;align-items:center;gap:8px}tr{transition:background-color .15s ease}tr:active{background-color:#fff2e4}@media (max-width: 900px){.shell{grid-template-columns:1fr}.sidebar{flex-direction:row;flex-wrap:wrap;align-items:center}.nav{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto}}@media (max-width: 720px){.field-row-2,.sequence-grid,.change-password-grid{grid-template-columns:1fr}}.error{color:#a22820;font-size:14px}.status-pill{display:inline-block;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:600;text-transform:uppercase}.status-draft{background:#fde9e9;color:#a52c2c}.status-submitted,.status-unlocked{background:#fff4da;color:#8b5b00}.status-locked{background:#dcf7ea;color:#0d6a4a}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:50}.modal{background:var(--card);border:1px solid var(--card-edge);border-radius:18px;padding:20px;width:min(960px,94vw);max-height:80vh;overflow:auto;box-shadow:0 24px 60px #0f172a2e}.table-input{background:#fbfdff}.table-compact th,.table-compact td{padding:8px}.table-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.table-card{background:#fff;border:1px solid #e7ecf3;border-radius:14px;padding:12px;display:grid;gap:6px}.table-card .title{font-weight:600;font-size:13px}.table-card .meta{color:var(--muted);font-size:12px}.table-card .actions{display:flex;gap:8px;flex-wrap:wrap}@media (max-width: 900px){.container,.main{padding:16px}.shell{grid-template-columns:1fr}.sidebar{position:fixed;top:0;left:0;height:100vh;width:min(280px,85vw);transform:translate(-105%);transition:transform .2s ease;z-index:55;padding:18px;gap:10px;align-content:start}.sidebar-header{padding-bottom:10px}.sidebar-select{gap:4px}.nav a{padding:6px 12px}.link-button{font-size:13px}.sidebar.open{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;border:none;padding:0;margin:0;z-index:54}.mobile-menu-toggle{display:inline-flex;align-items:center;gap:6px}.table-scroll{overflow-x:hidden}table.responsive{display:block;width:100%}table.responsive thead{display:none}table.responsive tbody{display:grid;gap:12px}table.responsive tr{display:grid;grid-template-columns:1fr;gap:6px;background:#fff;border:1px solid #e7ecf3;border-radius:14px;padding:12px}table.responsive td{display:grid;grid-template-columns:minmax(120px,42%) 1fr;gap:10px;align-items:center;border-bottom:none;padding:6px 0}table.responsive td:before{content:attr(data-label);color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.table-input{min-width:0}.table-input{min-width:140px}.table-actions{flex-direction:column;align-items:stretch}.table-actions-left,.table-actions-right{justify-content:flex-start;flex-wrap:wrap}.form-grid,.grid-2{grid-template-columns:1fr}.table-compact td,.table-compact th{font-size:12px}.table-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.table-card{padding:10px}}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.modal-footer{position:sticky;bottom:-1px;margin-top:16px;padding-top:12px;background:var(--card);border-top:1px solid var(--card-edge);display:flex;justify-content:flex-end;gap:12px}
