/* Shared by the dashboard and the console: the temp-site's fonts, colours, radii and controls (temp-site/styles.css). */
@font-face{font-family:"Schibsted Grotesk";font-style:normal;font-weight:600 800;font-display:swap;src:url(fonts/SchibstedGrotesk-latin-wght600-800.woff2) format("woff2")}
@font-face{font-family:"Hanken Grotesk";font-style:normal;font-weight:400 600;font-display:swap;src:url(fonts/HankenGrotesk-latin-wght400-600.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/IBMPlexMono-latin-500.woff2) format("woff2")}

:root{
  --brand:#e8401c;
  --bg:#ffffff;--surface:#f6f6f6;--text:#111111;--muted:#5c5c5c;--line:#e5e5e5;--line-strong:#cbcbcb;
  --accent-button:#cc3515;--accent-hover:#b93013;--accent-active:#a72b11;--accent-text:#cc3515;--accent-soft:#fef4f1;
  --good:#1f7a4d;--good-soft:#e8f4ee;--warn:#8a5a00;--warn-soft:#fbf1d8;--bad:#b3261e;--bad-soft:#fdecea;
  --font-heading:"Schibsted Grotesk",system-ui,sans-serif;
  --font-body:"Hanken Grotesk",system-ui,sans-serif;
  --font-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --radius-sm:6px;--radius-md:10px;--radius-lg:16px;
  --ease:cubic-bezier(.22,1,.36,1);
  --shadow-sm:0 1px 2px rgba(20,22,26,.06),0 1px 1px rgba(20,22,26,.04);
  --shadow-md:0 4px 12px rgba(20,22,26,.08),0 2px 4px rgba(20,22,26,.04);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 16px/1.55 var(--font-body);overflow-x:hidden}
p,h1,h2,h3,h4,figure,ul,ol,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
img,video{display:block;max-width:100%}
a{color:inherit}
button,input,textarea,select{font:inherit;color:inherit}
:focus{outline:none}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
[hidden]{display:none!important}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:-1px}
.eyebrow{font:500 12px/1.45 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.note{font-size:14px;line-height:1.5;color:var(--muted)}
.mono{font-family:var(--font-mono);font-size:.92em}
.logo{display:block;height:auto;aspect-ratio:688/142;color:var(--brand)}

.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 20px;border:0;border-radius:var(--radius-md);background:var(--accent-button);color:#fff;font:600 16px/1.15 var(--font-body);text-decoration:none;cursor:pointer;transition:background .12s ease}
.button:hover{background:var(--accent-hover)}
.button:active{background:var(--accent-active)}
.button:disabled,.button[aria-disabled="true"]{opacity:.55;cursor:default}
.button-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 18px;border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--bg);color:var(--text);font:600 15px/1.2 var(--font-body);text-decoration:none;cursor:pointer;transition:border-color .12s ease}
.button-ghost:hover{border-color:var(--text)}
.button-ghost:disabled{opacity:.55;cursor:default}
.button-quiet{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;border:0;background:none;color:var(--text);font:500 15px/1.2 var(--font-body);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:4px;cursor:pointer}
.button-quiet:hover{text-decoration-color:var(--brand)}
.button-danger{background:var(--bad)}
.button-danger:hover{background:#951f18}
.button-sm{min-height:38px;padding:8px 14px;font-size:14px}
.button-block{display:flex;width:100%}

.field{display:grid;gap:6px}
.field label,.field .label{font-weight:600;font-size:15px}
.field .hint{font-size:14px;color:var(--muted)}
.input,.field input:not([type=checkbox]):not([type=radio]):not([type=file]),.field textarea,.field select{width:100%;min-height:48px;padding:11px 14px;border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--bg);font-size:16px;line-height:1.4}
.field textarea{resize:vertical;min-height:110px}
.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible,.input:focus-visible{outline:2px solid var(--brand);outline-offset:0;border-color:var(--brand)}
.error{color:var(--bad);font-size:14px;min-height:1.2em}

.fmts{display:flex;flex-wrap:wrap;gap:8px 16px}
.fmt{display:grid;justify-items:center;gap:5px;font:500 11px/1 var(--font-mono);color:var(--muted)}
.fmt-box{display:block;height:22px;border:1.5px solid var(--text);border-radius:3px}
.fmt-box[data-r="1:1"]{width:22px}.fmt-box[data-r="9:16"]{width:13px}.fmt-box[data-r="4:5"]{width:18px}.fmt-box[data-r="16:9"]{width:39px}

.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;background:var(--surface);color:var(--text);font:600 12px/1.6 var(--font-body);white-space:nowrap}
.badge.good{background:var(--good-soft);color:var(--good)}
.badge.warn{background:var(--warn-soft);color:var(--warn)}
.badge.bad{background:var(--bad-soft);color:var(--bad)}
.badge.accent{background:var(--accent-soft);color:var(--accent-text)}
.badge.dark{background:var(--text);color:#fff}

.toast{position:fixed;left:50%;bottom:24px;z-index:50;transform:translateX(-50%);max-width:min(92vw,520px);padding:12px 18px;border-radius:var(--radius-md);background:var(--text);color:#fff;font-size:15px;box-shadow:var(--shadow-md);transition:opacity .3s ease}
.toast.err{background:var(--bad)}
.toast.out{opacity:0}
.quote{padding:14px 16px;border-left:3px solid var(--brand);background:var(--accent-soft);border-radius:0 var(--radius-md) var(--radius-md) 0;white-space:pre-wrap;overflow-wrap:anywhere}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* The staff console: the old console's business-workspace frame (krowdee/admin/src/shell/shell.css) — dark sidebar,
   top bar, soft page behind white panels — in the temp-site's type and brand colour. */
:root{--page:#f8f9fb;--panel:#ffffff;--raised:#f0f1f5;--cmuted:#656b76;--divider:rgba(27,29,33,.11)}
body{background:var(--page);font-size:14px}
body:not(.authed) .authonly{display:none!important}
.console{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr);background:linear-gradient(to right,#171923 238px,var(--page) 238px)}
body:not(.authed) .console{grid-template-columns:1fr;background:var(--page)}
.console-sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;background:#171923;color:#c3c6d3;display:flex;flex-direction:column;padding:26px 16px 18px}
.console-brand{color:#fff;text-decoration:none;font:800 24px/1 var(--font-heading);letter-spacing:-.04em;padding:0 10px 26px}
.console-brand span{color:#ff8a6b;font-weight:600;letter-spacing:-.02em}
.console-brand.dark{color:var(--text);padding:0}
.console-brand.dark span{color:var(--brand)}
.console-sidebar nav{display:flex;flex-direction:column;gap:16px}
.console-section{display:flex;flex-direction:column;gap:2px}
.console-section-title{font-size:9px;letter-spacing:1.7px;font-weight:600;color:#8a8fa3;margin:0 13px 6px}
.console-sidebar nav a{display:flex;align-items:center;gap:11px;border-radius:7px;padding:9px 13px;color:#bfc3d3;text-decoration:none;font-size:13.5px}
.console-sidebar nav a svg{width:18px;height:18px;flex:none}
.console-sidebar nav a:hover{background:#222531;color:#fff}
.console-sidebar nav a.active{background:#3a2a26;color:#ffd9cf}
.console-sidebar nav a.active svg{color:#ff8a6b}
.console-person{display:flex;align-items:center;gap:11px;margin-top:auto;padding:18px 8px 0;border-top:1px solid #31333f;min-width:0}
.console-person>div{min-width:0}
.console-person strong,.console-person small{display:block}
.console-person strong{font-size:12px;color:#e7e8ef}
.console-person small{font-size:11px;color:#aeb1c0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.console-avatar{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#e5d9bf;color:#54462c;font-weight:600}
.console-body{min-width:0}
.console-topbar{position:sticky;top:0;z-index:10;height:60px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--panel);border-bottom:1px solid var(--divider)}
.console-breadcrumb{font-size:13px;color:var(--cmuted)}
.console-breadcrumb a{color:var(--cmuted);text-decoration:none}
.console-breadcrumb span{margin:0 10px;opacity:.5}
.console-breadcrumb strong{color:var(--text);font-weight:600}
.wrap{max-width:1180px;padding:26px 32px 80px}
.wrap.wide{max-width:1400px}
.note{font-size:13px;color:var(--cmuted)}
.row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.stack{display:grid;gap:14px}

.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--page)}
.login-card{width:min(400px,100%);padding:28px;border:1px solid var(--divider);border-radius:14px;background:var(--panel);box-shadow:var(--shadow-md)}

.ws-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.ws-title{font:700 clamp(24px,2vw,30px)/1.15 var(--font-heading);letter-spacing:-.02em;margin:6px 0 6px}
.ws-heading p{color:var(--cmuted);font-size:13px;max-width:760px}
.ws-eyebrow{font:500 10.5px/1.4 var(--font-mono);letter-spacing:.12em;color:var(--cmuted)}
.ws-back{display:inline-block;margin-bottom:12px;font-size:13px;color:var(--cmuted);text-decoration:none}
.ws-metrics{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.ws-metrics button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:120px;padding:10px 14px;border-radius:10px;border:1px solid var(--divider);background:var(--panel);font:inherit;cursor:pointer;text-align:start}
.ws-metrics button strong{font:700 22px/1.1 var(--font-heading)}
.ws-metrics button span{font-size:11.5px;color:var(--cmuted)}
.ws-metrics button:hover{background:var(--raised)}
.ws-metrics button.on{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}
.ws-metrics button.alarm{border-color:var(--bad)}
.ws-metrics button.alarm strong{color:var(--bad)}

.board{display:grid;grid-template-columns:repeat(6,minmax(165px,1fr));gap:10px;overflow-x:auto;padding-bottom:8px;align-items:start}
.col{display:grid;gap:8px;align-content:start;min-width:0;padding:10px;border-radius:12px;background:var(--raised)}
.col-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font:600 12.5px/1.3 var(--font-body);padding:2px 4px}
.col-n{font:500 11px/1 var(--font-mono);padding:3px 7px;border-radius:99px;background:var(--panel);color:var(--cmuted)}
.cards{display:grid;gap:8px}
.kcard{display:grid;gap:4px;padding:11px 12px;border:1px solid var(--divider);border-left:3px solid transparent;border-radius:9px;background:var(--panel);text-decoration:none;box-shadow:var(--shadow-sm)}
.kcard:hover{border-color:var(--line-strong)}
.kcard.is-late{border-left-color:var(--bad);background:#fffafa}
.k-top{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11.5px;color:var(--cmuted)}
.k-stage{font-size:11px;color:var(--cmuted)}
.k-product{font:700 14.5px/1.25 var(--font-heading);overflow-wrap:anywhere}
.k-meta{font-size:12px;color:var(--cmuted)}
.timer{font:500 11.5px/1.35 var(--font-mono);color:var(--text)}
.timer.late{color:var(--bad)}
.col-empty{font-size:12px;color:var(--cmuted);padding:6px 4px}

.banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:16px;padding:12px 16px;border-radius:10px;background:var(--panel);border:1px solid var(--divider)}
.banner .timer{font-size:14px}
.banner.late{background:var(--bad-soft);border-color:#f2c4c0}
.banner-at{font-size:12px;color:var(--cmuted)}
.studio{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}
.studio-main,.studio-side{display:grid;gap:16px;min-width:0}
.studio-side{position:sticky;top:76px}
.ws-panel{background:var(--panel);border:1px solid var(--divider);border-radius:10px;overflow:hidden}
.ws-panel-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--divider)}
.ws-panel-head h2,.ws-panel.side h2{font:700 14.5px/1.3 var(--font-heading)}
.ws-panel-body{display:grid;gap:14px;padding:16px 18px}
.ws-panel.side{display:grid;gap:12px;padding:16px 18px}
.ws-panel.side dl{display:grid;gap:8px}
.ws-panel.side dl div{display:flex;justify-content:space-between;gap:12px;font-size:13px}
.ws-panel.side dt{color:var(--cmuted)}
.ws-panel.side dd{font-weight:600;text-align:end;overflow-wrap:anywhere}
.ws-panel.danger{border-color:#f2c4c0}
.danger-confirm{display:grid;gap:10px;padding:12px;border-radius:8px;background:var(--bad-soft)}
.reasons{display:grid;gap:4px;border:0;margin:0;padding:0}
.reasons legend{font-weight:600;margin-bottom:4px}
.ws-who{display:flex;align-items:center;gap:12px;min-width:0}
.ws-who strong,.ws-who small{display:block}
.ws-who small{color:var(--cmuted);font-size:12px;overflow-wrap:anywhere}
.ws-who a{text-decoration:none}
.ws-mark{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;border-radius:8px;background:var(--accent-soft);color:var(--accent-text);font:700 15px var(--font-heading)}
.asked{display:grid;gap:6px}
.field textarea{font-size:15px}
.label{font-weight:600;font-size:14px}

.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:14px}
.photo-grid li{display:grid;gap:4px;align-content:start;min-width:0;font-size:13px}
.photo-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;background:var(--raised)}
.ph-missing{display:grid;place-items:center;aspect-ratio:1;border:1px dashed var(--line-strong);border-radius:8px;color:var(--cmuted);font-size:12px}
.uploader{display:inline-flex;flex-wrap:wrap;align-items:center;gap:10px}
.uploader label{cursor:pointer}
.up-status{font:500 12px/1.3 var(--font-mono);color:var(--cmuted)}
.file-list{display:grid;gap:6px}
.file-list.inline{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.file{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:6px 8px;border:1px solid var(--divider);border-radius:8px;background:var(--panel)}
.file img,.file-ic{width:36px;height:36px;border-radius:6px;object-fit:cover;background:var(--raised);display:grid;place-items:center;color:var(--cmuted)}
.file-name{font-weight:600;font-size:13px;overflow-wrap:anywhere;text-decoration:none}
.file-name:hover{text-decoration:underline}
.file-size{font:500 11.5px/1 var(--font-mono);color:var(--cmuted)}
.file .button-quiet{min-height:32px;font-size:12.5px}
.formats{display:grid;gap:10px}
.format-row{display:grid;gap:8px;padding:10px 12px;border-radius:9px;background:var(--raised)}
.format-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.format-head .uploader{margin-left:auto}
.plans{display:grid;gap:14px}
.plans>li{display:grid;gap:8px}
.tl{display:grid}
.tl li{display:grid;grid-template-columns:136px minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px solid var(--divider);font-size:13px}
.tl li:last-child{border-bottom:0}
.tl time{font:500 11.5px/1.5 var(--font-mono);color:var(--cmuted)}
.tl small{display:block;color:var(--cmuted);font-size:11.5px}
.tl li.mail strong{color:var(--cmuted);font-weight:600}
.lines{display:grid;gap:6px;padding-bottom:10px;border-bottom:1px solid var(--divider)}
.lines li{display:flex;justify-content:space-between;gap:12px;font-size:13px}
.lines li span:last-child{font-family:var(--font-mono);white-space:nowrap}
.total{display:flex;justify-content:space-between;align-items:baseline;font-weight:600}
.total strong{font:800 22px/1 var(--font-heading)}
.ws-table-wrap{overflow-x:auto}
.ws-table{width:100%;border-collapse:collapse;font-size:13px}
.ws-table th{text-align:start;padding:11px 16px;font-size:11px;font-weight:600;letter-spacing:.4px;color:var(--cmuted);border-bottom:1px solid var(--divider);white-space:nowrap}
.ws-table td{padding:11px 16px;border-bottom:1px solid var(--divider);vertical-align:middle}
.ws-table tbody tr{cursor:pointer}
.ws-table tbody tr:hover,.ws-table tbody tr:focus-visible{background:var(--raised)}
.ws-table tbody tr:last-child td{border-bottom:0}
.ws-table td .badge+.badge{margin-left:6px}
.quote{font-size:14px}

@media (max-width:1100px){.studio{grid-template-columns:1fr}.studio-side{position:static}}
@media (max-width:760px){
  .console{display:block;background:var(--page)}
  .console-sidebar{position:relative;height:auto;padding:12px 14px;flex-direction:row;align-items:center;gap:14px}
  .console-brand{padding:0;font-size:19px;white-space:nowrap}
  .col-empty{display:none}
  .console-person,.console-section-title{display:none}
  .console-sidebar nav{flex-direction:row;margin-left:auto}
  .console-section{flex-direction:row;gap:4px}
  .console-sidebar nav a{padding:8px 10px;font-size:13px}
  .console-topbar{padding:0 16px;height:52px}
  .wrap,.wrap.wide{padding:18px 16px 60px}
  .ws-heading{flex-direction:column;align-items:flex-start}
  .ws-metrics button{min-width:0;flex:1 0 40%}
  .board{grid-template-columns:1fr;overflow:visible}
  .ws-table{min-width:640px}
  .tl li{grid-template-columns:1fr;gap:2px}
  .file{grid-template-columns:36px minmax(0,1fr) auto}
  .file .file-size{display:none}
}
