﻿*:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)){all:unset;display:revert}*,*::before,*::after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}a,button{cursor:revert}ol,ul,menu,summary{list-style:none}ol{counter-reset:revert}img{max-inline-size:100%;max-block-size:100%}table{border-collapse:collapse}input,textarea{-webkit-user-select:auto}textarea{white-space:revert}meter{-webkit-appearance:revert;appearance:revert}:where(pre){all:revert;box-sizing:border-box}::placeholder{color:unset}:where([hidden]){display:none}:where([contenteditable]:not([contenteditable=false])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable=true]){-webkit-user-drag:element}:where(dialog:modal){all:revert;box-sizing:border-box}::-webkit-details-marker{display:none}@font-face{font-family:"lucide";src:url("/fonts/lucide_subset.woff2?v=ed16df60") format("woff2");font-display:block}[class^=icon-],[class*=" icon-"]{font-family:"lucide" !important;font-size:inherit;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-arrow-down::before{content:""}.icon-arrow-left::before{content:""}.icon-arrow-up::before{content:""}.icon-badge-check::before{content:""}.icon-bug::before{content:""}.icon-calendar-arrow-down::before{content:""}.icon-calendar-arrow-up::before{content:""}.icon-calendar-days::before{content:""}.icon-calendar-plus::before{content:""}.icon-check::before{content:""}.icon-chevron-down::before{content:""}.icon-chevrons-up-down::before{content:""}.icon-circle-check::before{content:""}.icon-circle-dollar-sign::before{content:""}.icon-circle-x::before{content:""}.icon-clipboard-list::before{content:""}.icon-copy::before{content:""}.icon-credit-card::before{content:""}.icon-eye::before{content:""}.icon-file-code::before{content:""}.icon-file-text::before{content:""}.icon-fuel::before{content:""}.icon-gauge::before{content:""}.icon-globe::before{content:""}.icon-hand-coins::before{content:""}.icon-handshake::before{content:""}.icon-hard-hat::before{content:""}.icon-heart::before{content:""}.icon-info::before{content:""}.icon-list-checks::before{content:""}.icon-lock::before{content:""}.icon-log-out::before{content:""}.icon-mail::before{content:""}.icon-pencil::before{content:""}.icon-plus::before{content:""}.icon-receipt::before{content:""}.icon-save::before{content:""}.icon-star::before{content:""}.icon-tent::before{content:""}.icon-trash-2::before{content:""}.icon-triangle-alert::before{content:""}.icon-user-plus::before{content:""}.icon-user-round-plus::before{content:""}.icon-users::before{content:""}.icon-venetian-mask::before{content:""}.icon-x::before{content:""}:root{font-family:Inter,sans-serif;--font-family: "Inter", sans-serif;--text-xs: 13px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 22px;--text-3xl: 28px;--black: #000;--white: #fff;--grey: rgba(0, 0, 0, 0.45);--grey-light: rgba(0, 0, 0, 0.08);--grey-hover: rgba(0, 0, 0, 0.12);--bg-primary: #f6f4f0;--bg-card: #fff;--bg-overlay: rgba(0, 0, 0, 0.06);--bg-overlay-hover: rgba(0, 0, 0, 0.08);--border-color: rgba(0, 0, 0, 0.08);--text-primary: #000;--text-secondary: rgba(0, 0, 0, 0.45);--text-muted: #6c757d;--link-color: #007bff;--error-bg: #fef2f2;--error-border: #fca5a5;--error-text: #991b1b;--success-bg: #d1fae5;--success-border: #a7f3d0;--success-text: #065f46;--alert-success-bg: #d1ffe0;--alert-success-text: #2a6d40;--alert-error-bg: #ffd1d1;--alert-error-text: #6d2a2a;--alert-warning-bg: #fef7e0;--alert-warning-text: #b95000;--alert-info-bg: #d1f0ff;--alert-info-text: #028bcb;--spacing-xs: 0.25rem;--spacing-sm: 0.5rem;--spacing-md: 0.75rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--radius-sm: 0.5rem;--radius-md: 1rem;--radius-alert: 0.5rem;--radius-lg: 0.875rem;--radius-full: 4rem;--max-width: 80rem;--card-max-width: 40rem;--avatar-size: 4rem;--z-tooltip: 1000;--z-nav: 1100;--z-float: 1200}@supports(font-variation-settings: normal){:root{font-family:InterVariable,sans-serif}}html{background-color:var(--bg-primary);color:var(--text-primary);font-weight:400;line-height:1.5}:where(h1,h2,h3,p,ul,ol){margin:0}h1{color:var(--text-primary);font-size:var(--text-3xl);font-weight:600;line-height:1}h2{color:var(--text-primary);font-size:var(--text-lg);font-weight:600;line-height:1.25}h3{color:var(--text-primary);font-size:var(--text-base);font-weight:600;line-height:1.25}p{color:var(--text-primary);font-size:var(--text-base);line-height:1.5}:where(strong,b){font-weight:600}em{font-style:italic}small{font-size:var(--text-sm)}:where(code,kbd,samp,pre){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}ul{padding-inline-start:var(--spacing-xl);list-style:disc}ol{padding-inline-start:var(--spacing-xl);list-style:decimal}:where(section,article,form,fieldset){display:grid;gap:var(--spacing-lg);min-width:0}hr{width:100%;margin:0;border:none;border-top:1px solid var(--border-color)}a{color:var(--black);font-weight:500;text-decoration:none}a:hover{text-decoration:underline}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;min-height:100dvh;flex-direction:column;align-items:center;font-size:var(--text-sm)}@media(min-width: 768px){body{gap:var(--spacing-lg)}}@media(max-width: 767px){body{gap:0}}@media(min-width: 768px){body:has(.navbar){padding:var(--spacing-lg) 0}}@media(max-width: 767px){body:has(.navbar){padding:0}}body:not(:has(.navbar)){padding:var(--spacing-lg) 0}.navbar{background:var(--white);width:100%;display:flex;align-items:center;padding:8px 16px;position:relative}@media(min-width: 768px){.navbar{border-radius:var(--radius-lg);max-width:var(--max-width);height:58px}}@media(max-width: 767px){.navbar{border-radius:0;padding:12px 16px;min-height:56px}}.navbar-container{display:flex;align-items:center;width:100%;gap:16px}@media(max-width: 767px){.navbar-container{justify-content:space-between}}.navbar-logo{display:flex;align-items:center;z-index:1001}.navbar-logo a{display:flex;align-items:center;text-decoration:none;font-weight:600;font-size:18px;color:var(--black)}.navbar-toggle{display:none;flex-direction:column;gap:4px;background:none;border:none;padding:8px;cursor:pointer;z-index:1001}@media(max-width: 767px){.navbar-toggle{display:flex}}.navbar-toggle .hamburger{width:24px;height:2px;background-color:var(--black);transition:all .3s}.navbar-menu{display:flex;align-items:center;gap:16px;flex:1;justify-content:space-between}@media(max-width: 767px){.navbar-menu{position:fixed;top:56px;left:0;right:0;background:var(--white);flex-direction:column;align-items:stretch;padding:16px;box-shadow:0 4px 6px rgba(0,0,0,.1);max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .3s ease;z-index:1000}.navbar-menu.open{max-height:calc(100vh - 56px);opacity:1;overflow-y:auto}}.navbar-nav{display:flex;gap:8px;align-items:center}@media(max-width: 767px){.navbar-nav{flex-direction:column;width:100%;gap:0}}.nav-item{display:flex;align-items:center;justify-content:center;padding:12px 8px;border-radius:8px;font-size:14px;color:var(--black);text-decoration:none;font-family:-apple-system,BlinkMacSystemFont,"SF Pro",sans-serif;transition:background-color .2s;white-space:nowrap}.nav-item:hover{background-color:rgba(0,0,0,.04)}.nav-item.active{background-color:rgba(0,0,0,.06)}@media(max-width: 767px){.nav-item{width:100%;justify-content:flex-start;padding:16px;border-radius:0;border-bottom:1px solid var(--grey-light)}.nav-item:hover{background-color:rgba(0,0,0,.02)}}.nav-dropdown{position:relative}.nav-dropdown>summary{gap:var(--spacing-xs);cursor:pointer;list-style:none}.nav-dropdown>summary::-webkit-details-marker{display:none}.nav-dropdown>summary .icon-chevron-down{font-size:var(--text-xs);transition:transform .15s ease}.nav-dropdown[open]>summary{background-color:rgba(0,0,0,.06)}.nav-dropdown[open] .icon-chevron-down{transform:rotate(180deg)}@media(max-width: 767px){.nav-dropdown{width:100%}}.nav-dropdown-menu{position:absolute;z-index:var(--z-nav);top:calc(100% + var(--spacing-xs));left:0;width:240px;padding:var(--spacing-xs);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--white);box-shadow:0 8px 24px rgba(0,0,0,.12)}@media(max-width: 767px){.nav-dropdown-menu{position:static;width:100%;padding:var(--spacing-xs) var(--spacing-md) var(--spacing-sm);border:0;border-bottom:1px solid var(--grey-light);border-radius:0;box-shadow:none}}.nav-dropdown-group{display:grid;gap:2px}.nav-dropdown-group+.nav-dropdown-group{margin-top:var(--spacing-xs);padding-top:var(--spacing-xs);border-top:1px solid var(--border-color)}.nav-dropdown-label{padding:var(--spacing-xs) var(--spacing-sm);color:var(--text-secondary);font-size:var(--text-xs);font-weight:600}.nav-dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:9px var(--spacing-sm);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);font-weight:400;text-decoration:none}.nav-dropdown-item>i{width:16px;flex-shrink:0;color:var(--text-secondary);font-size:var(--text-base);text-align:center}.nav-dropdown-item:hover,.nav-dropdown-item.active{background:var(--bg-overlay);text-decoration:none}.navbar-user{display:flex;align-items:center;gap:12px}@media(max-width: 767px){.navbar-user{width:100%;padding:16px;border-top:2px solid var(--grey-light);margin-top:8px}}.navbar-profile-link{display:flex;align-items:center;gap:12px;text-decoration:none;transition:opacity .2s}.navbar-profile-link:hover{opacity:.8}.navbar-username{font-size:14px;color:var(--black);font-weight:500}@media(min-width: 768px){.navbar-username{display:none}}.navbar-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;overflow:hidden;background-color:var(--grey-light);transition:transform .2s}.navbar-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background-color:var(--grey-light);color:var(--black);font-weight:600;font-size:14px}.page{--page-content-inset: var(--spacing-2xl);display:flex;width:100%;max-width:var(--max-width);flex-direction:column;align-items:stretch;gap:var(--spacing-lg)}.page>.card{max-width:none}.page>:not(.card,.page-columns,dialog){padding-inline:var(--page-content-inset)}.page-columns{display:flex;width:100%;max-width:var(--max-width);gap:var(--spacing-lg);align-items:flex-start}.page-columns>.card{flex:1;min-width:0}.page-columns>.card:first-child{flex:3}.page-columns>.card:last-child{flex:2}.page-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-lg);width:100%}.panel{border-radius:var(--radius-md);background:var(--bg-card);padding:var(--spacing-lg)}.stack{display:flex;flex-direction:column;gap:var(--spacing-xs)}.card{background:var(--white);border-radius:var(--radius-md);padding:var(--spacing-2xl);width:100%;max-width:var(--card-max-width);display:grid;gap:var(--spacing-lg)}.card-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.card-header>h1,.card-header>h2,.card-header>h3{flex:1;min-width:0}.card-header>.btn{flex-shrink:0}.help-text{font-size:var(--text-base);line-height:1.5;color:var(--text-secondary);margin:0}dialog{position:fixed;inset:0;margin:auto;width:min(44rem,100% - 2*var(--spacing-lg));max-height:calc(100vh - 2*var(--spacing-lg));padding:var(--spacing-2xl);overflow:auto;border:0;border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);box-shadow:0 16px 48px rgba(0,0,0,.2)}dialog[open]{display:grid;gap:var(--spacing-lg);opacity:1;translate:0 0;transition:opacity .18s ease,translate .18s ease}@starting-style{dialog[open]{opacity:0;translate:0 .5rem}}dialog::backdrop{background:rgba(0,0,0,.48)}.dialog-sm{max-width:28rem}@media(max-width: 640px){dialog{width:calc(100% - 2*var(--spacing-md))}}button:not([class]),.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px;border:none;border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:400;text-decoration:none;cursor:pointer;color:var(--text-primary);background-color:var(--grey-light);transition:background-color .2s}button:not([class]):hover:not(:disabled){background-color:var(--grey-hover)}button:not([class]):disabled,.btn:disabled{opacity:.5;cursor:not-allowed}.btn{min-width:64px}.btn i[class^=icon-],.btn i[class*=" icon-"]{font-size:18px}.btn-icon{width:40px;min-width:40px;height:40px;padding:0}.btn-sm{min-width:32px;height:32px;gap:var(--spacing-xs);padding:5px 10px;border-radius:var(--radius-sm);font-size:var(--text-sm)}.btn-sm i[class^=icon-],.btn-sm i[class*=" icon-"]{font-size:1rem;line-height:1}.btn-icon.btn-sm{width:32px;min-width:32px;flex:0 0 32px;padding:0}.btn-black{background-color:var(--black);color:var(--white)}.btn-black:hover:not(:disabled){background-color:#333}.btn-grey{background-color:var(--grey-light);color:var(--black)}.btn-grey:hover:not(:disabled){background-color:var(--grey-hover)}.btn-danger{background-color:#dc3545;color:var(--white)}.btn-danger:hover:not(:disabled){background-color:#c82333}.btn-block{width:100%}.button-group{display:flex;gap:var(--spacing-lg);width:100%}.button-group form,.button-group>.btn{flex:1;min-width:0}.button-group form .btn{width:100%}.member-search{position:relative}.member-search-results{position:absolute;top:100%;left:0;right:0;z-index:100;max-height:300px;overflow-y:auto;background:var(--white);border:1px solid var(--grey-light);border-radius:var(--radius-lg);box-shadow:0 4px 12px rgba(0,0,0,.15);padding:var(--spacing-sm)}.member-search-results:empty{display:none}.member-search-results .list-group-item{border:none;border-radius:var(--radius-sm);background:rgba(0,0,0,0);padding:var(--spacing-sm)}.member-search-results .list-group-item:hover{background:var(--grey-light)}.member-list .list-group-item{border:none;background:rgba(0,0,0,0);padding:var(--spacing-sm) 0}.list-group{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.list-group-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--white);border:1px solid var(--grey-light);border-radius:var(--radius-lg)}.list-group-item .btn,.list-group-item .btn.btn-grey{flex-shrink:0;width:auto;padding:8px 12px}.list-group-item .avatar{border-radius:var(--radius-full);flex-shrink:0}.list-group-item .member-info{flex:1;display:flex;flex-direction:column;min-width:0}.list-group-item .member-name{font-weight:500}.list-group-item .member-email{font-size:var(--text-sm)}:where(input:not([type=button],[type=checkbox],[type=hidden],[type=radio],[type=reset],[type=submit]),select,textarea),.input{width:100%;font-family:inherit;font-size:var(--text-base);padding:12px;border:1px solid var(--grey-light);border-radius:var(--radius-lg);background:var(--white);color:var(--black)}:where(input:not([type=button],[type=checkbox],[type=hidden],[type=radio],[type=reset],[type=submit]),select,textarea)::placeholder,.input::placeholder{color:var(--grey)}:where(input:not([type=button],[type=checkbox],[type=hidden],[type=radio],[type=reset],[type=submit]),select,textarea):focus,.input:focus{outline:none;border-color:var(--grey-hover)}select{appearance:auto}.input-sm{height:32px;padding:5px 10px;border-radius:var(--radius-sm);font-size:var(--text-sm);line-height:20px}.select-control{position:relative;display:inline-flex;align-items:center;width:100%}.select-control select{appearance:none;-webkit-appearance:none;padding-right:28px}.select-control>i{position:absolute;right:8px;color:var(--text-secondary);font-size:14px;line-height:1;pointer-events:none}.input-readonly{background:rgba(0,0,0,.04);border:1px solid rgba(0,0,0,.08);color:rgba(0,0,0,.66);cursor:default;pointer-events:none}input[type=checkbox]{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:2px solid var(--grey-light);border-radius:4px;background:var(--white);cursor:pointer;position:relative;display:inline-block;vertical-align:middle;margin-right:8px;flex-shrink:0;transition:all .2s ease}input[type=checkbox]:hover{border-color:var(--grey-hover)}input[type=checkbox]:checked{background-color:var(--black);border-color:var(--black)}input[type=checkbox]:checked::after{content:"";position:absolute;left:5px;top:1px;width:6px;height:10px;border:solid var(--white);border-width:0 2px 2px 0;transform:rotate(45deg)}input[type=checkbox]:focus{outline:2px solid var(--black);outline-offset:2px}input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}label{display:flex;align-items:flex-start;cursor:pointer;font-size:var(--text-base);line-height:1.5;color:var(--black);font-weight:600}label input[type=checkbox]{margin-top:2px}.checkbox-group{display:flex;gap:8px;align-items:flex-start;width:100%}.checkbox-group label{display:flex;gap:8px;align-items:flex-start;flex:1;font-weight:400}.checkbox-group label input[type=checkbox]{flex-shrink:0;margin-top:0}.checkbox-group label span{flex:1;display:flex;flex-direction:column;gap:4px}.checkbox-group label span strong{font-weight:600;font-size:var(--text-sm);line-height:1.5;color:var(--black)}.checkbox-group label span .help-text{font-size:var(--text-xs);line-height:1.5;color:var(--text-secondary)}.alert,.error-message{display:flex;align-items:center;gap:10px;padding:16px;border-radius:var(--radius-alert);font-size:var(--text-base);line-height:1.5}.alert i[class^=icon-],.error-message i[class^=icon-],.alert i[class*=" icon-"],.error-message i[class*=" icon-"]{font-size:20px;flex-shrink:0}.alert-success{background:var(--alert-success-bg);color:var(--alert-success-text)}.alert-error,.error-message{background:var(--alert-error-bg);color:var(--alert-error-text)}.alert-warning{background:var(--alert-warning-bg);color:var(--alert-warning-text)}.alert-info{background:var(--alert-info-bg);color:var(--alert-info-text)}.success-icon{font-size:4rem;color:#28a745}.profile-page{width:100%;max-width:640px;align-items:center}.profile-card{display:flex;max-width:640px;flex-direction:column;align-items:stretch;gap:var(--spacing-lg)}.profile-header{display:flex;align-items:center;gap:var(--spacing-xl);text-align:left}.profile-photo{width:var(--avatar-size);height:var(--avatar-size);flex-shrink:0;border-radius:50%;overflow:hidden;background-color:var(--border-color)}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-identity{display:flex;min-width:0;flex:1;flex-direction:column;justify-content:center}.profile-identity h1{font-size:var(--text-2xl);line-height:1}.profile-identity p{color:var(--text-secondary);font-size:var(--text-lg);font-weight:600;line-height:1.25}.profile-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);padding-top:var(--spacing-sm)}.profile-actions .btn{width:auto;padding:10px 12px;border-radius:var(--radius-lg);font-size:var(--text-xs)}.profile-details{display:flex;margin:0;flex-direction:column;gap:var(--spacing-lg)}.profile-details>div{display:grid;gap:var(--spacing-xs)}.profile-details dt{display:flex;align-items:center;color:var(--text-secondary);font-size:var(--text-base);font-weight:400;line-height:1.2}.profile-details dd{margin:0;color:var(--text-primary);font-size:var(--text-base);line-height:1.2}.profile-details a{font-weight:400}.profile-details .visibility-badge{width:20px;height:20px;font-size:var(--text-xs)}.profile-subsection{gap:var(--spacing-lg)}.profile-subsection>header{display:flex;flex-direction:column;gap:var(--spacing-xs)}.profile-lists{display:flex;padding:0;flex-direction:column;gap:var(--spacing-xs);list-style:none}.profile-lists a{font-size:var(--text-base);font-weight:400}.profile-session{width:100%;color:var(--text-secondary);font-size:var(--text-xs);text-align:center}.profile-charges h3{margin-top:var(--spacing-sm)}.profile-charges .btn{width:auto;padding:6px 12px;font-size:var(--text-sm)}.profile-paid-charges{margin-top:var(--spacing-sm)}.profile-paid-charges summary{cursor:pointer;font-size:var(--text-base);font-weight:600}.profile-paid-charges .table{margin-top:var(--spacing-sm)}.calendar-access-form{display:inline-block;max-width:100%}.calendar-access-options{display:inline-grid;grid-template-columns:repeat(2, minmax(110px, 1fr));border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.calendar-access-option{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;color:var(--text-secondary);background:var(--bg-card)}.calendar-access-option+.calendar-access-option{border-left:1px solid var(--border-color)}.calendar-access-option input{position:absolute;opacity:0;pointer-events:none}.calendar-access-option:has(input:checked){color:var(--white);background:var(--black)}.calendar-access-option:focus-within{outline:2px solid var(--black);outline-offset:-2px}.status-badge{display:inline-flex;align-items:center;gap:6px;font-weight:600}.status-badge::before{font-family:"lucide";font-size:16px}.status-paid{color:#28a745}.status-paid::before{content:""}.status-overdue{color:#dc3545}.status-overdue::before{content:""}.status-unpaid{color:#ffc107}.status-unpaid::before{content:""}.visibility-badge-wrapper{position:relative;display:inline-flex;align-items:center;margin-left:var(--spacing-xs)}.visibility-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;cursor:help;transition:all .2s ease}.visibility-public{background-color:#d1fae5;color:#065f46}.visibility-authenticated{background-color:var(--grey-light);color:var(--text-primary)}.visibility-members{background-color:#e6f4ea;color:#137333}.visibility-members:hover{background-color:#d3edda;transform:scale(1.1)}.visibility-owner{background-color:#fef7e0;color:#b95000}.visibility-owner:hover{background-color:#fde7b9;transform:scale(1.1)}.visibility-organizers{background-color:#e8f0fe;color:#1967d2}.visibility-organizers:hover{background-color:#d2e3fc;transform:scale(1.1)}.visibility-unknown{background-color:#dc2626;color:var(--white)}.visibility-unknown:hover{background-color:#b91c1c;transform:scale(1.1)}.visibility-tooltip{position:absolute;bottom:100%;left:50%;transform:translateX(-50%) translateY(-8px);background-color:#1a1a1a;color:var(--white);padding:6px 12px;border-radius:6px;font-size:var(--text-sm);white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:var(--z-tooltip)}.visibility-tooltip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:5px solid rgba(0,0,0,0);border-top-color:#1a1a1a}.visibility-tooltip.show{opacity:1;visibility:visible}.table{width:100%;margin-top:var(--spacing-md);overflow-x:auto}table{width:100%;border-collapse:collapse}table thead{background-color:var(--bg-overlay)}table thead th{padding:var(--spacing-md);text-align:left;font-weight:500;border-bottom:2px solid var(--border-color)}table tbody td{padding:var(--spacing-md);border-bottom:1px solid var(--border-color)}table tbody tr:last-child td{border-bottom:none}.table-sort-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:0;border:0;background:rgba(0,0,0,0);color:inherit;font:inherit;cursor:pointer;white-space:nowrap}.table-sort-button i{color:var(--text-secondary);font-size:var(--text-sm);line-height:1}.table-sort-button:hover{color:var(--text-primary)}th[aria-sort] .table-sort-button i{color:var(--text-primary)}.button-row,.inline-form,.editor-actions,.assignment-list{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.button-row{justify-content:flex-end}.inline-form{grid-template-columns:none}.inline-form>input,.inline-form>select{width:auto;min-width:8rem;flex:1}.inline-form>label{flex-shrink:0}.form-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:var(--spacing-md);min-width:0}.timeline{display:grid;gap:var(--spacing-sm)}.timeline-scroll{--project-column: 11rem;--hour-width: 4rem;--timeline-width: 52rem;overflow:clip;border:1px solid var(--border-color);border-radius:var(--radius-sm)}.timeline-header,.timeline-row{display:grid;grid-template-columns:var(--project-column) minmax(0, 1fr);width:100%}.timeline-header{position:sticky;top:0;z-index:5;border-bottom:1px solid var(--border-color);background:var(--white)}.timeline-row+.timeline-row{border-top:1px solid var(--border-color)}.timeline-project-label{position:sticky;left:0;z-index:3;display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:42px;padding:var(--spacing-xs) var(--spacing-md);overflow:hidden;line-height:1.2;border:0;border-right:1px solid var(--border-color);background:var(--white);color:var(--text-primary);font:inherit;font-weight:500;text-align:left}.timeline-project-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-project-meta{display:flex;gap:var(--spacing-xs);align-items:baseline;color:var(--text-secondary);font-size:var(--text-xs);font-weight:400}.timeline-project-coordinator{min-width:0}.timeline-project-hours{flex:none;margin-left:auto}.timeline-row button.timeline-project-label{cursor:pointer}.timeline-row button.timeline-project-label:hover{background:var(--bg-overlay)}.timeline-header .timeline-project-label{z-index:6;font-size:var(--text-xs);text-transform:uppercase}.timeline-hours,.timeline-cells{display:grid;grid-template-columns:repeat(13, minmax(0, 1fr))}.timeline-hours{position:relative}.timeline-hours span{display:flex;align-items:center;justify-content:center;height:32px;border-left:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--text-xs)}.timeline-hours .timeline-end-label{position:absolute;right:var(--spacing-xs);border-left:0}.timeline-track{position:relative;display:grid;grid-template-columns:repeat(156, minmax(0, 1fr));align-content:start;gap:4px 0;min-height:42px;padding:4px 0;background:var(--white)}.timeline-cells{position:absolute;inset:0}.timeline-cell{border:0;border-left:1px solid var(--border-color);background:rgba(0,0,0,0);cursor:crosshair}.timeline-cell:nth-child(2n){background:var(--bg-primary)}.timeline-cell:hover{background:var(--alert-info-bg)}.timeline-block{position:relative;z-index:2;display:flex;align-items:center;gap:var(--spacing-xs);min-height:32px;min-width:0;padding:0 var(--spacing-sm);overflow:hidden;border:1px solid var(--black);border-radius:var(--radius-sm);background:var(--black);color:var(--white);cursor:pointer;font:inherit;font-size:var(--text-xs);white-space:nowrap}.timeline-block span{opacity:.75}.timeline-block:hover{background:#333}.proposal-timelines{display:grid;gap:var(--spacing-lg);margin-top:var(--spacing-md)}.proposal-day{display:grid;gap:var(--spacing-sm)}.timeline-detailed .timeline-scroll{--hour-width: 6rem;--timeline-width: 78rem}.timeline-detailed .timeline-track{min-height:68px}.timeline-readonly .timeline-cell{cursor:default}.timeline-readonly .timeline-cell:hover{background:rgba(0,0,0,0)}.timeline-readonly .timeline-cell:nth-child(2n):hover{background:var(--bg-primary)}.timeline-readonly .staffing-timeline-block{cursor:default}.staffing-timeline-block{min-height:60px;align-items:stretch;flex-direction:column;gap:2px;padding:4px 6px;line-height:1.2;white-space:normal}.staffing-timeline-block:hover{background:var(--black)}.staffing-timeline-block.has-issues{border-color:var(--alert-warning-text);background:var(--alert-warning-bg);color:var(--alert-warning-text)}.staffing-timeline-block.has-issues:hover{background:var(--alert-warning-bg)}.staffing-timeline-status,.staffing-timeline-names,.staffing-timeline-names>span{display:flex;align-items:center}.staffing-timeline-status{gap:var(--spacing-xs);min-width:0;font-size:10px;white-space:nowrap}.staffing-timeline-status span{display:inline-flex;align-items:center;gap:2px}.staffing-timeline-names{align-items:flex-start;flex-wrap:wrap;gap:2px var(--spacing-xs);font-size:10px}.staffing-timeline-names>span{gap:2px;white-space:nowrap}#timeline-editor:not(:empty){position:fixed;right:var(--spacing-lg);bottom:var(--spacing-lg);z-index:var(--z-float);width:min(28rem,100vw - 2*var(--spacing-lg));max-height:calc(100vh - 7rem);overflow:auto;border-radius:var(--radius-md);background:var(--bg-card);box-shadow:0 16px 48px rgba(0,0,0,.2);opacity:1;translate:0 0;transition:opacity .18s ease,translate .18s ease}@starting-style{#timeline-editor:not(:empty){opacity:0;translate:0 .75rem}}.timeline-editor-panel{display:grid;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg)}.timeline-editor-panel>.card-header{position:sticky;top:0;z-index:1;margin:calc(-1*var(--spacing-md)) calc(-1*var(--spacing-lg)) 0;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-card)}.editor-actions{justify-content:flex-end;flex-wrap:nowrap}.shift-fields{--field-span: 2;--time-field-span: 3;display:grid;gap:var(--spacing-md);min-width:0;grid-template-columns:repeat(6, minmax(0, 1fr))}.shift-fields>.stack{grid-column:span var(--field-span)}.shift-fields>.stack:has(input[type=datetime-local]){grid-column:span var(--time-field-span)}.disclosure{grid-column:1/-1}.disclosure summary{cursor:pointer;font-weight:500}.checkbox-list{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:var(--spacing-sm);margin-top:var(--spacing-md)}.proposal-metrics{--stat-min: 9rem}.schedule-insights,.insight-list{display:grid}.schedule-insights{gap:var(--spacing-md);padding-block:var(--spacing-sm)}.insight-row{display:grid;grid-template-columns:24px minmax(0, 1fr);gap:var(--spacing-sm);padding-block:var(--spacing-md);border-top:1px solid var(--border-color)}.insight-row>i{margin-top:2px;color:var(--text-secondary);font-size:20px}.insight-row.has-warning>i{color:var(--alert-warning-text)}.insight-row-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);flex-wrap:wrap}.insight-changes{display:grid;gap:var(--spacing-xs);margin:var(--spacing-sm) 0 0;padding-left:var(--spacing-lg);color:var(--text-secondary);font-size:var(--text-sm)}.schedule-list{display:grid;gap:var(--spacing-md)}.schedule-row{display:grid;grid-template-columns:minmax(12rem, 1fr) minmax(0, 3fr);gap:var(--spacing-lg);align-items:start;padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.schedule-row.is-mine{border-color:#028bcb;background:var(--alert-info-bg)}.individual-schedule-list{display:grid}.individual-schedule-row{display:grid;grid-template-columns:9rem minmax(0, 1fr);gap:var(--spacing-lg);padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.individual-schedule-row:last-child{border-bottom:0}.individual-schedule-time{font-weight:600;white-space:nowrap}.individual-schedule-details h3{margin-bottom:var(--spacing-sm)}.individual-schedule-crew{display:grid;gap:var(--spacing-xs);margin:0;padding:0;list-style:none}.individual-schedule-crew li{display:flex;align-items:center;gap:var(--spacing-sm)}.individual-schedule-crew .is-person{font-weight:700}.individual-schedule-role{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);font-size:var(--text-sm);font-weight:400}.teardown-page-header{display:grid;grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);align-items:center;gap:var(--spacing-lg);width:100%}.teardown-page-header h1{font-size:var(--text-3xl);font-weight:600;letter-spacing:-0.02em}.teardown-workspace{--page-content-inset: var(--spacing-lg)}.teardown-workspace>.card{padding:var(--spacing-lg)}.teardown-view-nav,.teardown-day-nav{display:flex;align-items:center;gap:var(--spacing-xs)}.teardown-view-nav a,.teardown-day-nav a{padding:var(--spacing-md);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--text-base);text-decoration:none;white-space:nowrap}.teardown-view-nav a:hover,.teardown-view-nav a.active,.teardown-day-nav a:hover,.teardown-day-nav a.active{background:var(--bg-overlay)}.teardown-control-bar{display:grid;grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);align-items:center;gap:var(--spacing-lg);padding-block:var(--spacing-md);border-radius:var(--radius-md);background:var(--bg-card)}.teardown-control-bar>p{text-align:center;white-space:nowrap}.teardown-day-nav a{min-width:4rem;font-size:var(--text-sm);text-align:center}.teardown-control-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.teardown-schedule-summary{text-align:center}.teardown-timeline-card{padding-top:var(--spacing-lg)}.assignment{display:inline-flex;align-items:center;gap:var(--spacing-xs);min-height:32px;padding:4px 8px;border-radius:var(--radius-sm);background:var(--bg-overlay)}.assignment.is-mine{background:var(--black);color:var(--white)}.insight-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--radius-sm);background:var(--bg-overlay);color:var(--text-secondary);font-size:var(--text-xs);white-space:nowrap}.stat-strip,.roster-summary,.charge-summary{display:grid;grid-template-columns:repeat(auto-fit, minmax(var(--stat-min, 8rem), 1fr));margin:0;padding:var(--spacing-lg) 0;border-block:1px solid var(--border-color)}.stat-strip>div,.roster-summary>div,.charge-summary>div{min-width:0;padding:0 var(--spacing-lg);border-left:1px solid var(--border-color)}.stat-strip>div:first-child,.roster-summary>div:first-child,.charge-summary>div:first-child{padding-left:0;border-left:0}.stat-strip dt,.roster-summary dt,.charge-summary dt{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);font-size:var(--text-sm);font-weight:500}.stat-strip dt i,.roster-summary dt i,.charge-summary dt i{font-size:1rem}.stat-strip dd,.roster-summary dd,.charge-summary dd{margin:var(--spacing-xs) 0 0;font-size:var(--text-xl);font-weight:600;font-variant-numeric:tabular-nums}.charge-summary{grid-template-columns:repeat(3, minmax(0, 1fr))}.charge-summary>div{padding:0 var(--spacing-xl)}.charge-summary>div:first-child{padding-left:0}.charges-table th,.charges-table td{vertical-align:top}.charges-table .charge-row-unpaid{background:var(--alert-warning-bg)}.charges-table .charge-amount,.charges-table .charge-date{white-space:nowrap;font-variant-numeric:tabular-nums}.charges-table .charge-amount{font-weight:600}.charges-table .charge-status{min-width:7rem}.charges-table .charge-status small{display:block;margin-top:var(--spacing-xs);color:var(--text-secondary)}.charges-table-container{margin-top:0}.charge-actions{display:flex;gap:var(--spacing-sm);white-space:nowrap}.charge-detail{gap:var(--spacing-xl)}.charge-detail-amount{font-size:var(--text-3xl);font-weight:600;font-variant-numeric:tabular-nums}.charge-details{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:var(--spacing-xl);margin:0;padding-block:var(--spacing-xl);border-block:1px solid var(--border-color)}.charge-details>div{min-width:0}.charge-details dt{margin-bottom:var(--spacing-xs);color:var(--text-secondary);font-size:var(--text-sm);font-weight:500}.charge-details dd{margin:0;font-size:var(--text-base);overflow-wrap:anywhere}.charge-details small{display:block;margin-top:var(--spacing-xs);color:var(--text-secondary)}.charge-detail footer{display:flex;justify-content:flex-end}.event-list-card{gap:var(--spacing-xl)}.event-table-container{margin-top:0}.event-table th,.event-table td{vertical-align:top}.event-table .event-name{min-width:12rem}.event-table .event-name a{font-weight:600}.event-table .event-date{white-space:nowrap}.event-table .event-access{min-width:8rem}.event-table small{display:block;margin-top:var(--spacing-xs);color:var(--text-secondary)}.event-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);white-space:nowrap}.roster-summary{gap:var(--spacing-md) 0}.roster-table-container{margin-top:0}.roster-table{width:max-content;min-width:100%}.roster-table th,.roster-table td{vertical-align:middle;padding:var(--spacing-sm) var(--spacing-md)}.roster-table th{white-space:nowrap;font-size:var(--text-sm)}.roster-table small{display:block;margin-top:var(--spacing-xs);color:var(--text-secondary)}.roster-table .roster-row-owing{background:var(--alert-warning-bg)}.roster-table .roster-member{min-width:12rem}.roster-table .roster-member a{font-weight:600}.roster-table .roster-toggle,.roster-table .roster-gas{text-align:center}.roster-table .roster-arrival,.roster-table .roster-departure,.roster-table .roster-dues,.roster-table .roster-balance{white-space:nowrap;font-variant-numeric:tabular-nums}.roster-arrival .select-control{min-width:8.5rem}.roster-departure .select-control{min-width:11rem}.roster-dues .select-control{min-width:5.5rem}.roster-field-row{display:flex;align-items:center;gap:var(--spacing-sm)}.roster-locked{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);cursor:help}.empty-state{justify-items:center;padding-block:calc(var(--spacing-2xl)*2);text-align:center}.empty-state>i{color:var(--text-secondary);font-size:var(--text-3xl)}.center-viewport{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:10%}.text-center{text-align:center}.text-muted{color:var(--text-secondary)}.visibility-picker{display:flex;flex-direction:column;gap:var(--spacing-lg)}.visibility-picker .visibility-options{display:flex;flex-direction:column}.visibility-picker .visibility-option{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) 0;cursor:pointer;border-bottom:1px solid var(--border-color)}.visibility-picker .visibility-option:last-of-type{border-bottom:none}.visibility-picker .visibility-option-input{position:absolute;opacity:0;pointer-events:none}.visibility-picker .visibility-option-icon{background:var(--grey-light);border-radius:var(--radius-full);padding:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.visibility-picker .visibility-option-icon i{font-size:16px;color:var(--black);line-height:1}.visibility-picker .visibility-option-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.visibility-picker .visibility-option-label{font-size:var(--text-sm);font-weight:600;color:var(--black);line-height:1}.visibility-picker .visibility-option-description{font-size:var(--text-sm);color:var(--grey);line-height:1.3}.visibility-picker .visibility-option-check{flex-shrink:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--grey-light);background:var(--white)}.visibility-picker .visibility-option-check i{font-size:12px;color:var(--white);display:none;line-height:1}.visibility-picker .visibility-option-input:checked~.visibility-option-check{background:var(--black);border-color:var(--black)}.visibility-picker .visibility-option-input:checked~.visibility-option-check i{display:inline-flex}@media(max-width: 767px){.teardown-page-header,.teardown-control-bar{grid-template-columns:1fr}.teardown-header-spacer,.teardown-control-spacer{display:none}.teardown-view-nav,.teardown-day-nav,.teardown-control-actions{justify-content:flex-start;overflow-x:auto}.teardown-control-bar>p{text-align:left;white-space:normal}.timeline-scroll{overflow-x:auto}.timeline-header,.timeline-row{grid-template-columns:var(--project-column) var(--timeline-width);width:calc(var(--project-column) + var(--timeline-width))}.timeline-hours,.timeline-cells{grid-template-columns:repeat(13, var(--hour-width))}.form-grid,.checkbox-list{grid-template-columns:repeat(2, minmax(0, 1fr))}.shift-fields{--field-span: 3;--time-field-span: 3}.schedule-row{grid-template-columns:1fr}.individual-schedule-row{grid-template-columns:1fr;gap:var(--spacing-sm)}}@media(max-width: 640px){.page{--page-content-inset: var(--spacing-xl)}.page.teardown-workspace{--page-content-inset: var(--spacing-lg)}.page-header{display:grid;align-items:stretch;grid-template-columns:1fr}.timeline-scroll{--project-column: 8.5rem}.button-row{justify-content:stretch}.button-row>.btn{flex:1}.form-grid,.checkbox-list,.proposal-metrics{grid-template-columns:1fr}.shift-fields{--field-span: 6;--time-field-span: 6}#timeline-editor:not(:empty){right:0;bottom:0;left:0;width:100%;max-height:70vh;border-radius:var(--radius-md) var(--radius-md) 0 0}.card{padding:var(--spacing-xl)}.charge-summary>div{padding:0 var(--spacing-md)}.charge-summary dd{font-size:var(--text-base)}.charge-detail .card-header{align-items:flex-start}.charge-details{grid-template-columns:1fr}.charge-detail footer .btn{width:100%}.event-table thead{display:none}.event-table tbody{display:grid}.event-table tbody tr{display:grid;grid-template-columns:minmax(0, 1fr) auto;gap:var(--spacing-xs) var(--spacing-md);padding:var(--spacing-md) var(--spacing-sm);border-bottom:1px solid var(--border-color)}.event-table tbody tr:last-child{border-bottom:0}.event-table tbody td{padding:0;border-bottom:0}.event-table .event-name{min-width:0;grid-column:1}.event-table .event-date,.event-table .event-access{grid-column:1}.event-table .event-action-cell{grid-column:2;grid-row:1/span 3;align-self:center}.profile-card{padding:var(--spacing-xl)}.profile-actions .btn{min-width:0;flex:1 1 0;text-align:center;white-space:normal}.calendar-access-form{width:100%}.calendar-access-options{width:100%}.table{font-size:var(--text-xs)}.table thead th,.table tbody td{padding:var(--spacing-sm)}}