:root{--pp-ink:#0c0b14;--pp-paper:#f6f3ec;--pp-lime:#d4ff3a;--pp-pink:#ff4d8d;--pp-violet:#8b6cff;--pp-font-display-stack:var(--pp-font-display), "Arial Black", system-ui, sans-serif;--pp-font-body-stack:var(--pp-font-body), system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Noto Sans CJK SC", sans-serif;--bg:#f3f2f8;--surface:#fff;--text:#0c0b14;--muted:#57536a;--border:#dcd9e8;--primary:#d4ff3a;--primary-text:#0c0b14;--primary-edge:#0c0b14;--link:#5536d6;--focus:#5536d6;--pop:#ff4d8d;--danger:#b42318;--danger-bg:#fef3f2;--ok:#067647;--ok-bg:#ecfdf3;--warn-bg:#fff6d6;--radius:18px;--radius-sm:12px}@media (prefers-color-scheme:dark){:root{--bg:#0c0b14;--surface:#17152a;--text:#f6f3ec;--muted:#bdb8cf;--border:#2e2a48;--primary:#d4ff3a;--primary-text:#0c0b14;--primary-edge:#d4ff3a;--link:#d4ff3a;--focus:#d4ff3a;--pop:#ff4d8d;--danger:#ff8a7a;--danger-bg:#2b1513;--ok:#6ce9a6;--ok-bg:#0f2a1d;--warn-bg:#2b2410;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--pp-font-body-stack);-webkit-font-smoothing:antialiased;overflow-wrap:anywhere;line-height:1.55}::selection{background:var(--pp-lime);color:var(--pp-ink)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}a{color:var(--link);text-underline-offset:3px;font-weight:600}.container{max-width:980px;margin:0 auto;padding:20px 16px}.narrow{max-width:460px}main.narrow{padding-top:clamp(32px,8vw,72px)}.topbar{z-index:10;background:var(--pp-ink);color:var(--pp-paper);border-bottom:3px solid var(--pp-lime);position:sticky;top:0}.topbar .container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:10px;padding-bottom:10px;display:flex}.brand{font-family:var(--pp-font-display-stack);letter-spacing:-.02em;color:var(--pp-paper);align-items:center;gap:10px;font-size:1.2rem;font-weight:800;line-height:1.15;text-decoration:none;display:inline-flex}.brand:before{content:"▶";background:var(--pp-lime);width:30px;height:30px;color:var(--pp-ink);border-radius:9px;flex:none;place-items:center;font-size:.75rem;display:grid;transform:rotate(-8deg)}.nav{flex-wrap:wrap;gap:4px;display:flex}.nav a{color:#cfcadf;border-radius:999px;align-items:center;min-height:40px;padding:8px 10px;font-size:.94rem;font-weight:600;text-decoration:none;display:inline-flex}.nav a:hover{color:var(--pp-paper);background:#f6f3ec14}.nav a[aria-current=page]{background:var(--pp-lime);color:var(--pp-ink)}.topbar :focus-visible{outline-color:var(--pp-lime)}.topbar button.secondary{color:var(--pp-paper);border-color:#f6f3ec4d}.topbar button.secondary:hover{border-color:var(--pp-paper);box-shadow:none;transform:none}.topbar .nav{flex-basis:100%;order:3;gap:2px;margin:0 -10px}.topbar .container>form{margin-left:auto}.topbar .container>form button{min-height:40px;padding:6px 16px}.menu-toggle{display:none}.menu-icon{background:currentColor;width:16px;height:2px;box-shadow:0 -5px,0 5px}@media (max-width:760px){.topbar .container{flex-wrap:wrap;gap:8px}.topbar .brand{flex:1 1 0;min-width:0}.topbar .container>form{margin-left:0}.menu-toggle{min-height:40px;padding:6px 14px;display:inline-flex}.topbar .nav{flex-direction:column;gap:2px;margin:0;padding:6px 0 4px;display:none}.topbar .nav[data-open=true]{display:flex}.topbar .nav a{border-radius:12px;min-height:48px}}h1,h2,h3{font-family:var(--pp-font-display-stack);letter-spacing:-.03em;text-wrap:balance;line-height:1.05}h1{margin:12px 0 8px;font-size:clamp(2rem,1.4rem + 2.6vw,3rem);font-weight:800}h2{margin:0 0 12px;font-size:1.4rem;font-weight:700}.muted{color:var(--muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:16px 0;padding:clamp(18px,3vw,28px);box-shadow:0 1px #0c0b140a,0 12px 32px -18px #0c0b1440}form.stack,.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;gap:12px;display:flex}.row>*{flex:180px}.actions{flex-wrap:wrap;gap:10px;display:flex}label{flex-direction:column;gap:6px;font-size:.95rem;font-weight:600;display:flex}input,select,textarea{font:inherit;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);width:100%;min-height:48px;padding:11px 14px;font-weight:400;transition:border-color .15s,box-shadow .15s}input:hover,select:hover,textarea:hover{border-color:var(--muted)}input:focus,select:focus,textarea:focus{border-color:var(--focus);outline:none;box-shadow:0 0 0 4px #8b6cff40}input[type=color]{height:48px;padding:4px}input[type=file]{padding:10px}textarea{resize:vertical;min-height:120px}.hint{color:var(--muted);font-size:.85rem;font-weight:400}button,.button{font:inherit;border:2px solid var(--primary-edge);background:var(--primary);color:var(--primary-text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px 22px;font-weight:700;text-decoration:none;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1);display:inline-flex}button:hover:not(:disabled),.button:hover{box-shadow:4px 4px 0 0 var(--pop);transform:translate(-2px,-2px)}button:active:not(:disabled),.button:active{box-shadow:none;transform:none}button.secondary,.button.secondary{color:var(--text);border-color:var(--border);background:0 0}button.secondary:hover:not(:disabled),.button.secondary:hover{border-color:var(--text);box-shadow:none;transform:none}button.danger{background:var(--danger);border-color:var(--danger);color:#fff}button.danger:hover:not(:disabled){box-shadow:4px 4px 0 0 var(--text)}button:disabled{opacity:.6;cursor:not-allowed}.alert{border-radius:var(--radius-sm);border-left:4px solid;margin:0;padding:12px 14px;font-weight:600}.alert.error{background:var(--danger-bg);color:var(--danger)}.alert.ok{background:var(--ok-bg);color:var(--ok)}.alert.warn{background:var(--warn-bg);color:var(--text);border-left-color:#e0a100}.field-error{color:var(--danger);font-size:.85rem;font-weight:600}.list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.list li{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;transition:border-color .15s;display:flex}.list li:hover{border-color:var(--muted)}.badge{letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:.78rem;font-weight:800;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.badge.succeeded{background:var(--ok-bg);color:var(--ok);border-color:#0000}.badge.failed,.badge.cancelled{background:var(--danger-bg);color:var(--danger);border-color:#0000}.badge.running,.badge.queued,.badge.publishing{background:var(--warn-bg);border-color:#0000}progress{width:100%;height:14px;accent-color:var(--pp-violet)}video{border-radius:var(--radius-sm);background:#000;width:100%;max-height:70vh}.thumb{object-fit:contain;background:var(--bg);border-radius:10px;width:64px;height:64px}.badge.waiting{background:var(--surface)}.badge.due_manual,.badge.draft{background:var(--warn-bg)}.badge.marked_posted,.badge.published_confirmed,.badge.approved,.badge.scheduled{background:var(--ok-bg);color:var(--ok)}.badge.archived{background:var(--surface);color:var(--muted)}.cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.cal .dow{color:var(--muted);text-align:center;font-size:.75rem;font-weight:600}.cal .day{border:1px solid var(--border);background:var(--surface);border-radius:10px;min-height:64px;padding:4px;font-size:.8rem;overflow:hidden}.cal .day.out{opacity:.4}.cal .day.today{border-color:var(--focus);border-width:2px}.cal .day a{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.cal .count{display:none}@media (max-width:640px){.cal .day{min-height:40px}.cal .day a{display:none}.cal .count{color:var(--link);font-weight:700;display:block}}.table-wrap{max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);padding:6px 8px}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}th,td{overflow-wrap:normal}fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);min-width:0;padding:12px}.checks{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;display:grid}.checks label{align-items:center;gap:6px;font-weight:400;display:flex}.share{grid-template-columns:1fr 90px;align-items:center;gap:8px;display:grid}.caption-box{white-space:pre-wrap;word-break:break-word;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px}@media (max-width:640px){th,td{padding:6px 4px}}.auth-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh;display:grid}.auth-shell>main{align-self:center;width:100%}.auth-panel{background:var(--pp-ink);color:var(--pp-paper);flex-direction:column;gap:28px;padding:clamp(28px,5vw,64px);display:flex;position:relative;overflow:hidden}.auth-panel:after{content:"";pointer-events:none;background:radial-gradient(380px circle at var(--mx,75%) var(--my,20%), #d4ff3a1f, transparent 65%), radial-gradient(520px circle at 100% 100%, #8b6cff59, transparent 60%);position:absolute;inset:0}.auth-panel>*{z-index:1;position:relative}.auth-slogan{font-family:var(--pp-font-display-stack);letter-spacing:-.045em;margin:auto 0 0;font-size:clamp(2.6rem,1rem + 4vw,5rem);font-weight:800;line-height:.98}.auth-outline{color:#0000;-webkit-text-stroke:2px var(--pp-paper);font-style:italic}.auth-hl{background:var(--pp-lime);color:var(--pp-ink);border-radius:.12em;padding:0 .12em}.auth-frames{align-items:flex-end;gap:14px;height:120px;display:flex}.auth-frame{background:linear-gradient(150deg, var(--pp-violet), var(--pp-pink));border-radius:10px;animation:4s ease-in-out infinite auth-bob;display:block}.auth-frame.r916{aspect-ratio:9/16;height:120px}.auth-frame.r11{aspect-ratio:1;height:80px;animation-delay:.3s}.auth-frame.r45{aspect-ratio:4/5;height:100px;animation-delay:.6s}.auth-frame.r169{aspect-ratio:16/9;height:68px;animation-delay:.9s}@keyframes auth-bob{50%{transform:translateY(-8px)}}.auth-note{color:#cfcadf;max-width:34ch;margin:0 0 auto}@media (max-width:860px){.auth-shell{grid-template-columns:1fr;min-height:0}.auth-panel{border-bottom:3px solid var(--pp-lime);gap:0;padding:14px 16px}.auth-slogan,.auth-frames,.auth-note{display:none}}button,.button,[data-ripple]{isolation:isolate;position:relative;overflow:hidden}.pp-ripple{z-index:-1;pointer-events:none;opacity:.22;background:currentColor;border-radius:50%;animation:.6s ease-out forwards pp-ripple;position:absolute;transform:scale(0)}@keyframes pp-ripple{to{opacity:0;transform:scale(1)}}.pp-spark{z-index:1000;pointer-events:none;border-radius:50%;width:7px;height:7px;animation:.65s cubic-bezier(.16,1,.3,1) forwards pp-spark;position:fixed}@keyframes pp-spark{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(.2);opacity:0}}.pp-key{animation:.35s ease-out pp-key}@keyframes pp-key{0%{border-color:var(--pp-pink);transform:scale(1.012)}50%{border-color:var(--pp-violet)}to{transform:none}}label{transition:color .15s}label:focus-within{color:var(--link)}label:focus-within .hint{color:var(--muted)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}.pp-ripple,.pp-spark{display:none}.pp-key,.auth-frame{animation:none}}.legal{max-width:720px;padding-top:clamp(24px,6vw,56px);padding-bottom:48px;line-height:1.6}.legal h2{margin-top:1.6em}.legal li{margin:.3em 0}
