.portal{--wrap:1180px;--gutter:32px;--radius:14px;--line:#ffffff14;background:radial-gradient(1200px 420px at 50% -220px, #8fb0d812, transparent 70%), var(--paper);flex-direction:column;min-height:100vh;display:flex}.pt-wrap{width:100%;max-width:var(--wrap);padding:0 var(--gutter);margin:0 auto}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.portal-banner{background:var(--warn-soft);border-bottom:1px solid #e28c6173;font-size:13.5px}.portal-banner .pt-wrap{flex-wrap:wrap;align-items:center;gap:14px;min-height:46px;display:flex}.portal-banner span{flex:1;min-width:220px}.pt-header{top:env(safe-area-inset-top,0px);z-index:40;-webkit-backdrop-filter:saturate(140%)blur(14px);border-bottom:1px solid var(--line);background:#000000f0;position:sticky}.pt-header .pt-wrap{align-items:center;gap:28px;height:68px;display:flex}.pt-brand{align-items:center;gap:14px;min-width:0;display:flex}.pt-brand img{width:auto;height:21px;display:block}.pt-brand .rule{background:#ffffff38;flex:0 0 1px;width:1px;height:22px}.pt-client{font-family:var(--serif);letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;font-size:19px;font-weight:600;overflow:hidden}.portal-switch select{font-family:var(--serif);border:1px solid var(--rule);background:0 0;border-radius:8px;max-width:46vw;padding:4px 8px;font-size:18px;font-weight:600}.pt-nav{gap:2px;margin-left:auto;display:flex}.pt-nav a{color:var(--ink-2);white-space:nowrap;border-radius:999px;padding:8px 15px;font-size:14px;font-weight:500;transition:color .15s,background .15s}.pt-nav a:hover{color:var(--ink)}.pt-nav a[aria-current=page]{color:#000;background:#ffffffeb}.pt-account{border-left:1px solid var(--line);align-items:center;gap:12px;padding-left:20px;display:flex}.pt-account .who{color:var(--ink-3);white-space:nowrap;font-size:13px}.portal-signout{border:1px solid var(--rule);color:var(--ink-2);background:0 0;border-radius:999px;padding:6px 13px;font-size:13px}.portal-signout:hover{color:var(--ink);border-color:var(--ink-3)}main.pt-main{width:100%;max-width:var(--wrap);padding:48px var(--gutter) 96px;flex:1;margin:0 auto}.pt-kicker,.portal-kicker{color:var(--ink-3);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:11.5px;font-weight:600}.pt-title,.portal-h1{font-family:var(--serif);letter-spacing:-.015em;margin:0;font-size:44px;font-weight:600;line-height:1.08}.portal-h1{margin-bottom:8px;font-size:34px}.pt-lead{color:var(--ink-2);max-width:560px;margin:12px 0 0;font-size:16px}.pt-rule{align-items:center;gap:14px;margin:36px 0;display:flex}.pt-rule:before,.pt-rule:after{content:"";background:var(--line);flex:1;height:1px}.pt-rule img{opacity:.55;width:12px;height:12px}.pt-section-h{justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 14px;display:flex}.pt-section-h h2{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin:0;font-size:13px;font-weight:600}.pt-section-h a{color:var(--ink-2);font-size:13.5px}.pt-section-h a:hover{color:var(--ink)}.pt-card{background:linear-gradient(180deg, #ffffff06, transparent 60%), var(--card);border:1px solid var(--line);border-radius:var(--radius)}.pt-callout{background:linear-gradient(120deg, #8fb0d824, #8fb0d808 60%), var(--card);border-color:#8fb0d866;align-items:center;gap:24px;margin-top:32px;padding:24px 28px;display:flex}.pt-callout .pt-kicker{color:var(--shoot);margin-bottom:6px}.pt-callout h2{font-family:var(--serif);margin:0;font-size:26px;font-weight:600}.pt-callout p{color:var(--ink-2);margin:6px 0 0}.pt-callout .grow{flex:1}.pt-button{background:var(--ink);color:#000;white-space:nowrap;border:0;border-radius:999px;align-items:center;gap:8px;padding:11px 20px;font-size:14.5px;font-weight:600;display:inline-flex}.pt-button:hover{background:#fff}.pt-glance{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:14px;display:grid}.pt-tile{flex-direction:column;gap:6px;min-height:150px;padding:20px 22px;transition:border-color .15s;display:flex}a.pt-tile:hover{border-color:#ffffff38}.pt-tile .label{color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.pt-dot{border-radius:50%;flex:0 0 8px;width:8px;height:8px}.pt-dot.shoot{background:var(--shoot)}.pt-dot.post{background:var(--post)}.pt-dot.ok{background:var(--ok)}.pt-dot.owing{background:var(--post)}.pt-dot.brief{background:var(--ink-3)}.pt-tile .value{font-family:var(--serif);letter-spacing:-.01em;margin-top:auto;font-size:28px;font-weight:600;line-height:1.15}.pt-tile .sub{color:var(--ink-2);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;display:-webkit-box;overflow:hidden}.pt-columns{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:start;gap:28px;display:grid}.pt-timeline{padding:6px 0}.pt-event{align-items:center;gap:18px;padding:14px 22px;display:flex}.pt-event+.pt-event{border-top:1px solid var(--line)}.pt-date{text-align:center;flex:0 0 52px;line-height:1}.pt-date .d{font-family:var(--serif);font-size:26px;font-weight:600;display:block}.pt-date .m{color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;font-size:11px;font-weight:600;display:block}.pt-event .what{flex:1;min-width:0}.pt-event .what strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;display:block;overflow:hidden}.pt-event .what span{color:var(--ink-3);font-size:13px}.pt-pill{border-radius:999px;flex:none;padding:3px 10px;font-size:12px;font-weight:600}.pt-pill.shoot{color:var(--shoot);background:var(--shoot-soft)}.pt-pill.post{color:var(--post);background:var(--post-soft)}.portal aside{border:0;flex:none;width:auto;max-height:none;padding:0;position:static;overflow:visible}.pt-side{flex-direction:column;gap:28px;display:flex}.pt-links{padding:6px 0}.pt-link{align-items:center;gap:12px;padding:13px 20px;display:flex}.pt-link+.pt-link{border-top:1px solid var(--line)}.pt-link:hover strong{text-underline-offset:3px;text-decoration:underline}.pt-link .what{flex:1;min-width:0}.pt-link strong{font-weight:500;display:block}.pt-link span{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;display:block;overflow:hidden}.pt-link svg{color:var(--ink-3);flex:none}.pt-empty,.portal-empty{text-align:center;background:var(--card);border-radius:var(--radius);color:var(--ink-2);border:1px dashed #ffffff24;flex-direction:column;align-items:center;gap:8px;margin-top:16px;padding:36px 24px;display:flex}.pt-empty img,.portal-empty:before{opacity:.5;width:18px;height:18px}.portal-empty:before{content:"";background:url(/brand/star.png) 50%/contain no-repeat}.pt-empty p,.portal-empty p{max-width:420px;margin:0}.pt-footer{border-top:1px solid var(--line);color:var(--ink-3);font-size:12.5px}.pt-footer .pt-wrap{align-items:center;gap:10px;min-height:64px;display:flex}.pt-footer img{opacity:.5;width:11px;height:11px}.pt-login-page{justify-content:center}.pt-login{width:100%;max-width:460px;margin:0 auto;padding:12vh 20px 48px}.pt-login-mark{width:auto;height:24px;margin-bottom:40px;display:block}.pt-login .pt-title{font-size:40px}.pt-login-card{margin-top:28px;padding:24px}.pt-login .pt-rule{margin:32px 0 16px}.pt-login-help{text-align:center;color:var(--ink-3);margin:0;font-size:13px}.pt-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 32px;margin-bottom:32px;display:flex}.pt-head-text{min-width:0}.pt-head-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pt-back{color:var(--ink-2);align-items:center;gap:6px;margin-bottom:18px;font-size:13.5px;display:inline-flex}.pt-back:hover{color:var(--ink)}.pt-button.ghost{color:var(--ink);background:0 0;border:1px solid #fff3}.pt-button.ghost:hover{background:#ffffff0f;border-color:#ffffff59}.pt-button.sm{padding:7px 14px;font-size:13px}.pt-button.block{justify-content:center;width:100%}.pt-button[aria-disabled=true],.pt-button:disabled{opacity:.35;pointer-events:none}.pt-status{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.pt-status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pt-status.review{color:var(--shoot);background:var(--shoot-soft);border-color:#8fb0d84d}.pt-status.ok{color:var(--ok);background:var(--ok-soft);border-color:#93bc884d}.pt-status.changes{color:var(--warn);background:var(--warn-soft);border-color:#e28c614d}.pt-status.owing{color:var(--post);background:var(--post-soft);border-color:#dda8454d}.pt-status.muted{color:var(--ink-3);border-color:var(--line);background:0 0}.pt-two{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:28px;display:grid}.portal aside.pt-panel,.pt-panel{flex-direction:column;gap:16px;display:flex;position:sticky;top:96px}.pt-panel .pt-card{padding:22px}.pt-panel .pt-card h2{font-family:var(--serif);margin:0;font-size:22px;font-weight:600}.pt-panel p{color:var(--ink-2);margin:0;font-size:14px}.pt-panel .pt-kicker{margin-bottom:8px}.pt-facts{border-top:1px solid var(--line);flex-direction:column;gap:10px;margin:16px 0 0;padding:16px 0 0;font-size:14px;display:flex}.pt-facts div{justify-content:space-between;gap:12px;display:flex}.pt-facts dt{color:var(--ink-3)}.pt-facts dd{text-align:right;margin:0}.pt-big{font-family:var(--serif);letter-spacing:-.015em;margin:4px 0 6px;font-size:40px;font-weight:600;line-height:1.1}.pt-rows{padding:4px 0}.pt-row{align-items:center;gap:16px;padding:16px 22px;transition:background .15s;display:flex}.pt-row+.pt-row{border-top:1px solid var(--line)}a.pt-row:hover,.pt-row.link:hover{background:#ffffff06}.pt-row .main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.pt-row .main strong{font-size:15.5px;font-weight:600}.pt-row .main .serif{font-family:var(--serif);font-size:20px}.pt-row .main span{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.pt-row .amount{white-space:nowrap;font-weight:600}.pt-row.old{opacity:.55}.pt-arrow{color:var(--ink-3);flex:none}.pt-icon{width:38px;height:38px;color:var(--ink-2);background:#ffffff0d;border-radius:10px;flex:0 0 38px;place-items:center;display:grid}.pt-stack{flex-direction:column;gap:14px;display:flex}.pt-month+.pt-month{margin-top:14px}.pt-versions{border-top:1px solid var(--line);padding:6px 22px 10px 76px}.pt-versions a{color:var(--ink-3);justify-content:space-between;gap:12px;padding:6px 0;font-size:13px;display:flex}.pt-versions a:hover{color:var(--ink-2)}.portal .gridwrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);margin:0}.portal table.cal th{letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--line);padding:12px;font-size:11px}.portal table.cal td{border-color:var(--line);height:108px;padding:9px 10px}.portal td.out{opacity:1;background:#ffffff04}.portal .daynum{color:var(--ink-2);font-size:13px}.portal .shootflag{border-radius:6px;margin:6px 0;padding:3px 7px;font-size:11px}.portal .postdot{margin-top:5px;font-size:11.5px;font-weight:500}.portal .legend{color:var(--ink-3);margin:14px 0 0}.pt-shoot{border-left:3px solid var(--shoot);padding:18px 20px}.pt-shoot .when{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.pt-shoot .when strong{font-family:var(--serif);font-size:20px;font-weight:600}.pt-shoot .when span{color:var(--shoot);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:600}.pt-shoot ul{margin:12px 0 0;padding:0;list-style:none}.pt-shoot li{border-top:1px solid var(--line);flex-direction:column;gap:1px;padding:9px 0;font-size:14px;display:flex}.pt-shoot li .on{color:var(--post);font-size:12.5px;font-weight:600}.portal .preview{border-radius:var(--radius);border:0;margin-top:0;box-shadow:0 30px 80px #0000008c,0 0 0 1px #ffffff0f}.pt-answer .stack{gap:12px}.pt-answer textarea{background:var(--card-2)}.pt-answer-given{background:#ffffff0a;border-radius:10px;margin-bottom:14px;padding:14px 16px}.pt-answer-given strong{display:block}.pt-answer-given p{margin:6px 0 0;font-style:italic}.pt-answer-buttons{flex-direction:column;gap:10px;display:flex}.pt-answer .pt-link-button{color:var(--ink-2);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:13.5px;text-decoration:underline}.pt-files{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:28px;display:grid}@media (max-width:1000px){.pt-columns,.pt-two,.pt-files{grid-template-columns:minmax(0,1fr)}.portal aside.pt-panel,.pt-panel{position:static}.pt-two.panel-first .pt-panel{order:-1}.pt-account .who{display:none}}@media (max-width:720px){.portal{--gutter:16px}.pt-header .pt-wrap{gap:12px;height:58px}.pt-client{font-size:17px}.pt-account{border-left:0;margin-left:auto;padding-left:0}.pt-nav{z-index:40;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);background:#0a0a0af0;justify-content:space-around;gap:0;margin:0;position:fixed;bottom:0;left:0;right:0}.pt-nav a{text-align:center;flex:1;padding:10px 2px;font-size:12.5px}main.pt-main{padding:28px var(--gutter) calc(96px + env(safe-area-inset-bottom,0px))}.pt-title{font-size:32px}.portal-h1{font-size:28px}.pt-callout{flex-direction:column;align-items:flex-start;gap:16px;padding:20px}.pt-glance{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pt-tile{min-height:124px;padding:16px}.pt-tile .value{font-size:22px}.pt-event{gap:14px;padding:12px 16px}.pt-footer{display:none}.pt-head{margin-bottom:22px}.pt-row{flex-wrap:wrap;padding:14px 16px}.pt-row .main{flex-basis:calc(100% - 60px)}.pt-versions{padding-left:16px}.portal table.cal td{height:84px}.pt-big{font-size:32px}}.pt-login-card .btn{border-radius:999px;justify-content:center;padding:11px 18px}.pt-login-card .btn.primary{background:var(--ink);border-color:var(--ink);color:#000}
