:root{--portal-hero-from: #5e3b8e;--portal-hero-to: #6d1660;--portal-hero-fg: #ffffff;--portal-hero-muted: #d9c6e6;--portal-hero-avatar-bg: #7c569f;--portal-accent: #d6006c;--portal-accent-strong: #a80056;--portal-accent-soft: #fce6f1;--portal-accent-soft-border: #f5c4de;--portal-on-accent: #ffffff;--portal-bg: #faf8fa;--portal-surface: #ffffff;--portal-surface-raised: #ffffff;--portal-border: #e7e1e8;--portal-border-strong: #d6cdd8;--portal-text: #241f28;--portal-text-muted: #6d6472;--portal-text-faint: #978d9b;--portal-shell-header-bg: #ffffff;--portal-status-progress-bg: #f5e6f0;--portal-status-progress-fg: #922066;--portal-status-scheduled-bg: #e2edfb;--portal-status-scheduled-fg: #1c5fa8;--portal-status-paid-bg: #e2f4e8;--portal-status-paid-fg: #1e7a42;--portal-status-declined-bg: #fbe4e4;--portal-status-declined-fg: #b3261e;--portal-status-changes-bg: #fbedd3;--portal-status-changes-fg: #92600a;--portal-status-withdrawn-bg: #ece8ec;--portal-status-withdrawn-fg: #6d6472;--portal-error-bg: #fbe4e4;--portal-error-fg: #b3261e;--portal-error-border: #f2c6c4;--portal-note-bg: #eef6ee;--portal-note-fg: #2c6e3f;--portal-focus-ring: #a80056;--portal-btn-secondary-bg: #ffffff;--portal-btn-secondary-border: #d6cdd8;--portal-btn-secondary-fg: #241f28;--portal-btn-secondary-hover-bg: #f5f1f5;--portal-danger: #b3261e;--portal-danger-strong: #8c1d17;--portal-danger-quiet-fg: #b3261e;--portal-link: #a80056}@media(prefers-color-scheme:dark){:root{--portal-accent: #ef4b96;--portal-accent-strong: #ff7cb4;--portal-accent-soft: #3a1a2b;--portal-accent-soft-border: #5c2740;--portal-on-accent: #241018;--portal-bg: #18151a;--portal-surface: #211d24;--portal-surface-raised: #2a2530;--portal-border: #383142;--portal-border-strong: #4a4252;--portal-text: #f1edf3;--portal-text-muted: #b3a9b9;--portal-text-faint: #857b8d;--portal-shell-header-bg: #211d24;--portal-status-progress-bg: #3a1f34;--portal-status-progress-fg: #f0a0cf;--portal-status-scheduled-bg: #1b2c42;--portal-status-scheduled-fg: #8fbdf2;--portal-status-paid-bg: #17301f;--portal-status-paid-fg: #85d3a0;--portal-status-declined-bg: #3a1c1a;--portal-status-declined-fg: #f3a19c;--portal-status-changes-bg: #3a2c11;--portal-status-changes-fg: #eec27f;--portal-status-withdrawn-bg: #322c37;--portal-status-withdrawn-fg: #b3a9b9;--portal-error-bg: #3a1c1a;--portal-error-fg: #f3a19c;--portal-error-border: #5c2a26;--portal-note-bg: #182a1c;--portal-note-fg: #86cc9c;--portal-focus-ring: #ff7cb4;--portal-btn-secondary-bg: #2a2530;--portal-btn-secondary-border: #4a4252;--portal-btn-secondary-fg: #f1edf3;--portal-btn-secondary-hover-bg: #332c3a;--portal-danger: #f3a19c;--portal-danger-strong: #ffb8b2;--portal-danger-quiet-fg: #f3a19c;--portal-link: #ff7cb4}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--portal-bg);color:var(--portal-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{font-weight:650;margin:0 0 .5em;color:var(--portal-text)}h1{font-size:1.4rem}h2{font-size:1.05rem}p{margin:0 0 .75em}a{color:var(--portal-link)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--portal-focus-ring);outline-offset:2px}.portal-muted{color:var(--portal-text-muted)}.portal-splash{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,var(--portal-hero-from),var(--portal-hero-to))}.portal-splash img{width:148px;max-width:50vw;height:auto;opacity:.92}.portal-shell{min-height:100vh;display:flex;flex-direction:column}.portal-header{background:linear-gradient(100deg,var(--portal-hero-from),var(--portal-hero-to));border-bottom:1px solid var(--portal-hero-to);position:sticky;top:0;z-index:10}.portal-header-inner{max-width:720px;margin:0 auto;padding:.9rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.portal-brand{display:inline-flex;align-items:center;text-decoration:none;padding:.1rem 0}.portal-brand img{height:26px;width:auto;display:block}.portal-nav{display:flex;gap:1.1rem}.portal-nav a{color:var(--portal-hero-muted);text-decoration:none;font-weight:550;font-size:.92rem;display:inline-block;padding:.6rem .2rem;margin:-.6rem -.2rem;border-bottom:2px solid transparent}.portal-nav a.is-active{color:var(--portal-hero-fg);border-bottom-color:var(--portal-hero-fg)}.portal-nav a:hover{color:var(--portal-hero-fg)}.portal-nav a.portal-nav-me{display:inline-flex;align-items:center;gap:.45rem}.portal-nav-me img,.portal-nav-me span[aria-hidden]{width:24px;height:24px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:var(--portal-hero-avatar-bg);color:var(--portal-hero-fg);font-size:.68rem;font-weight:700}@media(max-width:460px){.portal-nav{gap:.85rem}.portal-nav-me-label{display:none}}.portal-main{flex:1;width:100%}.portal-page{max-width:720px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.portal-page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.portal-page-header h1{margin:0}.portal-back{display:inline-block;margin-bottom:1rem;color:var(--portal-text-muted);text-decoration:none;font-size:.9rem}.portal-back:hover{color:var(--portal-text)}.portal-auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.portal-auth-card{width:100%;max-width:380px;background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:14px;padding:2rem 1.75rem}.portal-brand-title{font-size:1.5rem;margin-bottom:.25rem}.portal-brand-sub{color:var(--portal-text-muted);font-size:.92rem;margin-bottom:1.75rem}.portal-form{display:flex;flex-direction:column;gap:1rem}.portal-field{display:flex;flex-direction:column;gap:.35rem;flex:1}.portal-field-label{font-size:.88rem;font-weight:600;color:var(--portal-text)}.portal-field>span:first-child{font-size:.88rem;font-weight:600;color:var(--portal-text)}.portal-checkbox-field{display:flex;align-items:center;gap:.5rem;font-weight:550}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{background:var(--portal-surface);border:1px solid var(--portal-border-strong);border-radius:8px;padding:.6rem .7rem;color:var(--portal-text);width:100%}input,select,textarea{font-size:16px}textarea{resize:vertical;min-height:5rem}input[type=checkbox],input[type=radio]{accent-color:var(--portal-accent);width:16px;height:16px}.portal-readonly{padding:.6rem .7rem;border:1px solid var(--portal-border);border-radius:8px;background:var(--portal-bg);color:var(--portal-text)}.portal-readonly-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .7rem;border:1px solid var(--portal-border);border-radius:8px;background:var(--portal-bg)}.portal-link-btn{background:none;border:none;color:var(--portal-link);font-weight:600;font-size:.85rem;cursor:pointer;padding:0}.portal-entity-choice{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;border:1px solid var(--portal-border);border-radius:8px}.portal-entity-choice label{display:flex;align-items:center;gap:.5rem}.portal-date-row{display:flex;gap:.75rem;margin-top:.5rem}.portal-amount-row{display:flex;gap:.5rem}.portal-amount-row input{flex:1}.portal-amount-row select{width:auto;min-width:5.5rem}.portal-total-note{margin:.35rem 0 0;font-size:.88rem;color:var(--portal-text-muted)}.portal-lines{display:flex;flex-direction:column;gap:.5rem}.portal-line-row{display:flex;gap:.5rem;align-items:center}.portal-line-row .portal-line-desc{flex:2 1 0;min-width:0}.portal-line-row .portal-line-category{flex:1.4 1 0;min-width:0;width:auto}.portal-line-row .portal-line-project{flex:1.6 1 0;min-width:0;width:auto}.portal-line-row .portal-line-amount{flex:0 0 6.5rem;text-align:right}.portal-line-remove{flex:none;padding:.25rem;line-height:1}.portal-line-foot{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.15rem}.portal-line-total{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-variant-numeric:tabular-nums}.portal-line-total select{width:auto;min-width:5.5rem}@media(max-width:560px){.portal-line-row{flex-wrap:wrap}.portal-line-row .portal-line-desc,.portal-line-row .portal-line-project{flex:1 1 100%}.portal-line-row .portal-line-category{flex:1 1 0}}.portal-bill-lines{margin:.25rem 0 0;padding:0;list-style:none;border:1px solid var(--portal-border);border-radius:8px;overflow:hidden}.portal-bill-lines li{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.45rem .7rem}.portal-bill-lines li+li{border-top:1px solid var(--portal-border)}.portal-bill-line-desc{min-width:0}.portal-bill-line-cat{display:block;font-size:.8rem;color:var(--portal-text-muted)}.portal-bill-line-project{display:block;font-size:.8rem;font-weight:600;color:var(--portal-text-muted)}.portal-bill-line-amount{font-variant-numeric:tabular-nums;white-space:nowrap}.portal-filename{font-size:.85rem;color:var(--portal-text-muted)}.portal-hint{font-size:.83rem;color:var(--portal-text-faint);margin:0}.portal-note{background:var(--portal-note-bg);color:var(--portal-note-fg);border-radius:8px;padding:.6rem .75rem;font-size:.88rem;margin:0}.portal-error{background:var(--portal-error-bg);color:var(--portal-error-fg);border:1px solid var(--portal-error-border);border-radius:8px;padding:.6rem .75rem;font-size:.88rem;margin:0}.portal-field-error{margin:.3rem 0 0;font-size:.83rem;font-weight:600;color:var(--portal-error-fg)}.portal-context-error{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;margin-bottom:1.25rem}.portal-context-loading{margin-bottom:1.25rem;font-style:italic}.portal-notice{background:var(--portal-accent-soft);border:1px solid var(--portal-accent-soft-border);border-radius:10px;padding:.9rem 1rem;display:flex;flex-direction:column;gap:.5rem}.portal-notice p{margin:0;font-weight:550}.portal-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:9px;padding:.65rem 1.1rem;font-weight:600;font-size:.92rem;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background-color .12s ease}.portal-btn:disabled{opacity:.55;cursor:not-allowed}.portal-btn-primary{background:var(--portal-accent);color:var(--portal-on-accent)}.portal-btn-primary:not(:disabled):hover{background:var(--portal-accent-strong)}.portal-btn-secondary{background:var(--portal-btn-secondary-bg);border-color:var(--portal-btn-secondary-border);color:var(--portal-btn-secondary-fg)}.portal-btn-secondary:not(:disabled):hover{background:var(--portal-btn-secondary-hover-bg)}.portal-btn-danger{background:var(--portal-danger);color:var(--portal-on-accent)}.portal-btn-danger:not(:disabled):hover{background:var(--portal-danger-strong)}.portal-btn-danger-quiet{background:none;border-color:var(--portal-border-strong);color:var(--portal-danger-quiet-fg)}.portal-btn-danger-quiet:not(:disabled):hover{background:var(--portal-error-bg)}.portal-empty{text-align:center;padding:3rem 1.5rem;border:1px dashed var(--portal-border-strong);border-radius:12px;color:var(--portal-text-muted)}.portal-bill-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.portal-bill-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:12px;padding:1rem 1.1rem;text-decoration:none;color:var(--portal-text);flex-wrap:wrap}.portal-bill-card:hover{border-color:var(--portal-border-strong)}.portal-bill-card-main{display:flex;flex-direction:column;gap:.2rem;min-width:0}.portal-bill-id{font-size:.78rem;font-weight:600;color:var(--portal-text-faint);letter-spacing:.02em}.portal-bill-project{font-weight:650}.portal-bill-desc{color:var(--portal-text-muted);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:32ch}.portal-bill-card-side{display:flex;flex-direction:column;align-items:flex-end;gap:.3rem;text-align:right}.portal-amount{font-variant-numeric:tabular-nums;font-weight:650;text-align:right}.portal-amount-lg{font-size:1.3rem}.portal-chip{display:inline-block;border-radius:999px;padding:.2rem .65rem;font-size:.78rem;font-weight:650}.portal-chip-progress{background:var(--portal-status-progress-bg);color:var(--portal-status-progress-fg)}.portal-chip-scheduled{background:var(--portal-status-scheduled-bg);color:var(--portal-status-scheduled-fg)}.portal-chip-paid{background:var(--portal-status-paid-bg);color:var(--portal-status-paid-fg)}.portal-chip-declined{background:var(--portal-status-declined-bg);color:var(--portal-status-declined-fg)}.portal-chip-changes{background:var(--portal-status-changes-bg);color:var(--portal-status-changes-fg)}.portal-chip-withdrawn{background:var(--portal-status-withdrawn-bg);color:var(--portal-status-withdrawn-fg)}.portal-due,.portal-submitted{font-size:.78rem;color:var(--portal-text-faint)}.portal-status-banner{display:flex;flex-direction:column;gap:.2rem;border-radius:10px;padding:.85rem 1rem;margin-bottom:1.5rem;background:var(--portal-status-withdrawn-bg);color:var(--portal-status-withdrawn-fg)}.portal-status-banner-changes_requested{background:var(--portal-status-changes-bg);color:var(--portal-status-changes-fg)}.portal-status-banner-rejected{background:var(--portal-status-declined-bg);color:var(--portal-status-declined-fg)}.portal-status-banner-label{font-weight:700}.portal-status-banner-hint{font-size:.85rem}.portal-steps{margin-bottom:1.5rem}.portal-steps ol{list-style:none;margin:0;padding:0;display:flex;gap:.4rem}.portal-steps li{flex:1;display:flex;flex-direction:column;align-items:center;gap:.35rem;text-align:center;color:var(--portal-text-faint)}.portal-step-dot{width:100%;height:4px;border-radius:999px;background:var(--portal-border);display:block}.portal-steps li.is-done .portal-step-dot,.portal-steps li.is-current .portal-step-dot{background:var(--portal-accent)}.portal-steps li.is-done .portal-step-label{color:var(--portal-text-muted)}.portal-steps li.is-current .portal-step-label{color:var(--portal-accent);font-weight:650}.portal-step-label{font-size:.72rem}.portal-due-note{margin:.6rem 0 0;font-size:.88rem;font-weight:600;color:var(--portal-status-scheduled-fg)}.portal-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.portal-detail-header h1{margin-bottom:.15rem}.portal-detail-section{margin:1.75rem 0}.portal-detail-section:first-of-type{margin-top:0}.portal-detail-grid{display:grid;grid-template-columns:1fr;gap:.75rem 1.5rem;margin:0}.portal-detail-grid>div{display:flex;flex-direction:column;gap:.15rem;border-bottom:1px solid var(--portal-border);padding-bottom:.6rem}.portal-detail-grid dt{font-size:.78rem;color:var(--portal-text-faint);font-weight:600}.portal-detail-grid dd{margin:0}.portal-detail-grid-full{grid-column:1 / -1}.portal-file-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.portal-file-list a{text-decoration:none;font-weight:600}.portal-file-list a:hover{text-decoration:underline}.portal-timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem}.portal-timeline-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.portal-timeline-label{font-weight:600}.portal-quote{margin:.4rem 0 0;padding:.5rem .85rem;border-left:3px solid var(--portal-border-strong);color:var(--portal-text-muted);font-style:italic;font-size:.9rem}.portal-confirm{background:var(--portal-error-bg);border:1px solid var(--portal-error-border);border-radius:10px;padding:.9rem 1rem}.portal-confirm p{color:var(--portal-error-fg);font-weight:600}.portal-confirm-actions{display:flex;gap:.6rem}.portal-project-picker{position:relative}.portal-project-options{position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;max-height:260px;overflow-y:auto;background:var(--portal-surface-raised);border:1px solid var(--portal-border-strong);border-radius:10px;box-shadow:0 8px 24px #0000001f;list-style:none;margin:0;padding:.35rem}.portal-project-options li{margin:0}.portal-project-options button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;background:none;border:none;text-align:left;padding:.5rem .6rem;border-radius:7px;cursor:pointer;color:var(--portal-text)}.portal-project-options button:hover{background:var(--portal-accent-soft)}.portal-project-name{font-weight:600}.portal-project-ref{margin-right:.5rem;font-weight:500;font-variant-numeric:tabular-nums;color:var(--portal-text-muted)}.portal-project-client{font-size:.8rem;color:var(--portal-text-muted)}.portal-project-status{display:inline-block;margin-left:.5rem;padding:.05rem .45rem;border-radius:999px;font-size:.7rem;font-weight:600;background:var(--portal-status-progress-bg);color:var(--portal-status-progress-fg)}.portal-project-empty{padding:.6rem;color:var(--portal-text-faint);font-size:.88rem}.portal-chip-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem}.portal-date-chip{background:var(--portal-accent-soft);border:1px solid var(--portal-accent-soft-border);color:var(--portal-accent-strong);border-radius:999px;padding:.3rem .75rem;font-size:.8rem;font-weight:600;cursor:pointer}.portal-date-chip:hover{background:var(--portal-accent-soft-border)}.portal-success{text-align:center;padding-top:3rem}.portal-success-id{font-size:1.4rem;font-weight:700;color:var(--portal-accent);margin-bottom:1rem}@media(min-width:480px){.portal-date-row{gap:1rem}}.portal-extract{display:flex;flex-direction:column;gap:.4rem;margin:-.25rem 0 .25rem}.portal-extract-note{font-size:.82rem}.portal-extract-busy{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border:1px solid var(--portal-border-strong);border-radius:10px;background:var(--portal-accent-soft);font-size:1rem}.portal-extract-busy strong{display:block;font-size:1.05rem}.portal-extract-busy-sub{display:block;font-size:.85rem;color:var(--portal-text-muted)}.portal-extract-spinner{flex:none;width:22px;height:22px;border:3px solid var(--portal-border-strong);border-top-color:var(--portal-accent);border-radius:50%;animation:portal-extract-spin .9s linear infinite}@keyframes portal-extract-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.portal-extract-spinner{animation:none}}.portal-form-fields{display:flex;flex-direction:column;gap:1rem;margin:0;padding:0;border:none;min-width:0;transition:opacity .15s ease}.portal-form-fields:disabled{opacity:.55;pointer-events:none}.portal-receipt-list{list-style:none;margin:0 0 .5rem;padding:0;border:1px solid var(--portal-border);border-radius:8px;overflow:hidden}.portal-receipt-list li{display:flex;align-items:baseline;gap:.75rem;padding:.45rem .7rem}.portal-receipt-list li+li{border-top:1px solid var(--portal-border)}.portal-receipt-name{flex:1;min-width:0;overflow-wrap:anywhere}.portal-receipt-meta{color:var(--portal-text-muted);font-size:.82rem;white-space:nowrap}.portal-receipt-add{align-self:flex-start}.portal-link-button{background:none;border:0;padding:0;font:inherit;color:var(--portal-accent);text-decoration:underline;cursor:pointer}.portal-link-button:hover{text-decoration:none}.portal-work-groups{display:flex;flex-direction:column;gap:2rem}.portal-work-section-title{font-size:.95rem;text-transform:uppercase;letter-spacing:.04em;color:var(--portal-text-muted);margin:0 0 .75rem}.portal-work-grid{display:grid;grid-template-columns:1fr;gap:.75rem}.portal-work-past-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:0;margin-bottom:.75rem;cursor:pointer;text-align:left;font:inherit}.portal-work-past-toggle .portal-work-section-title{margin:0}.portal-work-card{background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:12px;padding:1rem 1.1rem;cursor:pointer;display:flex;flex-direction:column;gap:.6rem}.portal-work-card:hover{border-color:var(--portal-border-strong)}.portal-work-card-head{display:flex;align-items:flex-start;gap:.7rem}.portal-work-monogram{flex:none;width:2.1rem;height:2.1rem;border-radius:999px;background:var(--portal-accent-soft);color:var(--portal-accent-strong);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.portal-work-title-group{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.portal-work-name{font-weight:650}.portal-work-ref{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;color:var(--portal-text-faint)}.portal-work-status-chip{flex:none;background:var(--portal-status-withdrawn-bg);color:var(--portal-status-withdrawn-fg);white-space:nowrap}.portal-work-role-row{margin-bottom:0}.portal-work-role-chip{background:var(--portal-status-progress-bg);color:var(--portal-status-progress-fg)}.portal-work-window{margin:0;font-size:.85rem}.portal-work-detail{display:flex;flex-direction:column;gap:1.1rem;margin-top:.4rem;padding-top:.9rem;border-top:1px solid var(--portal-border);cursor:default}.portal-work-detail-section{display:flex;flex-direction:column;gap:.6rem}.portal-work-detail-title{font-size:.82rem;text-transform:uppercase;letter-spacing:.03em;color:var(--portal-text-faint);margin:0}.portal-work-shoot-list,.portal-work-task-list,.portal-work-deliverable-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.portal-work-shoot-item,.portal-work-task-item,.portal-work-deliverable-item{border:1px solid var(--portal-border);border-radius:9px;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.25rem}.portal-work-shoot-item.is-past{opacity:.6}.portal-work-shoot-item.is-upcoming{border-color:var(--portal-accent-soft-border);background:var(--portal-accent-soft)}.portal-work-shoot-main{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.portal-work-shoot-name{font-weight:600}.portal-work-shoot-type,.portal-work-shoot-meta,.portal-work-task-meta{font-size:.82rem}.portal-work-shoot-meta,.portal-work-task-meta{display:flex;flex-wrap:wrap;gap:.1rem .6rem}.portal-work-task-main{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.portal-work-task-name{font-weight:600}.portal-work-overdue{display:inline-block;border-radius:999px;padding:.15rem .55rem;font-size:.72rem;font-weight:700;background:var(--portal-error-bg);color:var(--portal-error-fg)}.portal-work-priority{font-weight:600}.portal-work-notes{margin:.2rem 0 0;font-size:.85rem;color:var(--portal-text-muted);white-space:pre-line}.portal-work-footer{margin-top:2rem;font-size:.8rem;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.4rem .75rem}.portal-work-refresh-btn{display:inline-flex;align-items:center;gap:.3rem;background:none;border:0;padding:0;font:inherit;font-size:.8rem;font-weight:600;color:var(--portal-accent);cursor:pointer}.portal-work-refresh-btn:hover:not(:disabled){text-decoration:underline}.portal-work-refresh-btn:disabled{opacity:.6;cursor:not-allowed;text-decoration:none}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:720px){.portal-work-grid{grid-template-columns:1fr 1fr;align-items:start}}.portal-landing{min-height:100vh;display:flex;flex-direction:column;align-items:center;background:var(--portal-bg)}.portal-landing-hero{width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.4rem;padding:3.5rem 1.5rem 3rem;background:linear-gradient(160deg,var(--portal-hero-from),var(--portal-hero-to));color:var(--portal-hero-fg)}.portal-landing-wordmark{height:44px;width:auto}.portal-landing-tagline{margin:.75rem 0 0;font-size:1.05rem;font-weight:650;letter-spacing:.01em}.portal-landing-sub{margin:0;max-width:34rem;font-size:.92rem;color:var(--portal-hero-muted);line-height:1.5}.portal-landing-note{margin:1.25rem 1.5rem -.5rem;max-width:46rem}.portal-landing-doors{display:grid;grid-template-columns:1fr;gap:1.25rem;width:min(100% - 2.5rem,46rem);margin:-1.5rem auto 0;align-items:start}@media(min-width:720px){.portal-landing-doors{grid-template-columns:1fr 1fr}}.portal-landing-door{background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:14px;padding:1.5rem 1.4rem 1.6rem;box-shadow:0 10px 28px -18px var(--portal-hero-to)}.portal-landing-door h2{margin:0 0 .35rem;font-size:1.05rem}.portal-landing-door-sub{margin:0 0 1.1rem;font-size:.88rem;color:var(--portal-text-muted);line-height:1.5}.portal-landing-google{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none}.portal-landing-foot{margin:2.25rem 0 1.5rem;font-size:.8rem;color:var(--portal-text-faint)}.portal-profile-head{display:flex;align-items:flex-start;gap:1.1rem;flex-wrap:wrap}.portal-avatar{flex:none;width:76px;height:76px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--portal-accent-soft);border:1px solid var(--portal-accent-soft-border);color:var(--portal-accent-strong);font-size:1.5rem;font-weight:700;letter-spacing:.02em}.portal-avatar img{width:100%;height:100%;object-fit:cover;display:block}.portal-profile-head-text{min-width:12rem;flex:1}.portal-profile-name{margin:0;font-size:1.1rem;font-weight:700}.portal-profile-head-text .portal-btn{margin-top:.75rem}.portal-tax-card{border:1px solid var(--portal-border);border-radius:12px;padding:1.1rem 1.1rem 1.2rem;margin-top:1rem;background:var(--portal-surface-raised)}.portal-tax-card h3{margin:0 0 .4rem;font-size:.95rem}.portal-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;min-height:8.5rem;padding:1.25rem 1rem;text-align:center;border:2px dashed var(--portal-border-strong);border-radius:12px;background:var(--portal-bg);cursor:pointer;transition:border-color .12s ease,background .12s ease}.portal-dropzone:hover{border-color:var(--portal-accent)}.portal-dropzone:focus-visible{outline:2px solid var(--portal-focus-ring);outline-offset:2px}.portal-dropzone-active{border-color:var(--portal-accent);background:var(--portal-accent-soft)}.portal-dropzone-filled{border-style:solid;border-color:var(--portal-border);background:var(--portal-surface-raised)}.portal-dropzone-title{font-weight:600}.portal-dropzone-filename{font-weight:600;word-break:break-all}.portal-dropzone-meta{font-size:.83rem;color:var(--portal-text-muted)}.portal-dropzone-actions{display:flex;gap:1rem;margin-top:.35rem}.portal-dropzone-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.portal-preview{margin-top:.75rem;border:1px solid var(--portal-border);border-radius:12px;background:var(--portal-surface-raised);overflow:hidden}.portal-preview-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem .8rem;border-bottom:1px solid var(--portal-border)}.portal-preview-title{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-muted)}.portal-preview-tools{display:flex;align-items:center;gap:.9rem}.portal-preview-frame{display:block;width:100%;height:420px;border:0;background:var(--portal-bg)}.portal-preview-image{display:block;width:100%;max-height:420px;object-fit:contain;background:var(--portal-bg)}.portal-preview-fallback{margin:0;padding:1.5rem 1rem;text-align:center}@media(max-width:560px){.portal-preview-frame,.portal-preview-image{height:260px;max-height:260px}}.portal-w9-warnings{display:grid;gap:.45rem;border:1px solid var(--portal-error-border);border-radius:8px;padding:.6rem .75rem}.portal-w9-warnings ul{margin:0;padding-left:1.1rem;font-size:.85rem}.portal-w9-warnings .portal-field-error{margin:0}.portal-addressee-warning{display:flex;flex-direction:column;gap:4px;margin-top:10px;padding:12px 14px;border-radius:10px;background:var(--portal-status-changes-bg);color:var(--portal-status-changes-fg);border:1px solid color-mix(in srgb,var(--portal-status-changes-fg) 25%,transparent);font-size:14px;line-height:1.5}.portal-addressee-warning q{quotes:"“" "”"}.portal-resubmit-cta{display:flex;flex-direction:column;gap:8px;align-items:flex-start;margin:8px 0 4px}.portal-resubmit-cta p{margin:0;font-size:13px}
