*{box-sizing:border-box;margin:0;padding:0}
:root{--ink:#242424;--canvas:#E5DCCF;--card:#EDE6DB;--mut:#6b665e;--line:#cabfb0;--gold:#d99a1c;--goldsoft:#f3e8d2;--ox:#8a3a2a;--hot:#E5533D;--hotsoft:#FBE0D8;--hotdeep:#B8361F;
 --head:"Big Shoulders Display","Arial Narrow",Impact,sans-serif}
body{background:var(--canvas);color:var(--ink);font-family:"Instrument Sans",system-ui,sans-serif;line-height:1.45;font-size:15px;-webkit-font-smoothing:antialiased}
.grain{position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.06;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
button{font:inherit;color:inherit}
.loading{padding:60px;text-align:center;color:var(--mut)}
.mono{font-family:"Space Mono",monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
header.top{position:sticky;top:0;z-index:6;background:var(--canvas);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px clamp(18px,4vw,54px) 10px}
.wm{font-family:"Ingo";font-size:28px;letter-spacing:.02em;text-decoration:none;color:inherit}
.who{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.who .em{font:11px "Space Mono",monospace;color:var(--mut)}
.av{width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--canvas);display:grid;place-items:center;font-size:11px;font-weight:600;flex:none;border:0;cursor:pointer}
.av.sm{width:24px;height:24px;font-size:9.5px;cursor:default}
.pill{background:none;border:1px solid var(--line);border-radius:999px;padding:4px 11px;font:500 13px "Instrument Sans",sans-serif;cursor:pointer;color:var(--ink);text-decoration:none;white-space:nowrap}
.pill:hover{border-color:var(--ink)}
.pill.on{background:var(--gold);border-color:var(--gold)}
.pill.danger{color:var(--ox);border-color:var(--ox)}
nav.tabs{display:flex;gap:4px;padding:0 clamp(18px,4vw,54px);overflow-x:auto}
nav.tabs a{padding:10px 14px 12px;text-decoration:none;color:var(--mut);font-weight:500;white-space:nowrap;border-bottom:2px solid transparent}
nav.tabs a.on{color:var(--ink);border-bottom-color:var(--gold)}
nav.tabs a:hover{color:var(--ink)}
main{position:relative;z-index:2;max-width:1220px;margin:0 auto;padding:36px clamp(18px,4vw,54px) 120px}
h1.t{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(52px,10vw,118px);line-height:.88;letter-spacing:.01em}
.tag{margin:14px 0 6px}
.logline{font-size:clamp(18px,2.2vw,23px);line-height:1.35;max-width:44ch;margin:10px 0 22px}
.logline.ph{color:var(--mut);font-style:italic}
.mats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:44px}
.mats a{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--ink);border-radius:999px;padding:8px 16px;text-decoration:none;color:var(--ink);font-weight:500;font-size:14px}
.mats a:hover{background:var(--ink);color:var(--canvas)}
h2{font-size:22px;font-weight:600;letter-spacing:-.01em;margin-bottom:4px}
.sub{color:var(--mut);margin-bottom:18px}
section{margin-bottom:52px}
.two{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:44px}
@media(max-width:900px){.two{grid-template-columns:1fr}}
/* flow */
.flow{display:flex;align-items:stretch;overflow-x:auto;padding:4px 2px 6px}
.stage{flex:1 1 0;min-width:180px;display:flex;flex-direction:column;gap:8px}
.stage>.mono{font-size:10px;margin-bottom:2px;display:flex;justify-content:space-between;align-items:center}
.arr{flex:0 0 38px;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:28px}
@media(max-width:760px){.flow{flex-direction:column}.arr{flex:0 0 30px;transform:rotate(90deg)}.stage{min-width:0}}
.c{position:relative;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 13px;text-decoration:none;color:inherit;display:block}
a.c:hover{border-color:var(--ink)}
.c b{font-weight:600;font-size:15px;display:block;line-height:1.3;padding-right:48px}
.c p{color:var(--mut);font-size:13.5px;margin-top:3px;white-space:pre-line}
.c.done{background:transparent}.c.done b{text-decoration:line-through;text-decoration-color:var(--mut)}
.c.wait{border-style:dashed}
.c.next{border-color:var(--gold);background:var(--goldsoft)}
.c.gate{border:2px solid var(--gold);background:var(--goldsoft);padding:16px}
.c.gate b{font-size:18px}
.c.dream{border-color:var(--ink)}
.key{display:flex;flex-wrap:wrap;gap:16px;margin:-6px 0 16px;font-size:13px;color:var(--mut)}
.key span{display:flex;align-items:center;gap:6px}.key i{width:14px;height:10px;border-radius:3px;border:1px solid var(--line);display:inline-block}
.domino{border:2px solid var(--ink);border-radius:14px;padding:22px;background:var(--card)}
.domino h2{font-size:26px}
.domino .c{background:var(--canvas)}
.domino .c.next,.domino .c.gate{background:var(--goldsoft)}
/* note buttons on anything */
.nb{position:absolute;top:6px;right:6px;background:var(--canvas);border:1px solid var(--line);border-radius:999px;font:600 11px "Instrument Sans",sans-serif;padding:1px 7px;cursor:pointer;color:var(--mut);opacity:0;transition:opacity .15s;z-index:2}
.c:hover .nb,.row:hover .nb,.dreams li:hover .nb,.nb.has,.nb:focus-visible{opacity:1}
@media(hover:none){.nb{opacity:.6}}
.nb.has{color:var(--ink);border-color:var(--ink)}
/* lists */
.list .row{position:relative;display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--line)}
.list .row:last-child{border-bottom:1px solid var(--line)}
.list .row .nb{position:static;flex:none}
.chk{width:18px;height:18px;border:1.5px solid var(--ink);border-radius:4px;flex:none;margin-top:2px;cursor:pointer;background:none}
.chk.on{background:var(--ink)}
.row .tx{flex:1;min-width:0;overflow-wrap:anywhere}.row .tx small{display:block;color:var(--mut);font-size:13px}
.row.dn .tx{text-decoration:line-through;color:var(--mut)}
.owner{font:11px "Space Mono",monospace;color:var(--ink);background:var(--canvas);border:1px solid var(--ink);border-radius:999px;padding:1px 9px;white-space:nowrap}
.due{font:11px "Space Mono",monospace;color:var(--ox);white-space:nowrap}
.due.late{background:var(--ox);color:var(--canvas);padding:1px 6px;border-radius:3px}
.xbtn{background:none;border:0;color:var(--mut);cursor:pointer;font-size:16px;line-height:1;padding:0 2px}
.addrow{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;align-items:center}
.addrow input[type=text]{flex:1 1 220px}
.dreams{border-left:3px solid var(--gold);padding:4px 0 4px 16px;margin-top:12px}
.dreams li{position:relative;list-style:none;margin-bottom:8px;font-size:16px;padding-right:56px}
.donetoggle{margin-top:10px}
/* what's new */
.new{background:var(--goldsoft);border:1px solid var(--gold);border-radius:12px;padding:16px 18px}
.new .list .row{border-color:#e2cfa4}
.new .head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
/* notes */
.cat{font:10px "Space Mono",monospace;letter-spacing:.12em;text-transform:uppercase;border-radius:3px;padding:2px 6px;border:1px solid}
.cat.todo{color:var(--ink);border-color:var(--ink)}
.cat.update{color:var(--mut);border-color:var(--line)}
.cat.question{color:var(--ox);border-color:var(--ox)}
.cat.decision{background:var(--ink);color:var(--canvas);border-color:var(--ink)}
.cat.lead{color:#7a5a12;border-color:var(--gold);background:var(--goldsoft)}
.note{padding:14px 0;border-top:1px solid var(--line)}
.note .h{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.note .h b{font-weight:600}.note .t{color:var(--mut);font-size:13px}
.note .on-item{font-size:13px;color:var(--mut)}
.note .body{white-space:pre-wrap;overflow-wrap:anywhere}
.note .acts{margin-top:8px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.compose{margin-top:14px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px}
.cats{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.cats button{font:500 13px "Instrument Sans",sans-serif;background:var(--canvas);border:1px solid var(--line);border-radius:999px;padding:5px 12px;cursor:pointer}
.cats button.on{background:var(--ink);color:var(--canvas);border-color:var(--ink)}
textarea,input[type=text],input[type=email],input[type=url],select,input[type=date]{font:15px "Instrument Sans",sans-serif;background:var(--canvas);border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:var(--ink)}
textarea{width:100%;min-height:70px;resize:vertical}
select,input[type=date]{font-size:14px;padding:6px 8px}
textarea:focus,input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
.extra{display:none;gap:10px;align-items:center;margin-top:10px;flex-wrap:wrap;font-size:14px;color:var(--mut)}
.extra.on{display:flex}
.btn{background:var(--ink);color:var(--canvas);border:0;border-radius:999px;padding:9px 18px;font:600 14px "Instrument Sans",sans-serif;cursor:pointer;margin-top:10px}
.btn:disabled{opacity:.5}
.inline-todo{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px;font-size:14px;color:var(--mut)}
.inline-todo .btn{margin:0;padding:6px 14px}
/* drawer + overlays */
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100%);background:var(--canvas);border-left:1px solid var(--ink);z-index:15;transform:translateX(102%);transition:transform .2s;display:flex;flex-direction:column;padding:22px 22px 18px;overflow:auto}
.drawer.on{transform:none}
.drawer h3{font-size:20px;font-weight:600;margin:4px 34px 14px 0;line-height:1.25}
.x{position:absolute;top:14px;right:16px;background:none;border:0;font-size:28px;cursor:pointer;line-height:1}
.screen{position:fixed;inset:0;z-index:20;background:rgba(229,220,207,.97);display:flex;align-items:center;justify-content:center;padding:24px}
.panel{max-width:860px;width:100%;max-height:92vh;overflow:auto;position:relative}
.entry{max-width:420px}
.entry .wm{font-size:22px}
.entry h1{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:76px;line-height:.88;margin:14px 0 18px}
.entry input{width:100%;font-size:17px;padding:13px 14px;border:1px solid var(--ink);background:var(--card);margin:8px 0 2px}
.err{color:var(--ox);font-size:14px;margin-top:10px}
table{width:100%;border-collapse:collapse;margin-top:14px;font-size:14px}
th{text-align:left;font:11px "Space Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);padding:8px 6px;border-bottom:1px solid var(--line)}
td{padding:9px 6px;border-bottom:1px solid var(--line);vertical-align:middle}
td input{width:100%;max-width:130px;padding:4px 6px;font-size:14px}
tr.flag td{background:#f0ddd5}
tr.blocked td{opacity:.55}
.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--canvas);padding:10px 18px;border-radius:999px;font-size:14px;z-index:40}
/* Janina's edit mode */
body.edit .c,body.edit .dreams li,body.edit .logline,body.edit .mats,body.edit .ttl{outline:2px dashed var(--gold);outline-offset:3px;cursor:pointer}
body.edit .nb{display:none}
.addcard{border:1.5px dashed var(--gold);border-radius:10px;background:none;padding:8px;color:#7a5a12;cursor:pointer;font-weight:600}
.stage-edit{background:none;border:0;cursor:pointer;color:#7a5a12;font:600 11px "Instrument Sans",sans-serif;text-transform:none;letter-spacing:0}
.form label{display:block;font-size:13px;color:var(--mut);margin:12px 0 4px}
.form input[type=text],.form input[type=url],.form select,.form textarea{width:100%}
.form .row2{display:flex;gap:8px;align-items:center;margin-bottom:6px}
.form .row2 input{flex:1}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* who's here */
.here{display:flex;gap:4px;align-items:center}
.pc{display:inline-grid;place-items:center;border-radius:50%;background:var(--gold);color:var(--ink);font:700 10px "Instrument Sans",sans-serif;flex:none;border:2px solid var(--canvas);cursor:default}
.pc.top{width:28px;height:28px;font-size:11px}
.pc.tab{width:18px;height:18px;font-size:8.5px;margin-left:5px;vertical-align:1px}
.tp:empty{display:none}
.pc.typ{position:absolute;bottom:-9px;right:10px;width:22px;height:22px;font-size:9px;z-index:3;box-shadow:0 0 0 2px var(--gold);animation:pcpulse 1.4s ease-in-out infinite}
.list .row .pc.typ{bottom:4px;right:-4px}
.compose{position:relative}
.dreams li .pc.typ{bottom:-6px}
@keyframes pcpulse{50%{box-shadow:0 0 0 5px rgba(217,154,28,.25)}}
.upd-err{background:#f0ddd5;border:1px solid var(--ox);border-radius:10px;padding:12px 16px;margin-bottom:28px;font-size:14px}
.upd-err code{display:block;margin-top:6px;font:12px "Space Mono",monospace;white-space:pre-wrap;overflow-wrap:anywhere}
/* quick add */
.pill.quickbtn{background:var(--gold);border-color:var(--gold);font-weight:600}
.pill.quickbtn:hover{border-color:var(--ink)}
.quickpanel{max-width:520px}
.quickform textarea{width:100%;min-height:130px;font-size:17px;padding:12px 14px;border:1px solid var(--ink);background:var(--card);border-radius:10px;resize:vertical}
.qhint{margin:8px 0 12px}
.qres{margin-top:12px;font-weight:600;min-height:1.2em}
.qres.ok{color:#3d5a2a}.qres.bad{color:var(--ox)}
.qlinks{margin-top:18px;font-size:14px;color:var(--mut)}
.qlinks a,.linkbtn{color:var(--ink);text-decoration:underline;text-underline-offset:3px;background:none;border:0;padding:0;font:inherit;cursor:pointer}
.qpage{max-width:560px;margin:0 auto;padding:34px 18px 60px;position:relative;z-index:2}
.qtag{font:10px "Space Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);border:1px dashed var(--line);border-radius:999px;padding:1px 7px}
.unsorted{border:1.5px dashed var(--gold);border-radius:12px;padding:16px 18px;margin-bottom:34px}
.urow{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:10px 0;border-top:1px solid var(--line)}
.urow:first-child{border-top:0}
.urow .tx{flex:1 1 240px}
.urow .tx small{display:block;color:var(--mut);font-size:12px;margin-top:2px}
.uacts{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.uacts .btn{margin:0;padding:6px 14px}
.keybox{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}
.keybox code{font:14px "Space Mono",monospace;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:6px 10px;overflow-wrap:anywhere}
.steps{margin:14px 0 10px 20px;line-height:1.55}
.steps li{margin-bottom:9px}
.kwline{font-size:13px;color:var(--mut);margin:-6px 0 22px;cursor:pointer;outline:2px dashed var(--gold);outline-offset:4px;padding:2px 0}
.kwline .mono{margin-right:6px}
.kwline b{color:#7a5a12;margin-left:6px}

/* ===== loud to-dos (filled) ===== */
.list .row.open{background:var(--hotsoft);border:2px solid var(--hot);border-radius:10px;padding:11px 12px;margin-bottom:8px;align-items:center}
.list .row.open + .row.open{border-top:2px solid var(--hot)}
.list .row.open:last-child{border-bottom:2px solid var(--hot)}
.list .row.open .tx{font-weight:600}
.list .row.open .tx small{display:block;font-weight:400;color:var(--mut);font-size:12px;margin-top:2px}
.list .row.open .chk{border:2px solid var(--hot);background:#fff;margin-top:0}
.list .row.open .owner{background:var(--hot);border-color:var(--hot);color:#fff;font-weight:700}
.list .row.open .due{color:var(--hotdeep);font-weight:700}
.list .row.open .nb{background:#fff}
.list .row.dn{opacity:.6}
.count{display:inline-block;background:var(--hot);color:#fff;font:700 13px "Instrument Sans",sans-serif;border-radius:999px;padding:1px 9px;vertical-align:4px;margin-left:4px}
.count.g{background:var(--gold);color:var(--ink)}
.dothis h2{font-size:24px}
.person{color:inherit;font-weight:700;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:3px}
/* just in */
.justin{margin:-8px 0 36px}
.jgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:8px}
.jc{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.jc p{font-size:14px;margin:6px 0 4px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.jc small{color:var(--mut);font-size:12px}
/* avatars */
.pav{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--canvas);font:700 14px "Instrument Sans",sans-serif;flex:none;overflow:hidden;position:relative;border:0}
.pav img{width:100%;height:100%;object-fit:cover}
.pav.sm{width:32px;height:32px;font-size:11px}.pav.xs{width:22px;height:22px;font-size:8.5px}
.pav.big{width:84px;height:84px;font-size:26px;cursor:pointer;overflow:visible}
.pav.big img{border-radius:50%}
.pav .cam{position:absolute;right:-2px;bottom:-2px;width:26px;height:26px;border-radius:50%;background:var(--gold);color:var(--ink);font:700 17px "Instrument Sans";display:grid;place-items:center;border:2px solid var(--canvas)}
/* holding pattern */
.hlist{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
.hrow{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:10px;background:var(--goldsoft);border:1.5px dashed var(--gold);cursor:pointer;flex-wrap:wrap}
.hrow.due-now{border:2px solid var(--hot);background:var(--hotsoft)}
.hrow.done{background:transparent;border:1px solid var(--line);opacity:.7}
.hrow .tx{flex:1 1 180px;font-size:15px;line-height:1.3}
.hrow .tx span{color:var(--ink)}
.hrow .tx small{display:block;color:var(--mut);font-size:12px;margin-top:2px}
.mini{display:inline-flex;gap:3px}.mini i{width:9px;height:9px;border-radius:50%;background:var(--line)}.mini i.on{background:var(--ink)}
.pill2{font:600 12px "Instrument Sans",sans-serif;border-radius:999px;padding:3px 10px;border:1px dashed var(--gold);color:#7a5a12;white-space:nowrap}
.pill2.set{border-style:solid;background:#fff8e8}
.res{font:700 11px "Space Mono",monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--mut)}
.addp{display:block;width:100%;border:1.5px dashed var(--gold);border-radius:10px;background:none;padding:9px;color:#7a5a12;font-weight:600;cursor:pointer;text-align:center}
/* wish list */
.wgroup{margin-bottom:12px}.wrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.wchip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--ink);border-radius:999px;padding:4px 12px 4px 4px;cursor:pointer;background:var(--card);max-width:100%}
.wchip b{font-weight:600;font-size:14px}.wchip small{color:var(--mut);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.wchip em{font:normal 600 11px "Instrument Sans";color:#7a5a12;background:var(--goldsoft);border-radius:999px;padding:1px 7px}
/* money */
.mtable{border-top:1px solid var(--line)}
.mrow{display:grid;grid-template-columns:1fr auto auto 92px;gap:12px;align-items:center;padding:10px 2px;border-bottom:1px solid var(--line);cursor:pointer}
.mrow .nm{display:flex;gap:8px;align-items:center;font-weight:600}
.mrow .amt{font:700 13px "Space Mono",monospace}
.mst{font:600 12px "Instrument Sans";text-align:right;color:var(--mut)}
.mst.committed{color:#3d5a2a}.mst.soft{color:#7a5a12}.mst.passed{text-decoration:line-through}
/* deals */
.deal{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:11px 12px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;cursor:pointer;background:var(--card)}
.deal>div{flex:1 1 200px}.deal small{display:block;color:var(--mut);font-size:12px}
.deal .exp{font:12px "Space Mono",monospace;color:var(--mut)}
.deal.hot{border:2px solid var(--hot);background:var(--hotsoft)}.deal.hot .exp{color:var(--hotdeep);font-weight:700}
/* ready */
details.ready summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;flex-wrap:wrap}
details.ready summary::-webkit-details-marker{display:none}
.rbar{flex:1 1 120px;max-width:220px;height:10px;border-radius:999px;background:var(--card);border:1px solid var(--line);overflow:hidden}
.rbar i{display:block;height:100%;background:var(--gold)}
.ck{display:flex;gap:9px;align-items:center;padding:4px 0;font-size:14px;cursor:pointer}
.ck input{width:17px;height:17px;accent-color:var(--ink)}
/* people tab */
.ptools{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 12px}
.ptools input{flex:1 1 240px;font-size:16px;padding:10px 14px;border:1px solid var(--ink);border-radius:999px;background:var(--card)}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:22px}
.chip{border:1px solid var(--line);background:none;border-radius:999px;padding:5px 12px;font-weight:500;cursor:pointer}
.chip.on{background:var(--ink);color:var(--canvas);border-color:var(--ink)}
.chip span{opacity:.6;margin-left:3px}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.pcard{display:flex;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--card);text-decoration:none;color:inherit}
.pcard:hover{border-color:var(--ink)}
.pcard b{font-size:16px}.pcard small{display:block;color:var(--mut);font-size:13px}
.pc-cats,.pc-films{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.pc-cats span{font:600 11px "Instrument Sans";background:var(--ink);color:var(--canvas);border-radius:999px;padding:1px 8px}
.pc-films span{font:600 11px "Instrument Sans";border:1px solid var(--line);border-radius:999px;padding:1px 8px;color:var(--mut)}
.pc-films .st-todo{border-color:var(--hot);color:var(--hotdeep)}.pc-films .st-hold{border-color:var(--gold);color:#7a5a12}
/* person page */
.back{display:inline-block;color:var(--mut);text-decoration:none;margin-bottom:18px;font-weight:500}
.phead{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.pname{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(40px,7vw,72px);line-height:.9}
.phead .co{color:var(--mut);font-size:16px;margin-top:4px}
.via{font-size:14px;color:var(--mut);margin-top:3px}.via b{color:var(--ink)}
.cats2{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0 12px}
.cat2{font:600 13px "Instrument Sans";border-radius:999px;padding:4px 12px;background:var(--ink);color:var(--canvas);border:1px solid var(--ink)}
.cat2.other{background:transparent;color:var(--ink);border-style:dashed}
.cat2.add{background:transparent;color:#7a5a12;border:1.5px dashed var(--gold);cursor:pointer}
.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:14px;margin:0 0 26px}
.facts dt{color:var(--mut)}.facts a{color:var(--ink)}
details.rel,details.film{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;background:var(--card)}
details.rel{background:var(--goldsoft);border-color:var(--gold)}
details.rel>summary,details.film>summary{list-style:none;cursor:pointer;padding:12px 14px;display:flex;gap:8px;align-items:center;font-weight:700;font-size:16px}
details.rel>summary::-webkit-details-marker,details.film>summary::-webkit-details-marker{display:none}
details.rel>summary::after,details.film>summary::after{content:"▾";color:var(--mut);margin-left:6px}
details[open].rel>summary::after,details[open].film>summary::after{content:"▴"}
details.film .st{margin-left:auto}
.pill2.st-todo{border:1.5px solid var(--hot);color:var(--hotdeep);background:var(--hotsoft)}
.pill2.st-done{border-color:var(--line);color:var(--mut)}
.cl{padding:0 16px 14px}
.cl h4{font:700 10px "Space Mono",monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);margin:12px 0 6px}
.kv{display:flex;gap:10px;font-size:14px;padding:3px 0}.kv span{color:var(--mut);min-width:100px}.kv i{color:var(--mut)}
.addfilm{border:1.5px dashed var(--gold);border-radius:12px;padding:10px 14px;color:#7a5a12;font-weight:600}
.addfilm select{margin-left:8px}
.meet{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:8px;cursor:pointer}
.meet.up{border:2px solid var(--gold);background:var(--goldsoft)}
.meet small{display:block;color:var(--mut);font-size:13px;margin-top:3px}.meet small.need{color:var(--hotdeep);font-weight:600}
.catpick{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.catpick label{display:inline-flex!important;gap:6px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:4px 10px;margin:0!important;color:var(--ink)!important;cursor:pointer}
.paste{border:2px dashed var(--gold);border-radius:14px;min-height:160px;display:grid;place-items:center;color:#7a5a12;font-weight:600;outline:none}
.paste img{max-width:160px;border-radius:50%}
label.btn{display:inline-block}
/* development */
.igrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.icard{position:relative;background:var(--card);border:1px solid var(--line);border-top:5px solid var(--ink);border-radius:12px;padding:14px;cursor:pointer}
.icard.k-feature{border-top-color:var(--hot)}.icard.k-tv{border-top-color:var(--gold)}.icard.k-unscripted{border-top-color:#2f6f6a}
.icard:hover .nb{opacity:1}
.icard b{display:block;font-size:16px;margin:6px 0 4px;line-height:1.25}
.icard p{font-size:14px;color:var(--ink);margin-bottom:6px}
.icard small{color:var(--mut);font-size:12px}
.ik{font:700 10px "Space Mono",monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.ist{font:600 11px "Instrument Sans";margin-left:6px;background:var(--goldsoft);border-radius:999px;padding:1px 8px;color:#7a5a12}
.tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}.tags span{font-size:12px;color:#2f6f6a;font-weight:600}
[hidden]{display:none!important}
.row.open .due.late{background:var(--hot);color:#fff;padding:2px 7px;border-radius:4px}
/* edit in place */
.flow{position:relative}
.flowplus{align-self:center;flex:0 0 46px;width:46px;height:46px;border-radius:50%;border:2px dashed var(--gold);background:var(--goldsoft);color:#7a5a12;font:700 26px "Instrument Sans",sans-serif;cursor:pointer;margin-left:6px}
.flowplus:hover{background:var(--gold);color:var(--ink);border-style:solid}
@media(max-width:760px){.flowplus{align-self:center;margin:6px 0 0}}
.kindpick{display:flex;gap:6px}
.kindpick button{flex:1;border:1.5px solid var(--line);background:var(--card);border-radius:10px;padding:10px;font-weight:600;cursor:pointer}
.kindpick button[data-kind=todo].on{background:var(--hotsoft);border-color:var(--hot);color:var(--hotdeep)}
.kindpick button[data-kind=hold].on{background:var(--goldsoft);border-color:var(--gold);color:#7a5a12}
.kindpick button[data-kind=note].on{background:var(--ink);border-color:var(--ink);color:var(--canvas)}
@media(hover:none){.c,.row,.note,.hrow,.wchip,.deal,.icard,.meet,.mrow,.dreams li,.logline,.ttl,.mats,.urow,[data-stage-name]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}}
.pressing{transform:scale(.98);transition:transform .35s ease;box-shadow:0 0 0 3px var(--gold)}
.edit-hint{font-size:12px;color:var(--mut);margin:-30px 0 30px}
/* phone: arrows point down without covering the cards */
.arr{pointer-events:none}
@media(max-width:760px){.flow .arr{transform:none;font-size:0;flex:0 0 30px}.flow .arr:not(:empty)::after{content:"↓";font-size:26px}}
/* ===== Oct 31: calmer People ===== */
.desi,.desi2{font:700 10px "Instrument Sans",sans-serif;color:#fff;background:#2f6f6a;border-radius:999px;padding:1px 7px;margin-left:6px;vertical-align:2px}
.cat2.desi2{font-size:13px;padding:4px 12px;margin:0;border-color:#2f6f6a}
.chip.desi-chip.on{background:#2f6f6a;border-color:#2f6f6a}
.chipsep{width:1px;background:var(--line);margin:0 4px}
#plist{max-width:760px}
.grp{margin-bottom:26px}.grp h3{font-size:17px;display:flex;align-items:center;gap:6px;margin-bottom:10px}
.tile{display:flex;gap:12px;align-items:center;border-radius:12px;padding:10px 12px;margin-bottom:8px;text-decoration:none;color:inherit}
.tile.todo{background:var(--hotsoft);border:2px solid var(--hot)}.tile.hold{background:var(--goldsoft);border:1.5px dashed var(--gold)}
.tile b{font-size:15px}.tile small{display:block;font-size:13px;color:var(--mut)}
.tile>div{flex:1;min-width:0}.tile small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tile .when{font:700 12px "Space Mono",monospace;color:var(--hotdeep);white-space:nowrap}.tile.hold .when{color:#7a5a12}
.count.m{background:var(--line);color:var(--ink)}
.faces{display:flex;flex-wrap:wrap;gap:12px}
.face{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;color:var(--ink);font-size:12px;width:62px;text-align:center}
.letter{font:700 12px "Space Mono",monospace;color:var(--mut);margin:14px 0 2px}
.li{display:flex;gap:12px;align-items:center;padding:10px 2px;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.li>div{flex:1;min-width:0}.li b{font-size:15px}.li small{display:block;color:var(--mut);font-size:12px}
.li .st{font:600 11px "Instrument Sans";border-radius:999px;padding:2px 9px;white-space:nowrap}
.st.todo{background:var(--hotsoft);color:var(--hotdeep);border:1.5px solid var(--hot)}.st.hold{background:var(--goldsoft);color:#7a5a12;border:1px dashed var(--gold)}.st.none{color:var(--mut);border:1px solid var(--line)}
.mini i.has{background:transparent;border:2px solid var(--ink);width:9px;height:9px;box-sizing:border-box}
/* person page */
.pwrap{max-width:760px}
.pmeta{min-width:0}
.pname .pf{font:inherit}
.co .dot{margin:0 6px;color:var(--line)}
.pf{cursor:text;border-bottom:1px dashed transparent;border-radius:3px;padding:0 2px}
.pf:hover{background:var(--goldsoft);border-bottom-color:var(--gold)}
.pf.empty{color:var(--mut);font-style:italic;border-bottom-color:var(--line)}
.pf.editing{background:none;border:0;padding:0}
.pfin{font:inherit;color:inherit;border:0;border-bottom:2px solid var(--gold);background:var(--goldsoft);padding:2px 6px;border-radius:4px;min-width:180px;max-width:100%}
textarea.pfin{width:100%;min-height:80px;font-size:15px;font-family:"Instrument Sans",sans-serif}
.pname .pfin{font-size:clamp(30px,6vw,56px);width:100%}
.links{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 4px}
.lk{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--ink);border-radius:999px;padding:4px 6px 4px 12px;font-size:13px;font-weight:600}
.lk a{color:var(--ink);text-decoration:none}
.lk.add{border-style:dashed;border-color:var(--line);padding-right:12px;font-weight:500}.lk.add a{color:var(--mut)}
.q{width:24px;height:24px;border-radius:6px;border:1.5px dashed var(--gold);background:var(--goldsoft);display:grid;place-items:center;font:700 13px "Instrument Sans";color:#7a5a12;cursor:pointer}
.q.ok{border:1.5px solid #3d5a2a;background:#3d5a2a;color:#fff}
.linkbtn.sm{font-size:12px;color:var(--mut)}
.next{border:2px solid var(--hot);background:var(--hotsoft);border-radius:12px;padding:12px 14px;margin:14px 0 6px}
.next.cool{border:1.5px dashed var(--gold);background:var(--goldsoft)}
.next .mono{display:block;margin-bottom:2px}.next b{font-size:16px}.next small{display:block;color:var(--mut);font-size:13px;margin-top:2px}
.ptabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:22px 0 16px}
.ptabs button{background:none;border:0;border-bottom:3px solid transparent;padding:9px 14px;font-weight:600;color:var(--mut);cursor:pointer}
.ptabs button.on{color:var(--ink);border-bottom-color:var(--gold)}
.film2{border:1px solid var(--line);border-radius:14px;background:var(--card);padding:14px;margin-bottom:12px}
.film2 .fh{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.film2 .fh b{font-size:17px}
.film2 .fh .pill2{margin-left:auto;cursor:pointer;background:#fff8e8}
.role{font:600 12px "Instrument Sans";background:var(--canvas);border-radius:999px;padding:1px 8px}
.where{display:block;width:100%;text-align:left;background:none;border:0;padding:6px 0 0;color:var(--mut);font-size:14px;cursor:pointer}
.mat{display:grid;grid-template-columns:1fr 54px 54px;gap:6px 6px;align-items:center;margin-top:12px;font-size:14px;max-width:360px}
.mat .hd{font:700 10px "Space Mono",monospace;letter-spacing:.12em;color:var(--mut);text-align:center}
.bx{display:grid;place-items:center;cursor:pointer}.bx input{width:20px;height:20px;accent-color:var(--ink);cursor:pointer}
.stands{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.ck2{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:4px 11px;font-size:13px;cursor:pointer;background:var(--canvas)}
.ck2:has(input:checked){background:var(--ink);color:var(--canvas);border-color:var(--ink)}
.ck2 input{width:14px;height:14px;accent-color:var(--gold)}
.relbox h4{font:700 10px "Space Mono",monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);margin:20px 0 8px}
.relbox h4:first-child{margin-top:0}
.relbox .kv{padding:5px 0;font-size:15px}.relbox .kv span:first-child{min-width:120px}
.desipick{display:flex!important;gap:8px;align-items:center;color:var(--ink)!important;font-weight:600}
/* notes as to-dos */
.note .h .chk{margin:0 4px 0 0}
.note.ntodo{border-left:4px solid var(--hot);padding-left:10px}
.note.ndone .body{text-decoration:line-through;color:var(--mut)}
.note.ndone{opacity:.7}
.doneby{display:block;font-size:12px;color:var(--mut);text-decoration:none}
