:root{--staff-surface: #fff;--staff-tint: var(--cream);--staff-line: var(--cream-dark);--staff-line-soft: #f0e9de;--staff-field-border: #7d8f9a;--staff-ok: #2f6b45;--staff-ok-bg: #e3efe6;--staff-danger-bg: #f7e7df;--staff-pending-bg: #f6ecdc;--staff-teal-bg: #e1e8ec;--staff-radius: 10px}.auth-wrap :focus-visible,#dashboard :focus-visible,.admin-confirm :focus-visible{outline-color:var(--teal-mid)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:40px;padding:.55rem 1.1rem;border:1.5px solid transparent;border-radius:6px;font:700 .875rem/1.2 var(--sans);white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.btn--primary{background:var(--teal);border-color:var(--teal);color:var(--cream)}.btn--primary:hover{background:var(--teal-deep);border-color:var(--teal-deep)}.btn--secondary{background:var(--staff-surface);border-color:var(--teal-mid);color:var(--teal)}.btn--secondary:hover{background:var(--staff-teal-bg)}.btn--danger{background:var(--staff-surface);border-color:var(--rust);color:var(--rust)}.btn--danger:hover{background:var(--staff-danger-bg)}.btn--ghost{background:transparent;border-color:var(--staff-line);color:var(--ink-soft)}.btn--ghost:hover{border-color:var(--ink-dim);color:var(--ink)}.btn--sm{min-height:32px;padding:.3rem .7rem;font-size:.78rem}.btn--block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.btn[aria-busy=true]{cursor:progress}@media (max-width: 720px),(pointer: coarse){.btn{min-height:44px}.btn--sm{min-height:36px}}.auth-link{background:none;border:none;padding:0;cursor:pointer;font:inherit;font-size:.85rem;color:var(--teal-mid);text-decoration:underline;text-underline-offset:2px}.auth-link:hover{color:var(--teal-deep)}.auth-input,.profile-input,.profile-textarea,.card-notes,.edit-input,.nl-input,.nl-textarea,.sanity-author-select,.sanity-read-input,.sanity-series-input,.sanity-date-input,.sanity-time-input,.backlog-date-input{box-sizing:border-box;max-width:100%;border:1.5px solid var(--staff-field-border);border-radius:6px;background:var(--staff-surface);color:var(--ink);font-family:var(--sans);transition:border-color .15s,box-shadow .15s}.auth-input:focus,.profile-input:focus,.profile-textarea:focus,.card-notes:focus,.edit-input:focus,.nl-input:focus,.nl-textarea:focus,.sanity-author-select:focus,.sanity-read-input:focus,.sanity-series-input:focus,.sanity-date-input:focus,.sanity-time-input:focus,.backlog-date-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-pale);outline:none}.auth-input::-moz-placeholder,.profile-input::-moz-placeholder,.profile-textarea::-moz-placeholder,.card-notes::-moz-placeholder,.nl-input::-moz-placeholder,.nl-textarea::-moz-placeholder{color:var(--ink-dim)}.auth-input::placeholder,.profile-input::placeholder,.profile-textarea::placeholder,.card-notes::placeholder,.nl-input::placeholder,.nl-textarea::placeholder{color:var(--ink-dim)}input[type=checkbox]{accent-color:var(--teal)}.auth-wrap{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.auth-card{width:100%;max-width:380px;padding:2.5rem 2rem;background:var(--staff-surface);border:1px solid var(--staff-line);border-radius:14px;text-align:center;font-family:var(--sans)}.auth-logo{font-size:1.75rem;color:var(--amber);margin-bottom:.5rem}.auth-title{font-size:1.4rem;margin:0 0 1.5rem;color:var(--ink)}.auth-input{width:100%;padding:.75rem .9rem;font-size:1rem;margin-bottom:.75rem}.auth-hint,.role-hint{font-size:.875rem;color:var(--ink-soft);line-height:1.5;margin:0 0 1rem}.role-hint{padding:.75rem 1rem;background:var(--staff-tint);border:1px solid var(--staff-line);border-radius:8px;text-align:left}.auth-switch{font-size:.85rem;color:var(--ink-dim);margin-top:1rem}.auth-card .auth-link{margin-top:.75rem}.session-card{padding:3rem 2rem}.session-status,.dash-checking{font-family:var(--sans);font-size:.95rem;color:var(--ink-dim);margin:0}.auth-error,.profile-error,.ec-error{color:var(--rust);font-family:var(--sans);font-size:.85rem}.auth-error{margin-top:.75rem;min-height:1.2em}.card-msg,.profile-msg,.user-msg,.backlog-msg{font-family:var(--sans);font-size:.8rem;color:var(--ink-dim)}.empty-state{text-align:center;color:var(--ink-dim);padding:3rem 1rem;font-family:var(--sans);font-size:.95rem;line-height:1.6;max-width:34rem;margin:0 auto}.dash-skeleton{height:5.5rem;border-radius:var(--staff-radius);background:var(--staff-line-soft);margin-bottom:1.25rem}.dash-brand{font-family:var(--serif);font-weight:700;font-size:1.1rem;color:var(--ink)}.sub-card{background:var(--staff-surface);border:1px solid var(--staff-line);border-radius:var(--staff-radius);margin-bottom:1.25rem;overflow:hidden}.card-header{padding:1.1rem 1.5rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.card-title{font-size:1.15rem;font-weight:700;color:var(--ink);margin:0 0 .3rem;line-height:1.3}.card-section{padding:1rem 1.5rem;border-top:1px solid var(--staff-line-soft)}.section-label{font-family:var(--sans);font-size:.8rem;font-weight:700;color:var(--ink-soft);margin-bottom:.4rem}.badge{flex-shrink:0;padding:.2rem .65rem;border-radius:999px;font:700 .75rem/1.4 var(--sans);text-transform:capitalize;white-space:nowrap}.badge-pending{background:var(--staff-pending-bg);color:var(--amber-text)}.badge-reviewed{background:var(--staff-teal-bg);color:var(--teal)}.badge-accepted{background:var(--staff-ok-bg);color:var(--staff-ok)}.badge-rejected{background:var(--staff-danger-bg);color:var(--rust)}.badge-published{background:var(--teal-mid);color:var(--cream)}@media (max-width: 600px){.card-header,.card-section{padding-left:1.1rem;padding-right:1.1rem}}
