:root{--navy:#122678;--blue:#2652c8;--ink:#172033;--muted:#697386;--line:#dce2ee;--bg:#f5f7fb;--ok:#147d4d;--warn:#a76009;--bad:#b42318}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Thonburi,sans-serif;letter-spacing:0}button,input,textarea{font:inherit}button{cursor:pointer;border:0}.login{min-height:100vh;display:grid;place-items:center;background:#101b46}.login form{width:min(390px,calc(100% - 32px));background:#fff;padding:30px;border-radius:8px}.mark{font-size:12px;font-weight:800;color:var(--blue)}h1{font-size:24px;margin:8px 0}.login p{color:var(--muted);margin:0 0 24px}.login label,.upload label{display:block;font-size:13px;font-weight:700;margin:14px 0 6px}.login input,textarea,input[type=number]{width:100%;border:1px solid var(--line);padding:11px;border-radius:6px}.login button,.primary,.approve,.publish{background:var(--navy);color:#fff;padding:11px 16px;border-radius:6px;font-weight:700}.login button{width:100%;margin-top:20px}.error{color:var(--bad);min-height:20px;margin-top:10px;font-size:13px}header{height:62px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 22px}header div{display:flex;gap:14px;align-items:baseline}header strong{color:var(--navy)}header span{color:var(--muted);font-size:14px}.icon,.secondary{background:#fff;color:var(--navy);border:1px solid var(--line);padding:9px 14px;border-radius:6px;font-weight:700}main{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:calc(100vh - 62px)}aside{border-right:1px solid var(--line);background:#fff;padding:18px}.jobs{margin-top:16px}.job{position:relative;width:100%;display:grid;grid-template-columns:1fr auto;text-align:left;padding:12px;margin-bottom:6px;background:#fff;border:1px solid transparent;border-radius:6px;color:var(--ink)}.job:hover,.job.active{background:#eef3ff;border-color:#cad7f5}.job span{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job time{grid-column:1;font-size:11px;color:var(--muted);margin-top:5px}.status{display:inline-block;width:max-content;padding:3px 7px;border-radius:4px;background:#edf0f5;color:#526075;font-size:11px;font-weight:800}.status.review{background:#fff1d6;color:var(--warn)}.status.approved,.status.published{background:#daf3e5;color:var(--ok)}.status.failed,.status.publish_failed{background:#fee4e2;color:var(--bad)}#workspace{padding:28px;max-width:1200px;width:100%;margin:0 auto}.empty{min-height:60vh;display:grid;place-content:center;text-align:center}.empty p,.muted,.titlebar p,.upload>p{color:var(--muted)}.titlebar{display:flex;justify-content:space-between;gap:20px;margin-bottom:24px}.titlebar h1{margin:9px 0 4px}.titlebar p{margin:0;max-width:720px;white-space:pre-wrap}.platforms{display:flex;gap:6px;align-items:start}.platforms span{border:1px solid var(--line);background:#fff;padding:5px 8px;border-radius:4px;font-size:12px}.upload,.review,.timeline{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px;margin-bottom:18px}.upload h2,.timeline h2,.review h2{font-size:17px;margin:0 0 8px}.drop{min-height:150px!important;border:1px dashed #9dadcc;background:#f8faff;display:grid!important;place-content:center;text-align:center;border-radius:6px}.drop input{margin:0 auto 10px;max-width:260px}.drop span{font-size:12px;color:var(--muted);margin-top:5px}.filelist{margin:14px 0}.filelist div{display:flex;justify-content:space-between;border-bottom:1px solid #edf0f5;padding:9px 4px}.filelist small{color:var(--muted)}.submit{margin-top:8px}.review{display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:24px}.review video{width:100%;max-height:70vh;background:#000;aspect-ratio:9/16;object-fit:contain}.review textarea{margin:12px 0}.actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.approve{background:var(--ok)}.publish{background:#111827;width:100%;margin-top:8px}.timeline>div{display:grid;grid-template-columns:170px 160px 1fr;gap:12px;border-top:1px solid #edf0f5;padding:10px 0;font-size:13px}.timeline time,.timeline span{color:var(--muted)}dialog{border:0;border-radius:8px;padding:0;box-shadow:0 20px 70px #0004;width:min(560px,calc(100% - 30px))}dialog form{padding:24px}dialog h2{margin-top:0}dialog label{display:block;font-size:13px;font-weight:700;margin:12px 0 6px}dialog input,dialog textarea{width:100%;border:1px solid var(--line);border-radius:6px;padding:10px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check{display:flex!important;align-items:center;gap:8px;font-weight:500!important}.check input{width:auto}fieldset{border:1px solid var(--line);border-radius:6px;margin-top:14px;display:flex;gap:16px}fieldset legend{font-size:13px;font-weight:700}.primary:disabled{opacity:.5;cursor:not-allowed}@media(max-width:760px){main{display:block}aside{border-right:0;border-bottom:1px solid var(--line)}#workspace{padding:18px}.review{grid-template-columns:1fr}.titlebar{display:block}.timeline>div{grid-template-columns:1fr}.two{grid-template-columns:1fr}}
