.portal{--nav-h:64px;--gutter:1rem;position:relative;max-width:720px;margin:0 auto;padding:0 var(--gutter) calc(var(--nav-h) + 3rem);min-height:100dvh;background:var(--paper)}.p-h1,.p-head,.p-lede{margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%);background:var(--dark)}.p-head{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;padding-top:calc(.9rem + env(safe-area-inset-top));padding-bottom:.6rem;overflow:visible}.p-head:after{content:"";position:absolute;right:calc(50vw - 50% - 4rem);top:1.4rem;width:12.5rem;height:12.5rem;background:url(/brand/99-ghost-dark.png) no-repeat 50%/contain;opacity:.38;pointer-events:none}.portal:has(main.intake-wrap) .p-head:after,.portal:has(main.rm) .p-head:after,.portal:has(main>.intake-wrap) .p-head:after{display:none}.p-head img{width:96px;display:block;position:relative}.p-head .who{position:relative;text-align:right;font-size:.72rem;color:rgba(255,255,255,.55);line-height:1.3}.p-head .who b{display:block;color:var(--white);font-weight:600;font-size:.8rem;max-width:58vw;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p-head .who button{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-pill);padding:.22rem .6rem;margin-top:.3rem;font:inherit;font-size:.68rem;font-weight:500;color:rgba(255,255,255,.78);cursor:pointer;transition:background var(--dur) var(--ease)}.p-head .who button:hover{background:rgba(255,255,255,.16)}.p-h1{position:relative;z-index:1;font-family:var(--display);font-size:1.5rem;font-weight:700;letter-spacing:-.012em;line-height:1.12;color:var(--white);padding-top:1.1rem;padding-bottom:2.6rem}.p-h1:has(+.p-lede){padding-bottom:.55rem}.p-lede{position:relative;z-index:1;font-size:.95rem;line-height:1.55;color:rgba(255,255,255,.7);padding-bottom:2.6rem}.p-h1,.p-lede{box-sizing:content-box}.p-h1>*,.p-lede>*{max-width:56ch}@media (max-width:559px){.p-h1{padding-right:calc(50vw - 50% + 3.2rem)}}.p-h1+:not(.p-lede),.p-lede+*{position:relative;z-index:3;margin-top:-1.5rem}.p-sub{font-family:var(--display);font-size:.98rem;font-weight:700;margin:1.8rem 0 .7rem}@keyframes rise{0%{transform:translateY(10px)}to{transform:none}}.portal main>*{animation:rise var(--dur) var(--ease) both}.portal main>:nth-child(2){animation-delay:.04s}.portal main>:nth-child(3){animation-delay:.08s}.portal main>:nth-child(4){animation-delay:.12s}.portal main>:nth-child(n+5){animation-delay:.16s}.p-nav{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(.75rem + env(safe-area-inset-bottom));width:min(calc(100% - 1.5rem),720px);height:var(--nav-h);background:rgba(20,18,14,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);border-radius:var(--r-pill);box-shadow:var(--shadow-dark);display:flex;align-items:stretch;padding:.3rem;z-index:10;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity}.p-nav::-webkit-scrollbar{display:none}.p-nav a{flex:1 0 auto;min-width:48px;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.14rem;padding:.3rem .35rem;border-radius:var(--r-pill);color:rgba(255,255,255,.55);text-decoration:none;font-size:.58rem;font-weight:600;letter-spacing:.01em;white-space:nowrap;scroll-snap-align:center;transition:color var(--dur) var(--ease),background var(--dur) var(--ease),transform .12s var(--ease)}.p-nav a svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.p-nav a:hover{color:rgba(255,255,255,.85)}.p-nav a:active{transform:scale(.95)}.p-nav a.on{color:var(--white);background:rgba(255,255,255,.1)}.p-nav a.on svg{stroke:var(--gold-l)}@media (min-width:560px){.p-nav a{flex:1 1;min-width:0;flex-direction:row;gap:.4rem;font-size:.76rem;padding:.5rem .6rem}.p-nav a svg{width:18px;height:18px}}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:1.15rem 1.15rem 1.2rem;margin-bottom:1rem}.card.dark{background:var(--dark-2);color:var(--white);border-color:rgba(255,255,255,.08);box-shadow:var(--shadow-dark)}.card .kicker{font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-d);margin-bottom:.55rem}.card.dark .kicker{color:var(--gold-l)}.card h2{font-family:var(--display);font-size:1.02rem;font-weight:600;line-height:1.32;letter-spacing:-.005em;margin-bottom:.7rem}.card p{font-size:.93rem;line-height:1.55;color:var(--mut);margin-bottom:.6rem}.card.dark p{color:rgba(255,255,255,.72)}.card .meta{font-size:.8rem;line-height:1.5;color:var(--mut);margin-top:.6rem}.card.dark .meta{color:rgba(255,255,255,.55)}.card .hookline{position:relative;padding:.55rem 0 .55rem .9rem;margin:.5rem 0 .4rem;font-size:.95rem;line-height:1.45;font-weight:500}.card .hookline:before{content:"";position:absolute;left:0;top:.3rem;bottom:.3rem;width:3px;border-radius:3px;background:var(--gold)}.card .hookline small{display:block;margin-top:.3rem;font-size:.72rem;font-weight:500;color:var(--mut-2)}.card.dark .hookline small{color:rgba(255,255,255,.5)}.card.flagged{border-color:var(--gold-l)}.card .lbl{display:block;font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mut-2);margin:.8rem 0 .25rem}.card.dark .lbl{color:rgba(255,255,255,.45)}.big-btns{display:grid;grid-template-columns:1fr;gap:.7rem;margin:1.2rem 0 0}@media (min-width:560px){.big-btns{grid-template-columns:repeat(3,1fr)}}.big-btn{position:relative;display:flex;flex-direction:column;gap:.25rem;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:1.05rem 2.6rem 1.05rem 1.1rem;min-height:72px;text-decoration:none;font-family:var(--display);font-size:.86rem;font-weight:600;letter-spacing:-.005em;color:var(--ink);transition:transform .14s var(--ease),box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease)}.big-btn:after{content:"";position:absolute;right:1.1rem;top:50%;width:9px;height:9px;border-right:2px solid var(--gold);border-top:2px solid var(--gold);transform:translateY(-50%) rotate(45deg);transition:transform .14s var(--ease)}.big-btn:hover{box-shadow:var(--shadow);border-color:var(--paper-3)}.big-btn:hover:after{transform:translate(3px,-50%) rotate(45deg)}.big-btn:active{transform:scale(.985)}.big-btn small{font-family:var(--body);font-size:.8rem;font-weight:400;color:var(--mut);line-height:1.4}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.75rem 1.25rem;border-radius:var(--r-pill);border:1.5px solid var(--ink);background:transparent;color:var(--ink);font:inherit;font-size:.9rem;font-weight:600;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform .12s var(--ease),opacity var(--dur)}.btn:hover{background:var(--paper-2)}.btn:active{transform:scale(.97)}.btn:disabled,.btn[aria-disabled=true]{opacity:.4;cursor:default;transform:none}.btn.solid{background:var(--ink);color:var(--white);border-color:var(--ink)}.btn.solid:hover{background:#000}.btn.gold{background:var(--gold);color:var(--ink);border-color:var(--gold)}.btn.gold:hover{background:var(--gold-l);border-color:var(--gold-l)}.btn.sm{min-height:36px;padding:.4rem .9rem;font-size:.8rem}.card.dark .btn:not(.solid):not(.gold){color:var(--white);border-color:rgba(255,255,255,.35)}.card.dark .btn:not(.solid):not(.gold):hover{background:rgba(255,255,255,.08)}.card.dark .btn.solid{background:var(--white);color:var(--ink);border-color:var(--white)}.link-btn{background:none;border:none;padding:.5rem 0;min-height:44px;font:inherit;font-size:.88rem;font-weight:600;color:var(--gold-d);cursor:pointer}.link-btn:hover{color:var(--ink)}.day-actions{gap:.5rem;margin-top:1rem}.day-actions,.tool-actions{display:flex;flex-wrap:wrap}.tool-actions{align-items:center;gap:.6rem .9rem;margin-top:.4rem}.day-nav{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.8rem}.day-nav .pos{font-family:var(--display);font-size:.78rem;font-weight:600;color:var(--mut)}.day-card .date{font-family:var(--display);font-size:1.55rem;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin-bottom:.9rem}.day-card .date small{display:block;font-family:var(--body);font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-l);margin-bottom:.35rem}.day-card .posted{display:inline-flex;align-items:center;gap:.35rem;background:rgba(190,145,48,.18);color:var(--gold-l);border-radius:var(--r-pill);padding:.3rem .75rem;font-size:.74rem;font-weight:600;margin-top:.8rem}.day-card .posted:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold-l)}.day-strip{display:flex;gap:.4rem;overflow-x:auto;padding:.9rem 0 .6rem;margin:0 calc(-1 * var(--gutter));padding-inline:var(--gutter);scrollbar-width:none;scroll-snap-type:x proximity}.day-strip::-webkit-scrollbar{display:none}.day-strip button{flex:0 0 auto;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--white);color:var(--ink);font:inherit;font-family:var(--display);font-size:.74rem;font-weight:600;cursor:pointer;scroll-snap-align:center;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform .12s var(--ease)}.day-strip button:active{transform:scale(.94)}.day-strip button.posted{background:var(--paper-3);color:var(--mut);border-color:var(--paper-3)}.day-strip button.today{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.day-strip button.on{background:var(--ink);color:var(--white);border-color:var(--ink)}.start-row{display:flex;align-items:flex-end;gap:.7rem;margin-top:1.1rem}.start-row .field{flex:1 1;margin:0}.note{font-size:.82rem;line-height:1.5;margin-top:.8rem}.empty,.note{color:var(--mut)}.empty{background:var(--white);border:1px dashed var(--paper-3);border-radius:var(--r-lg);padding:1.4rem 1.2rem;font-size:.93rem;line-height:1.55}.empty .btn{margin-top:1rem}.portal.login-wrap{position:relative;min-height:100dvh;max-width:none;display:grid;place-items:center;padding:1.5rem 1rem;background:var(--dark);overflow:hidden}.portal.login-wrap:before{content:"";position:absolute;right:-18vw;top:-10vh;width:min(80vw,560px);aspect-ratio:1;background:url(/brand/99-ghost-dark.png) no-repeat 50%/contain;opacity:.5;pointer-events:none}.login-card{position:relative;width:100%;max-width:420px;background:var(--paper);border-radius:var(--r-xl);box-shadow:var(--shadow);padding:2rem 1.5rem 1.7rem;animation:rise .4s var(--ease) both}.login-mark{width:118px;display:block;margin-bottom:1.6rem}.login-card .eyebrow{display:block;margin-bottom:.6rem}.login-form h1,.login-state h1{font-family:var(--display);font-size:1.3rem;font-weight:700;letter-spacing:-.012em;line-height:1.15;margin-bottom:.6rem}.login-lede,.login-state p{font-size:.93rem;line-height:1.55;color:var(--mut);margin-bottom:1.3rem}.login-form .form-error{margin:0 0 1rem}.login-form .submit-btn{margin-top:.4rem}.admin-wrap{max-width:none}.admin-add{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.7rem;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:1rem 1.1rem;margin-bottom:1rem}.admin-add .field{flex:1 1 220px;margin:0}.admin-add input,.admin-add select{width:100%;font:inherit;font-size:.9rem;padding:.65rem .8rem;min-height:44px;border:1px solid var(--line);border-radius:var(--r);background:var(--white)}.admin-scroll{overflow-x:auto;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);margin:0 calc(-1 * var(--gutter))}@media (min-width:560px){.admin-scroll{margin:0}}.admin-table{width:100%;border-collapse:collapse;font-size:.84rem;min-width:720px}.admin-table th{text-align:left;font-size:.66rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mut-2);padding:.85rem .9rem .6rem;border-bottom:1px solid var(--line);white-space:nowrap}.admin-table td{padding:.75rem .9rem;border-bottom:1px solid var(--paper-2);vertical-align:top}.admin-table tr:last-child td{border-bottom:0}.admin-table td.name b{display:block;font-weight:600}.admin-table td.name small{color:var(--mut);font-size:.76rem}.admin-table .pill{display:inline-block;border-radius:var(--r-pill);padding:.22rem .65rem;font-size:.72rem;font-weight:600;background:var(--paper-2);color:var(--ink);border:none;font-family:inherit;cursor:default}.admin-table button.pill{cursor:pointer}.admin-table .pill.published{background:rgba(190,145,48,.18);color:var(--gold-d)}.admin-table .pill.ready{background:#e8f1e7;color:#2f6b3a}.admin-table .pill.blocked{background:#fbf1ee;color:#a1392a}.admin-table .pill.off{background:var(--paper-2);color:var(--mut-2)}.admin-table input[type=date],.admin-table input[type=email]{font:inherit;font-size:.82rem;padding:.4rem .6rem;min-height:36px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--white)}.admin-table .acts{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.4rem}.admin-table a{color:var(--gold-d);font-weight:600;text-decoration:none}.admin-table a:hover{text-decoration:underline}.admin-msg{min-height:1.4em;font-size:.84rem;color:var(--mut);margin:.7rem 0}.portal .rm{padding-left:0;padding-right:0}.portal .rm-cover{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%);border-radius:0 0 var(--r-xl) var(--r-xl)}.tool-form{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:1.15rem 1.15rem 1.1rem;margin-bottom:1.1rem}.tool-form .field{margin-bottom:.95rem}.tool-form .form-error{margin-top:.8rem}.chips{display:flex;flex-wrap:wrap;gap:.45rem}.chip,.chips{align-items:center}.chip{display:inline-flex;min-height:40px;padding:.45rem .95rem;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--white);color:var(--ink);font:inherit;font-size:.84rem;font-weight:500;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform .12s var(--ease),opacity var(--dur)}.chip:hover{background:var(--paper-2)}.chip:active{transform:scale(.96)}.chip.on{background:var(--ink);color:var(--white);border-color:var(--ink)}.chip:disabled{opacity:.4;cursor:default;transform:none}.chip-input{flex:1 1 160px;min-height:40px;padding:.45rem .9rem;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--white);font:inherit;font-size:.84rem}.chip-input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(190,145,48,.22)}.card.draft{padding:.35rem .35rem .6rem}.draft-head{width:100%;display:flex;justify-content:space-between;align-items:center;gap:.8rem;background:none;border:none;border-radius:var(--r);padding:.85rem .8rem;text-align:left;font:inherit;color:var(--ink);cursor:pointer;min-height:56px;transition:background var(--dur) var(--ease)}.draft-head:hover{background:var(--paper-2)}.draft-head b{display:block;font-family:var(--display);font-size:.9rem;font-weight:600}.draft-head small{display:block;margin-top:.2rem;font-size:.76rem;color:var(--mut)}.draft-toggle{flex:0 0 auto;font-size:.78rem;font-weight:600;color:var(--gold-d)}.card.draft>:not(.draft-head){padding-inline:.8rem}.flag{background:rgba(190,145,48,.12);border:1px solid rgba(190,145,48,.35);border-radius:var(--r);padding:.7rem .9rem;margin:.4rem 0 .9rem;font-size:.84rem;line-height:1.5}.flag ul{margin:.3rem 0 0 1.1rem}.draft-block{margin-bottom:.9rem}.draft-block-head{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.draft-subject{font-size:.86rem;font-weight:600;margin:.2rem 0 .4rem}.draft-text{white-space:pre-wrap;font:inherit;font-size:.92rem;line-height:1.55;background:var(--paper-2);border-radius:var(--r);padding:.9rem 1rem}.draft-regen{margin:.4rem 0 .8rem}.beats,.draft-regen .lbl{margin-top:.4rem}.beats ol{margin:.2rem 0 0 1.15rem;padding:0}.beats li{font-size:.88rem;line-height:1.5;margin-bottom:.3rem}.beats li small{color:var(--mut-2);font-size:.74rem;margin-left:.25rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skel{background:linear-gradient(90deg,var(--paper-2) 0,var(--white) 50%,var(--paper-2) 100%);background-size:200% 100%;animation:shimmer 1.3s ease-in-out infinite;border-radius:var(--r)}.skel.band{background:linear-gradient(90deg,var(--dark-2) 0,var(--dark-3) 50%,var(--dark-2) 100%);background-size:200% 100%}.portal .intake-wrap{max-width:none}.portal .intake-h1{font-size:1.35rem;margin-top:1.6rem}.portal .intake-lede{color:var(--mut);margin-bottom:1.4rem}.portal .intake-wrap>.card:first-child{margin-top:0}.portal:has(.admin-wrap){max-width:1180px}.admin-table td.name{white-space:nowrap}