:root{--cream:#ecece7;--ink:#1a1718;--line:#d7d5cb;--card:#fbfbf9;--soft:#f3f3ee;--muted:#6e6a63;--sand:#c7a98b;--danger:#b03a2e;--sans:"Instrument Sans",system-ui,-apple-system,sans-serif;--mono:"Chivo Mono",ui-monospace,SFMono-Regular,monospace}*{box-sizing:border-box}html,body{margin:0}body{background:var(--cream);color:var(--ink);font:16px/1.55 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}button{font:inherit;cursor:pointer}.eyebrow{font:500 11.5px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.btn{background:var(--ink);color:var(--cream);font:500 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;border:0;padding:12px 20px;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .2s}.btn:hover{transform:translateY(-2px)}.btn.ghost{color:var(--ink);border:1px solid var(--line);background:0 0}.btn.ghost:hover{border-color:var(--ink)}.btn.sm{padding:9px 14px;font-size:11px}.btn.danger:hover{color:var(--danger);border-color:var(--danger)}.btn:disabled{opacity:.4;cursor:default;transform:none}input,textarea{font:inherit;border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:2px;padding:12px 14px;transition:border-color .2s}input:focus,textarea:focus{border-color:var(--ink);outline:0}textarea{resize:vertical;line-height:1.55}label.f{margin:0 0 18px;display:block}label.f>.lab{font:500 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 7px;display:block}.hide{display:none!important}#login{place-items:center;min-height:100vh;padding:24px;display:grid}#login .box{width:100%;max-width:380px}#login h1{letter-spacing:-.03em;margin:14px 0 6px;font-size:clamp(30px,5vw,40px);font-weight:500;line-height:1.04}#login p.sub{color:var(--muted);margin:0 0 26px}#login .err{color:var(--danger);min-height:20px;margin:4px 0 0;font-size:14px}header.top{z-index:5;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#ecece7e6;justify-content:space-between;align-items:center;padding:16px 28px;display:flex;position:sticky;top:0}header.top .brand{letter-spacing:-.02em;font-size:19px;font-weight:600}header.top .brand small{font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-left:8px}header.top .who{font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-right:12px}main{max-width:1180px;margin:0 auto;padding:40px 28px 100px}.head{justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 30px;display:flex}.head h2{letter-spacing:-.03em;margin:8px 0 0;font-size:clamp(26px,3.4vw,38px);font-weight:500}.grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;display:grid}.card{background:var(--card);border:1px solid var(--line);text-align:left;width:100%;padding:0;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s;display:block;overflow:hidden}.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -24px #1a171880}.card .ph{aspect-ratio:4/3;background:var(--soft);overflow:hidden}.card .ph img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1);display:block}.card:hover .ph img{transform:scale(1.05)}.card .bd{padding:14px 16px 16px}.card .t{letter-spacing:-.01em;margin:0 0 6px;font-size:16px;font-weight:500}.card .meta{font:500 11px/1 var(--mono);letter-spacing:.06em;color:var(--muted);align-items:center;gap:12px;display:flex}.pill{font:500 10px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);color:var(--muted);padding:4px 8px;display:inline-block}.pill.pub{background:var(--ink);color:var(--cream);border-color:var(--ink)}.pill.rev{color:#8a6d2f;background:#f1e7d4;border-color:#e0cca4}.empty{border:1px dashed var(--line);text-align:center;color:var(--muted);background:var(--soft);padding:56px 24px}.ed{grid-template-columns:1fr 1.28fr;align-items:start;gap:44px;display:grid}.panelL{background:var(--card);border:1px solid var(--line);padding:24px}.actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.fase{margin:0 0 30px}.fase .fh{align-items:baseline;gap:12px;margin:0 0 4px;display:flex}.fase .fn{font:500 12px/1 var(--mono);letter-spacing:.12em;color:var(--sand)}.fase h3{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:600}.fase .nota{color:var(--muted);margin:0 0 12px;font-size:13px}.drop{cursor:pointer;background:var(--soft);text-align:center;font:500 12px/1.3 var(--mono);letter-spacing:.04em;color:var(--muted);border:1.5px dashed #c4c1b6;border-radius:3px;justify-content:center;align-items:center;gap:8px;margin:0 0 12px;padding:18px;transition:background .2s,border-color .2s;display:flex}.drop:hover,.drop.over{border-color:var(--ink);color:var(--ink);background:#eaeae3}.thumbs{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:9px;display:grid}.thumb{aspect-ratio:1;background:var(--soft);border:1px solid var(--line);border-radius:2px;position:relative;overflow:hidden}.thumb img,.thumb video{object-fit:cover;width:100%;height:100%;display:block}.thumb .play{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.thumb .play span{color:#fff;background:#1a1718b8;border-radius:50%;place-items:center;width:34px;height:34px;padding-left:2px;font-size:13px;display:grid}.thumb .tag{font:500 9px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#fff;background:#1a1718bf;border-radius:2px;padding:3px 5px;position:absolute;top:4px;left:4px}.thumb .x{color:#fff;opacity:0;background:#1a1718d1;border:0;border-radius:2px;width:23px;height:23px;font-size:15px;line-height:1;transition:opacity .2s;position:absolute;top:4px;right:4px}.thumb:hover .x{opacity:1}.thumb .star{background:#ffffffeb;border:0;border-radius:2px;width:26px;height:23px;font-size:13px;transition:background .2s;position:absolute;bottom:4px;left:4px}.thumb .star.on{background:var(--ink);color:var(--sand)}.muted{color:var(--muted);font-size:13px}.toast{background:var(--ink);color:var(--cream);font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;opacity:0;border-radius:3px;padding:10px 16px;transition:opacity .3s,transform .3s;position:fixed;bottom:20px;right:20px;transform:translateY(8px)}.toast.on{opacity:.95;transform:none}@media (width<=840px){.ed{grid-template-columns:1fr;gap:30px}}
