.setup-screen { min-height: 100vh; display: grid; place-items: center; padding: 28px; background: #000; }
.setup-card { width: min(100%, 580px); padding: 42px; color: #fff; background: #151515; border-left: 5px solid #fad400; }
.setup-logo { width: 142px; height: auto; margin-bottom: 52px; }
.setup-card .eyebrow { color: #fad400; }
.setup-card h1 { max-width: 440px; margin: 0 0 17px; font-size: 30px; letter-spacing: -.05em; line-height: 1.08; }
.setup-card p { max-width: 470px; color: #c7c7c7; font-size: 13px; line-height: 1.6; }
.setup-card code { padding: 2px 4px; color: #fff; background: #292929; }
.setup-card .button { margin-top: 14px; text-decoration: none; }
.system-status { display: flex; align-items: center; gap: 8px; padding: 6px 9px; color: #a9a9a9; font-size: 10px; }
.system-status span { width: 7px; height: 7px; background: #fad400; }
.owner-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 20px; }
.owner-kpis article { padding: 19px 20px; background: #fff; border-left: 5px solid #fad400; }
.owner-kpis span { display: block; color: #676767; font-size: 10px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.owner-kpis strong { display: block; margin-top: 8px; font-size: 29px; letter-spacing: -.06em; }
.owner-panel { padding: 22px; }
.owner-empty { padding: 30px 0 7px; color: #777; font-size: 12px; }
.owner-grid { display: grid; grid-template-columns: 1.22fr .78fr; gap: 20px; margin-top: 20px; }
.admin-form { display: grid; grid-template-columns: 1fr 1fr .75fr auto; align-items: end; gap: 11px; margin: 20px 0 24px; }
.admin-form label { display: grid; gap: 7px; color: #363636; font-size: 10px; font-weight: 750; }
.admin-form input, .admin-form select, .workplace-form input { min-width: 0; height: 38px; padding: 0 9px; font-size: 11px; }
.admin-form .form-error { grid-column: 1 / -1; margin: -4px 0 0; }
.employee-list-heading { display: flex; justify-content: space-between; align-items: center; padding-top: 18px; border-top: 1px solid #e8e8e8; }
.employee-list-heading h3 { margin: 0; font-size: 13px; }.employee-list-heading span { color: #777; font-size: 10px; }
.employee-list { display: grid; gap: 1px; margin-top: 12px; background: #e9e9e9; }
.employee-row { display: grid; grid-template-columns: 34px 1fr auto; gap: 10px; align-items: center; padding: 10px; background: #fff; }
.employee-row .avatar { width: 32px; height: 32px; }
.employee-row strong { display: block; font-size: 11px; }.employee-row small { display: block; margin-top: 3px; color: #777; font-size: 10px; }.employee-row span { color: #777; font-size: 10px; }
.workplace-form { display: grid; grid-template-columns: 1fr auto; gap: 8px; margin: 20px 0 8px; }
.workplace-list { display: grid; gap: 1px; margin-top: 15px; background: #e9e9e9; }
.workplace-row { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px; background: #fff; font-size: 11px; font-weight: 700; }
.workplace-row button { padding: 4px 7px; border: 0; color: #6a4800; background: #fff3bd; font-size: 10px; font-weight: 700; }
.review-actions { display: flex; justify-content: flex-end; gap: 9px; }.modal--small { width: min(100%, 470px); }
.entry-type-tag { display: inline-block; padding: 4px 6px; color: #333; background: #f0f0f0; font-size: 9px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.entry-type-tag--delegation { color: #5d4500; background: #fff0ad; }.entry-type-tag--leave { color: #1f5134; background: #e7f5e9; }.entry-type-tag--duty { color: #283a74; background: #e9edff; }
.review-button { padding: 7px 8px; border: 0; color: #000; background: #fad400; font-size: 9px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.timesheet-lock-note { margin: 13px 0 0; padding: 10px 12px; border-left: 3px solid #fad400; color: #4b4b4b; background: #fffbea; font-size: 11px; }

@media (max-width: 1040px) { .owner-grid { grid-template-columns: 1fr; }.admin-form { grid-template-columns: 1fr 1fr; }.admin-form button { grid-column: span 2; } }
@media (max-width: 760px) { .owner-kpis { grid-template-columns: 1fr; gap: 8px; }.owner-panel { padding: 17px; }.admin-form { grid-template-columns: 1fr; }.admin-form button { grid-column: auto; }.workplace-form { grid-template-columns: 1fr; }.review-actions { flex-direction: column-reverse; }.review-actions .button { width: 100%; }.setup-card { padding: 30px 25px; }.setup-card h1 { font-size: 26px; } }
