:root{--surface:#fcf9f4;--surface-dim:#dcdad5;--surface-bright:#fcf9f4;--surface-container-lowest:#fff;--surface-container-low:#f6f3ee;--surface-container:#f0ede9;--surface-container-high:#ebe8e3;--surface-container-highest:#e5e2dd;--on-surface:#1c1c19;--on-surface-variant:#58423c;--inverse-surface:#31302d;--inverse-on-surface:#f3f0eb;--outline:#8b716a;--outline-variant:#dfc0b7;--surface-tint:#a73918;--primary:#a43716;--on-primary:#fff;--primary-container:#c54f2c;--on-primary-container:#fffbff;--inverse-primary:#ffb5a0;--secondary:#645e54;--on-secondary:#fff;--secondary-container:#eae1d5;--on-secondary-container:#6a645a;--tertiary:#a43616;--on-tertiary:#fff;--tertiary-container:#c64e2c;--on-tertiary-container:#fffbff;--error:#ba1a1a;--on-error:#fff;--error-container:#ffdad6;--on-error-container:#93000a;--primary-fixed:#ffdbd1;--primary-fixed-dim:#ffb5a0;--on-primary-fixed:#3b0900;--on-primary-fixed-variant:#862201;--secondary-fixed:#eae1d5;--secondary-fixed-dim:#cec5ba;--on-secondary-fixed:#1f1b14;--on-secondary-fixed-variant:#4b463e;--tertiary-fixed:#ffdbd1;--tertiary-fixed-dim:#ffb5a1;--on-tertiary-fixed:#3b0900;--on-tertiary-fixed-variant:#872102;--background:#fcf9f4;--on-background:#1c1c19;--surface-variant:#e5e2dd;--radius-sm:.125rem;--radius-default:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-full:9999px;--gutter:1.5rem;--gutter-mobile:.75rem;--margin:2.5rem;--margin-mobile:1rem;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--font-headline:"Playfair Display", serif;--font-body:"Plus Jakarta Sans", sans-serif;--font-label:"Space Mono", monospace;--type-display-lg:600 56px/64px var(--font-headline);--tracking-display-lg:-.02em;--type-display-lg-mobile:600 38px/44px var(--font-headline);--tracking-display-lg-mobile:-.01em;--type-headline-lg:600 40px/48px var(--font-headline);--tracking-headline-lg:-.01em;--type-headline-lg-mobile:600 30px/36px var(--font-headline);--tracking-headline-lg-mobile:0em;--type-headline-md:500 28px/36px var(--font-headline);--type-headline-sm:500 22px/28px var(--font-headline);--type-body-lg:400 18px/28px var(--font-body);--type-body-md:400 15px/24px var(--font-body);--type-body-sm:400 13px/20px var(--font-body);--type-label-stamp:700 12px/16px var(--font-label);--tracking-label-stamp:.08em;--type-label-meta:400 11px/14px var(--font-label);--tracking-label-meta:.04em;--type-label-code:700 24px/32px var(--font-label);--tracking-label-code:.18em;--shadow-archival-1:0 2px 8px -2px #2d2a2614, 0 1px 3px 0 #2d2a260a;--shadow-archival-2:0 12px 28px -6px #1c1a1724, 0 4px 10px -2px #1c1a170f;--shadow-negative:inset 0 1px 3px #1c1a1714;--type-screen-sleeve-title:500 20px/28px var(--font-headline);--type-screen-lever-title:600 17px/22px var(--font-headline);--type-screen-film-label:400 9px/14px var(--font-label);--type-screen-capture-label:700 9px/14px var(--font-label);--type-icon:normal 24px/1 "Material Symbols Outlined";--screen-radius-sheet:1rem;--screen-upload-success:#3b6e44;--screen-shadow-header:0 1px 8px #2d2a260d;--screen-shadow-navigation:0 -2px 12px #1c1a170f;--screen-shadow-capture:0 4px 12px #a4371659}
*{box-sizing:border-box}html{background:var(--surface);scroll-padding-top:80px}body{background:var(--surface);color:var(--on-surface);font:var(--type-body-md);scrollbar-color:var(--outline-variant) var(--surface);-webkit-font-smoothing:antialiased;margin:0}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-underline-offset:var(--space-xs)}::selection{background:var(--primary-fixed);color:var(--on-primary-fixed)}:focus-visible{outline:2px solid var(--primary);outline-offset:var(--space-xs)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.icon{font:var(--type-icon);font-feature-settings:"liga";letter-spacing:normal;text-transform:none;white-space:nowrap;vertical-align:middle;direction:ltr;flex-shrink:0;display:inline-block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{overflow-wrap:anywhere}h1{font:var(--type-display-lg-mobile);letter-spacing:var(--tracking-display-lg-mobile)}h2,h3{font:var(--type-headline-sm)}.meta{font:var(--type-label-meta);letter-spacing:var(--tracking-label-meta)}.stamp-text{font:var(--type-label-stamp);letter-spacing:var(--tracking-label-stamp);text-transform:uppercase}.muted{color:var(--on-surface-variant);font:var(--type-body-sm)}.status-dot{border-radius:var(--radius-full);background:var(--primary);flex-shrink:0;width:6px;height:6px;display:inline-block}.stamp{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--secondary-container);color:var(--on-secondary-fixed-variant);border-radius:var(--radius-sm);font:var(--type-label-stamp);letter-spacing:var(--tracking-label-stamp);text-transform:uppercase;display:inline-flex}.stamp .icon{color:var(--primary)}.card-label-row{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.card-label-row>.meta{color:var(--outline)}.button{justify-content:center;align-items:center;gap:var(--space-sm);min-height:44px;padding:var(--gutter-mobile) var(--space-md);border-radius:var(--radius-default);background:var(--primary);color:var(--on-primary);font:var(--type-body-md);box-shadow:var(--shadow-archival-1);border:0;font-weight:600;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:var(--tertiary)}.button:active:not(:disabled){transform:scale(.98)}.button.secondary{background:var(--surface-container-lowest);color:var(--on-surface)}.button.secondary:hover{background:var(--surface-container-high)}.button.destructive{background:var(--error);color:var(--on-error)}.text-button{justify-content:center;align-items:center;gap:var(--space-xs);min-height:44px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-default);color:var(--primary);font:var(--type-body-sm);background:0 0;border:0;display:inline-flex}.text-button:hover{background:var(--surface-container-high)}.icon-button{border-radius:var(--radius-default);background:var(--surface-container-high);width:44px;height:44px;color:var(--on-surface-variant);border:0;flex-shrink:0;place-items:center;padding:0;display:inline-grid}.icon-button:hover{background:var(--surface-container-highest)}.danger{color:var(--error)}.symbol-well{border-radius:var(--radius-default);background:var(--surface-container-high);width:40px;height:40px;color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.shell{min-height:100dvh}.topbar{z-index:40;padding-top:env(safe-area-inset-top);background:color-mix(in srgb, var(--surface) 85%, transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--screen-shadow-header);position:fixed;top:0;left:0;right:0}.topbar-inner{justify-content:space-between;align-items:center;gap:var(--space-sm);width:min(100%,640px);min-height:64px;padding-inline:var(--margin-mobile);margin:auto;display:flex}.masthead-identity{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.brand{align-items:center;gap:var(--space-sm);min-width:0;text-decoration:none;display:inline-flex}.brand-symbol{object-fit:contain;flex-shrink:0;width:32px;height:32px;display:block}.brand-type{flex-direction:column;display:flex}.brand-name{align-items:center;gap:var(--space-xs);font:var(--type-headline-sm);display:flex}.iso-label{padding:0 var(--space-xs);background:var(--secondary-container);color:var(--on-secondary-fixed-variant);border-radius:var(--radius-sm);font:var(--type-label-meta);letter-spacing:var(--tracking-label-meta)}.brand-context{color:var(--on-surface-variant);font:var(--type-label-meta);letter-spacing:var(--tracking-label-meta)}.topbar-actions{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.profile-button{border-radius:var(--radius-xl);background:var(--primary);width:32px;height:32px;color:var(--on-primary);justify-content:center;align-items:center;display:flex}.roll-label{align-items:center;gap:var(--space-xs);background:var(--surface-container);border-radius:var(--radius-sm);padding:var(--space-xs);color:var(--on-surface);font:var(--type-label-meta);white-space:nowrap;font-weight:700;display:inline-flex}.back-button{margin-left:calc(-1 * var(--space-sm));background:0 0}.screen-title{font:var(--type-headline-sm);white-space:nowrap}.bottom-nav{z-index:40;padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--screen-shadow-navigation);position:fixed;bottom:0;left:0;right:0}.bottom-nav-inner{width:min(100%,640px);height:80px;padding-inline:var(--space-xs);justify-content:space-around;align-items:center;margin:auto;display:flex}.bottom-nav-item{justify-content:center;align-items:center;gap:var(--space-xs);min-width:44px;min-height:44px;padding:0 var(--space-xs);color:var(--on-surface-variant);font:var(--type-label-meta);background:0 0;border:0;flex-direction:column;display:flex}.bottom-nav-item[aria-current=page]{color:var(--primary)}.nav-icon{display:flex}.capture-nav-item{align-self:flex-start;gap:6px;margin-top:-20px}.capture-nav-icon{border-radius:var(--radius-xl);background:var(--primary);width:56px;height:56px;color:var(--on-primary);box-shadow:var(--screen-shadow-capture);justify-content:center;align-items:center;display:flex}.capture-nav-item>span:last-child{font:var(--type-screen-capture-label);letter-spacing:var(--tracking-label-stamp);text-transform:uppercase}.app-content{gap:var(--space-lg);width:min(100%,640px);padding:calc(64px + env(safe-area-inset-top) + var(--space-sm)) var(--margin-mobile) calc(112px + env(safe-area-inset-bottom));flex-direction:column;margin-inline:auto;display:flex}.welcome-screen{gap:var(--space-lg);width:min(100%,640px);padding:var(--space-lg) var(--margin-mobile);flex-direction:column;margin-inline:auto;display:flex}.welcome-intro{align-items:flex-start;gap:var(--space-sm);flex-direction:column;display:flex}.welcome-intro>.stamp{background:var(--surface-container);box-shadow:var(--shadow-archival-1);transform:rotate(-1deg)}.welcome-intro h1{margin-top:var(--space-xs)}.welcome-intro>p{color:var(--on-surface-variant)}.film-edge{justify-content:space-between;align-items:center;gap:var(--space-sm);height:16px;padding:0 var(--gutter-mobile);background:var(--inverse-surface);color:color-mix(in srgb, var(--surface-variant) 60%, transparent);font:var(--type-screen-film-label);letter-spacing:var(--tracking-label-stamp);display:flex;overflow:hidden}.film-edge>span:not(.sprockets){white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.film-edge-label{align-items:center;gap:var(--space-xs);display:inline-flex}.film-edge-label .icon{color:var(--primary-fixed)}.sprockets{gap:var(--space-sm);flex-shrink:0;display:flex}.sprockets i{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--surface-variant) 40%, transparent);width:10px;height:6px;display:block}.welcome-film-leader{padding:var(--space-sm);border-radius:var(--radius-lg);background:var(--inverse-surface);box-shadow:var(--shadow-archival-1)}.welcome-film-leader .film-edge{min-height:28px;color:var(--inverse-on-surface);font:var(--type-label-meta);padding:0}.welcome-film-leader .sprockets{gap:var(--space-xs)}.welcome-film-leader .sprockets i{width:8px;height:8px}.welcome-card{gap:var(--space-md);padding:var(--space-lg);background:var(--surface-container-low);border-radius:var(--radius-lg);box-shadow:var(--shadow-archival-1);flex-direction:column;display:flex}.welcome-card h2{font-weight:600}.welcome-card .muted{margin-top:2px}.guest-entry .stamp{background:var(--surface-container)}.guest-entry .card-label-row{align-items:flex-start}.guest-entry .card-label-row>.meta{max-width:72px}.form,.entry-form{gap:var(--space-md);flex-direction:column;display:flex}.field{gap:var(--space-xs);color:var(--on-surface);font:var(--type-label-stamp);letter-spacing:var(--tracking-label-stamp);text-transform:uppercase;flex-direction:column;display:flex}.field input,.field select{width:100%;min-width:0;min-height:48px;padding:var(--gutter-mobile) var(--space-md);border-radius:var(--radius-default);color:var(--on-surface);background:var(--surface-container-highest);font:var(--type-body-lg);letter-spacing:normal;text-transform:none;box-shadow:var(--shadow-negative);caret-color:var(--primary);border:1px solid #0000}.field input:focus,.field select:focus{outline:2px solid var(--primary);outline-offset:2px}.field input::placeholder{color:var(--outline)}.field .code-input{font:var(--type-label-code);letter-spacing:var(--tracking-label-code)}.label-row{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.label-row small{color:var(--outline);font:var(--type-label-meta)}.field-help{align-items:flex-start;gap:var(--space-xs);color:var(--on-surface-variant);font:var(--type-body-sm);letter-spacing:normal;text-transform:none;display:flex}.invitation-input{align-items:flex-end;gap:var(--space-sm);display:flex}.invitation-input .field{flex:1;min-width:0}.qr-help-button{border-radius:var(--radius-default);background:var(--surface-container-high);width:48px;height:48px;color:var(--primary);border:0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.error{color:var(--on-error-container);background:var(--error-container);border-radius:var(--radius-sm);padding:var(--space-sm);font:var(--type-body-sm);overflow-wrap:anywhere}.welcome-photo{border-radius:var(--radius-default);background:var(--surface-container-highest);position:relative;overflow:hidden}.welcome-photo img{object-fit:cover;width:100%;height:144px;display:block}.welcome-photo figcaption{justify-content:space-between;align-items:center;gap:var(--space-xs);padding:var(--space-sm);color:var(--surface-bright);background:color-mix(in srgb, var(--on-surface) 80%, transparent);font:var(--type-label-meta);display:flex;position:absolute;inset:auto 0 0}.welcome-photo figcaption>span{align-items:center;gap:var(--space-xs);display:flex}.host-welcome-card{background:var(--secondary-container);color:var(--on-secondary-container)}.host-welcome-card h2{color:var(--on-surface)}.host-welcome-card p{font:var(--type-body-sm)}.host-welcome-card .stamp{background:var(--surface-container-low);color:var(--on-surface)}.host-feature-grid{gap:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.host-feature-grid>div{gap:var(--space-xs);padding:var(--space-sm);border-radius:var(--radius-default);background:var(--surface-container-low);color:var(--on-surface);flex-direction:column;display:flex}.host-feature-grid .icon{color:var(--primary)}.host-feature-grid>div>span:last-child{color:var(--on-surface-variant);font:var(--type-body-sm)}.archive-features{gap:var(--space-sm);flex-direction:column;display:flex}.rule-label{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs);color:var(--outline);display:flex}.rule-label>span:last-child{background:var(--surface-container-highest);flex:1;height:2px}.archive-features article{align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:var(--surface-container-low);border-radius:var(--radius-lg);display:flex}.archive-features p{color:var(--on-surface-variant);font:var(--type-body-sm);margin-top:var(--space-xs)}.archive-features .stamp-text{margin-top:2px;display:block}.format-text{color:var(--tertiary)}.shortcut-notice{align-items:center;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--surface-container);display:flex}.shortcut-notice .symbol-well{background:var(--primary-fixed);width:32px;height:32px;color:var(--on-primary-fixed)}.shortcut-notice p{color:var(--on-surface-variant);font:var(--type-body-sm)}.site-footer{align-items:center;gap:var(--space-xs);padding:var(--space-md) 0;text-align:center;color:var(--on-surface-variant);font:var(--type-body-sm);flex-direction:column;display:flex}.site-footer .stamp-text{color:var(--outline)}.studio-heading{gap:var(--space-sm);flex-direction:column;display:flex}.studio-heading h1,.entry-intro h1{font:var(--type-headline-lg-mobile);letter-spacing:var(--tracking-headline-lg-mobile)}.studio-heading>p{color:var(--on-surface-variant);font:var(--type-body-sm)}.studio-heading .card-label-row .text-button{min-height:28px;padding-block:0}.studio-summary{align-items:center;gap:var(--space-xs);padding:var(--space-sm);border-radius:var(--radius-default);background:var(--surface-container);display:flex}.studio-summary>.icon:first-child{color:var(--primary)}.studio-summary>.icon:last-child{margin-left:auto}.host-account-note{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);background:var(--surface-container-low);border-radius:var(--radius-lg);display:flex}.host-account-note .symbol-well{background:var(--primary-fixed);width:36px;height:36px;color:var(--on-primary-fixed)}.host-account-note .stamp-text{color:var(--primary)}.host-account-note p{font:var(--type-body-sm);margin-block:2px var(--space-xs)}.host-account-note a{color:var(--primary);font:var(--type-label-meta)}.create-lever{align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-md);border-radius:var(--radius-lg);color:var(--on-primary);background:var(--primary);box-shadow:var(--shadow-archival-1);text-align:left;border:0;display:flex}.create-lever>span:not(.icon){flex-direction:column;flex:1;gap:2px;display:flex}.create-lever strong{font:var(--type-screen-lever-title)}.create-lever small{font:var(--type-label-meta);color:color-mix(in srgb, var(--on-primary) 85%, transparent)}.events-list{gap:var(--space-md);flex-direction:column;display:flex}.list-head{align-items:center;gap:var(--space-xs);display:flex}.count-label{padding:2px var(--space-sm);background:var(--secondary-container);color:var(--on-secondary-fixed-variant);border-radius:var(--radius-xl);font:var(--type-label-meta)}.event-card{border-radius:var(--radius-lg);background:var(--surface-container-low);box-shadow:var(--shadow-archival-1);overflow:hidden}.sleeve-body{gap:var(--space-sm);padding:var(--space-md);flex-direction:column;display:flex}.sleeve-top{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);display:flex}.sleeve-top>div{flex:1;min-width:0}.event-meta{color:var(--on-surface-variant);font:var(--type-label-meta)}.event-meta strong{color:var(--primary)}.sleeve-top h2{font:var(--type-screen-sleeve-title);margin-top:2px}.sleeve-note{color:var(--on-surface-variant);font:var(--type-body-sm)}.mode-label{gap:var(--space-xs);max-width:100px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--secondary-container);color:var(--on-secondary-fixed-variant);font:var(--type-label-meta);text-transform:uppercase;flex-shrink:0;align-items:center;display:inline-flex}.host-vault-label{background:var(--inverse-surface);color:var(--inverse-on-surface)}.collection-preview{gap:var(--space-sm);padding-top:var(--space-xs);flex-direction:column;display:flex}.collection-badges{gap:var(--space-xs);display:flex}.collection-badges>span{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--surface-container);border-radius:var(--radius-sm);font:var(--type-label-meta);display:inline-flex}.preview-strip{gap:var(--space-sm);padding-top:var(--space-xs);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.preview-frame{border-radius:var(--radius-sm);background:var(--surface-container-high);height:80px;box-shadow:var(--shadow-negative);overflow:hidden}.preview-frame img{object-fit:cover;width:100%;height:100%;display:block}.preview-frame>span{height:100%;color:var(--outline);justify-content:center;align-items:center;display:flex}.event-card-actions{align-items:center;gap:var(--space-xs);padding-top:var(--space-xs);display:flex}.event-card-actions>.button{min-width:0;padding:var(--space-sm);background:var(--surface-container);box-shadow:none;font:var(--type-body-sm);flex:1;font-weight:600}.event-card-actions>.invite-event-button{background:var(--secondary-container);color:var(--on-secondary-fixed-variant);flex:0 auto}.event-card-actions>.icon-button{width:36px;height:44px}.laboratory-settings{padding:var(--space-md);border-radius:var(--radius-lg);background:var(--surface-container)}.account-security summary{cursor:pointer;min-height:44px;font:var(--type-headline-sm);align-content:center}.account-security>.form{padding-top:var(--space-md)}.passkey-list{margin:0;padding:0;list-style:none}.passkey-list li{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:1px solid var(--outline-variant);flex-wrap:wrap;display:flex}.passkey-list small{color:var(--on-surface-variant);font:var(--type-label-meta);display:block}.auth-screen .auth-card>.form{margin-top:var(--space-sm)}.auth-card>.text-button{width:100%}.entry-intro{gap:var(--space-sm);flex-direction:column;align-items:flex-start;display:flex}.entry-intro>p{color:var(--on-surface-variant)}.install-prompt{margin-top:var(--space-sm)}.install-help{margin-top:var(--space-sm);color:var(--on-surface-variant);font:var(--type-body-sm)}.sheet{width:min(100%,512px);max-height:90dvh;padding:var(--space-lg);border-radius:var(--screen-radius-sheet) var(--screen-radius-sheet) 0 0;background:var(--surface-bright);color:var(--on-surface);box-shadow:var(--shadow-archival-2);border:0;margin:0 auto;position:fixed;inset:auto 0 0;overflow-y:auto}.sheet::backdrop{background:color-mix(in srgb, var(--inverse-surface) 60%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sheet-heading{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.sheet-title{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.sheet-title .symbol-well{background:var(--primary-fixed);width:32px;height:32px}.sheet-heading .icon-button{background:var(--surface-container);border-radius:var(--radius-xl);width:36px;height:36px}.sheet>.muted{margin-bottom:var(--space-md)}.sheet .field input,.sheet .field select{background:var(--surface-container-low)}.sheet-actions{gap:var(--space-xs);margin-top:var(--space-sm);display:flex}.sheet-actions>*{flex:1}.setting-summary{align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-default);background:var(--surface-container);color:var(--on-surface-variant);font:var(--type-body-sm);display:flex}.confirmation-sheet{border-radius:var(--screen-radius-sheet);width:min(100% - 32px,448px);height:fit-content;margin:auto;display:none;inset:0}.confirmation-sheet[open]{gap:var(--space-md);flex-direction:column;display:flex}.confirmation-sheet .sheet-heading{margin-bottom:0}.confirmation-sheet .symbol-well{background:var(--error-container);color:var(--on-error-container)}.empty-state{align-items:center;gap:var(--space-sm);padding:var(--space-xl) var(--space-md);border-radius:var(--radius-lg);background:var(--surface-container);text-align:center;flex-direction:column;display:flex}.empty-state p{color:var(--on-surface-variant);font:var(--type-body-sm)}.empty-state>.icon{color:var(--primary)}.invitation-screen{gap:var(--space-md);flex-direction:column;display:flex}.host-notice{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--surface-container-high);display:flex}.notice-icon{border-radius:var(--radius-xl);background:var(--primary);width:40px;height:40px;color:var(--on-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.notice-heading{align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs);flex-wrap:wrap;display:flex}.notice-heading .stamp{background:var(--primary-fixed);color:var(--primary)}.notice-heading .meta{color:var(--on-surface-variant)}.host-notice p{font:var(--type-body-sm)}.guest-pass{border-radius:var(--radius-lg);background:var(--surface-container-lowest);box-shadow:var(--shadow-archival-1);overflow:hidden}.pass-cap{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--gutter-mobile) var(--space-md);background:var(--inverse-surface);color:var(--inverse-on-surface);display:flex}.pass-cap>span:first-child{align-items:center;gap:var(--space-xs);display:flex}.pass-body{padding:var(--space-md);gap:var(--space-md);flex-direction:column;display:flex}.pass-event{align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;text-align:center;flex-direction:column;display:flex}.pass-event>.meta{color:var(--outline)}.pass-event h1{font:var(--type-headline-sm);letter-spacing:normal;font-weight:600}.pass-event p{align-items:center;gap:var(--space-xs);color:var(--on-surface-variant);font:var(--type-body-sm);display:flex}.pass-event .icon{color:var(--primary)}.pass-code{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-default);background:var(--surface-container);display:flex}.pass-code>div{min-width:0}.pass-code .meta{margin-bottom:var(--space-xs);color:var(--on-surface-variant);display:block}.pass-code strong{color:var(--primary);font:var(--type-label-code);overflow-wrap:anywhere;display:block}.pass-copy{align-items:center;gap:var(--space-xs);min-height:44px;padding:var(--space-sm);background:var(--surface-container-lowest);border-radius:var(--radius-default);color:var(--primary);font:var(--type-label-meta);text-transform:uppercase;border:0;flex-shrink:0;display:flex}.pass-qr{align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--surface-container-low);border-radius:var(--radius-lg);text-align:center;flex-direction:column;display:flex}.pass-qr img{width:min(100%,256px);height:auto;padding:var(--space-sm);background:var(--surface-container-lowest);border-radius:var(--radius-lg);display:block}.pass-qr>.meta{color:var(--on-surface-variant)}.pass-qr-placeholder{gap:var(--space-md);width:min(100%,256px);min-height:256px;padding:var(--space-md);color:var(--primary);flex-direction:column;justify-content:center;align-items:center;display:flex}.pass-qr-placeholder p{color:var(--on-surface-variant);font:var(--type-body-sm)}.pass-link{align-items:center;gap:var(--space-xs);padding:var(--space-sm);border-radius:var(--radius-default);background:var(--surface-container);display:flex}.pass-link>.icon{color:var(--primary)}.pass-link a{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:var(--type-label-meta);color:var(--on-surface-variant);flex:1;overflow:hidden}.pass-link button{padding:var(--space-sm);border-radius:var(--radius-xl);background:var(--primary);min-height:36px;color:var(--on-primary);font:var(--type-label-meta);text-transform:uppercase;border:0;flex-shrink:0;font-weight:700}.pass-privacy{align-items:center;gap:var(--space-xs);padding:var(--space-sm);background:var(--surface-container);border-radius:var(--radius-default);color:var(--on-surface-variant);font:var(--type-label-meta);display:flex}.pass-privacy .icon{color:var(--primary)}.pass-perforation{height:20px;margin-inline:var(--space-md);border-bottom:2px dashed var(--outline-variant);position:relative}.pass-perforation:before,.pass-perforation:after{content:"";border-radius:var(--radius-full);background:var(--surface);width:16px;height:16px;position:absolute;bottom:-8px}.pass-perforation:before{left:-24px}.pass-perforation:after{right:-24px}.ticket-stub{padding:var(--space-lg) var(--space-md) var(--space-md);background:var(--surface-container-low)}.ticket-stub h2{align-items:center;gap:var(--space-xs);font:var(--type-label-stamp);text-transform:uppercase;display:flex}.ticket-stub h2 .icon{color:var(--primary)}.ticket-stub ol{gap:var(--space-sm);padding-left:var(--space-lg);margin:var(--space-md) 0 0;font:var(--type-body-sm);color:var(--on-surface-variant);flex-direction:column;display:flex}.ticket-stub li::marker{font:var(--type-label-meta);color:var(--secondary)}.pass-actions{gap:var(--space-sm);flex-direction:column;display:flex}.copy-status{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-default);color:var(--inverse-on-surface);background:var(--inverse-surface);font:var(--type-label-meta)}.event-content{gap:var(--space-md);padding-bottom:calc(176px + env(safe-area-inset-bottom))}.live-feed-card{gap:var(--space-xs);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--surface-container-low);box-shadow:var(--shadow-archival-1);flex-direction:column;display:flex}.feed-status{justify-content:space-between;align-items:center;gap:var(--space-xs);display:flex}.feed-status>.stamp-text{align-items:center;gap:var(--space-xs);color:var(--primary);display:flex}.feed-status .text-button{min-height:28px;padding:2px var(--space-xs);background:var(--surface);color:var(--on-surface-variant);font:var(--type-label-meta);text-transform:uppercase}.feed-ribbon{justify-content:space-between;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--surface-dim) 40%, transparent);display:flex}.feed-ribbon>.meta{color:var(--on-surface-variant);text-transform:uppercase}.record-label{padding-inline:var(--space-xs);border-radius:var(--radius-sm);background:var(--tertiary-fixed);color:var(--tertiary);font:var(--type-label-stamp)}.feed-event{justify-content:space-between;align-items:baseline;gap:var(--space-sm);padding-top:var(--space-sm);display:flex}.feed-event>div:first-child{min-width:0}.feed-event h1{font:var(--type-headline-sm);letter-spacing:normal}.feed-event p{color:var(--on-surface-variant);font:var(--type-body-sm)}.loaded-count{text-align:right;flex-direction:column;flex-shrink:0;display:flex}.loaded-count strong{color:var(--primary);font:var(--type-label-code);letter-spacing:normal}.loaded-count .meta{color:var(--secondary)}.gallery-section{gap:var(--space-md);flex-direction:column;display:flex}.filter-ribbon{gap:var(--space-xs);flex-direction:column;display:flex}.filter-ribbon>div{gap:var(--space-xs);padding-bottom:var(--space-xs);display:flex;overflow-x:auto}.filter-ribbon>.meta{color:var(--outline)}.filter-tab{align-items:center;gap:var(--space-xs);min-height:32px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-xl);background:var(--surface-container);color:var(--on-surface-variant);font:var(--type-label-meta);border:0;flex-shrink:0;display:inline-flex}.filter-tab>span:not(.icon){background:var(--surface-variant);padding-inline:var(--space-xs);border-radius:var(--radius-xl)}.filter-tab[aria-pressed=true]{background:var(--primary);color:var(--on-primary)}.filter-tab[aria-pressed=true]>span:not(.icon){background:color-mix(in srgb, var(--on-primary) 20%, transparent)}.gallery{gap:var(--space-md);flex-direction:column;display:flex}.tile{padding:var(--space-sm);border-radius:var(--radius-lg);background:var(--surface-container-low);box-shadow:var(--shadow-archival-1);position:relative}.media-perforations{padding-inline:var(--space-sm);justify-content:space-between;align-items:center;height:12px;margin-bottom:6px;display:flex}.media-perforations i{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--on-surface-variant) 30%, transparent);width:6px;height:6px}.tile>img{border-radius:var(--radius-default);width:100%;height:auto;display:block}.tile:has(.video-play-pill)>img{aspect-ratio:4/5;object-fit:cover}.frame-caption{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xs) 0;display:flex}.frame-caption>div{flex-direction:column;gap:2px;display:flex}.frame-caption strong{font:var(--type-body-sm);font-weight:600}.frame-caption time{color:var(--on-surface-variant);font:var(--type-label-meta)}.save-original{align-items:center;gap:var(--space-xs);min-height:36px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--secondary-container);color:var(--primary);font:var(--type-label-meta);text-decoration:none;display:flex}.media-menu{top:var(--space-md);right:var(--space-md);z-index:2;position:absolute}.media-menu summary{border-radius:var(--radius-xl);background:color-mix(in srgb, var(--surface) 90%, transparent);width:36px;height:36px;color:var(--on-surface);cursor:pointer;box-shadow:var(--shadow-archival-1);justify-content:center;align-items:center;list-style:none;display:flex}.media-menu summary::-webkit-details-marker{display:none}.media-menu>div{width:192px;padding:var(--space-xs);border-radius:var(--radius-lg);background:var(--surface-bright);box-shadow:var(--shadow-archival-2);position:absolute;top:40px;right:0}.media-menu a{align-items:center;gap:var(--space-sm);padding:var(--space-sm);min-height:44px;font:var(--type-body-sm);text-decoration:none;display:flex}.media-menu .text-button{justify-content:start;width:100%}.media-actions{gap:var(--space-sm);padding-top:var(--space-sm);margin-top:var(--space-sm);border-top:1px solid var(--outline-variant);align-items:center;display:flex}.media-view{color:var(--primary);font:var(--type-body-sm);gap:var(--space-xs);flex:1;align-items:center;min-height:44px;text-decoration:none;display:flex}.video-play-pill{align-items:center;gap:var(--space-sm);padding:6px var(--gutter-mobile);white-space:nowrap;border-radius:var(--radius-xl);background:color-mix(in srgb, var(--surface) 85%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--on-surface);font:var(--type-label-meta);box-shadow:var(--shadow-archival-2);text-decoration:none;display:flex;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.video-play-pill>span{border-radius:var(--radius-xl);background:var(--primary);width:24px;height:24px;color:var(--on-primary);justify-content:center;align-items:center;display:flex}.processing-preview{justify-content:center;align-items:center;gap:var(--space-sm);min-height:200px;padding:var(--space-md);background:var(--secondary-fixed);border-radius:var(--radius-default);color:var(--on-surface-variant);font:var(--type-body-sm);text-align:center;flex-direction:column;display:flex}.processing-preview>.icon{color:var(--primary)}.gallery-more{padding-top:var(--space-sm);justify-content:center;display:flex}.roll-prompt{align-items:center;gap:var(--space-xs);margin-block:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--surface-container);text-align:center;flex-direction:column;display:flex}.roll-prompt h2{margin-top:var(--space-xs)}.roll-prompt p{color:var(--on-surface-variant);font:var(--type-body-sm);max-width:40ch}.roll-prompt .text-button{margin-top:var(--space-sm);padding-inline:var(--space-md);border-radius:var(--radius-xl);background:var(--surface);font:var(--type-label-stamp);text-transform:uppercase}.floating-capture{bottom:calc(96px + env(safe-area-inset-bottom));z-index:30;pointer-events:none;padding-inline:var(--margin-mobile);justify-content:center;display:flex;position:fixed;left:0;right:0}.floating-capture .button{pointer-events:auto;padding:var(--gutter-mobile) var(--space-lg);border-radius:var(--radius-xl);box-shadow:var(--screen-shadow-capture);font:var(--type-label-stamp);text-transform:uppercase}.capture-content{padding-bottom:var(--space-xl)}.upload-screen{gap:var(--space-md);outline:none;flex-direction:column;display:flex}.upload-event-context{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--gutter-mobile);border-radius:var(--radius-lg);background:var(--surface-container-low);display:flex}.upload-event-context>.icon{color:var(--primary)}.upload-event-context>div{flex-direction:column;flex:1;min-width:0;display:flex}.upload-event-context .meta{color:var(--outline)}.upload-event-context strong{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.upload-event-context .roll-label{background:var(--surface-container-highest)}.upload-dropzone{padding:var(--space-md);border-radius:var(--radius-lg);background:var(--surface-container);box-shadow:var(--shadow-archival-1);text-align:center;flex-direction:column;align-items:center;display:flex}.upload-symbols{gap:var(--space-xs);margin-bottom:var(--space-sm);display:flex}.upload-symbols>span{border-radius:var(--radius-xl);background:var(--surface-container-lowest);width:48px;height:48px;box-shadow:var(--shadow-archival-1);color:var(--primary);justify-content:center;align-items:center;display:flex}.upload-dropzone p{max-width:280px;margin-top:var(--space-xs);color:var(--on-surface-variant);font:var(--type-body-sm)}.choose-file-actions{gap:var(--space-sm);width:100%;margin-top:var(--space-md);display:flex}.choose-file-actions .button{font:var(--type-body-sm);padding:var(--space-sm) var(--space-md);font-weight:600}.choose-file-actions .button:first-child{flex:1}.queue-summary{gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-default);background:var(--surface-container-high);box-shadow:var(--shadow-archival-1);flex-direction:column;display:flex}.queue-summary>div:first-child{justify-content:space-between;gap:var(--space-xs);display:flex}.queue-summary .meta{align-items:center;gap:var(--space-xs);color:var(--on-surface-variant);display:flex}.queue-summary strong.meta{color:var(--primary)}.queue-counts{align-items:center;gap:var(--space-sm);display:flex;overflow-x:auto}.queue-counts>span{align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);border-radius:var(--radius-sm);background:var(--surface-container-lowest);font:var(--type-label-meta);flex-shrink:0;display:inline-flex}.upload-empty{padding:var(--space-md);text-align:center;color:var(--on-surface-variant);font:var(--type-body-sm)}.upload-list{gap:var(--space-md);flex-direction:column;display:flex}.upload-row{align-items:flex-start;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--surface-container-lowest);box-shadow:var(--shadow-archival-1);display:flex}.selection-preview{border-radius:var(--radius-default);background:var(--surface-container);flex-shrink:0;width:64px;height:80px;overflow:hidden}.selection-preview img,.selection-preview video{object-fit:cover;width:100%;height:100%;display:block}.preview-fallback{justify-content:center;align-items:center;gap:var(--space-xs);height:100%;color:var(--outline);flex-direction:column;display:flex}.preview-fallback small{font:var(--type-label-meta);text-align:center}.upload-file{gap:var(--space-xs);flex-direction:column;flex:1;min-width:0;display:flex}.upload-file>span{text-overflow:ellipsis;white-space:nowrap;font:var(--type-body-sm);font-weight:600;overflow:hidden}.upload-file>.file-size{color:var(--outline);font:var(--type-label-meta)}.upload-state{align-items:center;gap:var(--space-xs);padding:var(--space-xs);background:var(--surface-container);color:var(--on-surface-variant);font:var(--type-label-meta);align-self:flex-start;display:inline-flex}.state-uploaded{background:color-mix(in srgb, var(--screen-upload-success) 10%, transparent);color:var(--screen-upload-success)}.state-uploading{color:var(--primary);background:0 0}.state-failed{background:var(--error-container);color:var(--on-error-container)}.upload-row>.icon-button{width:28px;min-width:28px;height:28px;color:var(--outline);background:0 0}.spool-progress{padding:var(--space-sm);border-radius:var(--radius-default);background:var(--surface-container-high);box-shadow:var(--shadow-negative)}.spool-progress .film-edge{color:var(--outline);background:0 0;padding-inline:0}.spool-progress .sprockets{gap:var(--space-xs)}.spool-progress .sprockets i{background:var(--outline);width:6px;height:4px}progress{border-radius:var(--radius-xl);background:var(--surface-container-highest);width:100%;height:10px;accent-color:var(--primary);border:0;overflow:hidden}progress::-webkit-progress-bar{background:var(--surface-container-highest)}progress::-webkit-progress-value{background:var(--primary);border-radius:var(--radius-xl)}.retry-file{color:var(--on-tertiary);background:var(--tertiary);font:var(--type-label-meta);text-transform:uppercase;align-self:flex-end}.fidelity-note{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);background:var(--surface-container-low);border-radius:var(--radius-lg);display:flex}.fidelity-note .symbol-well{background:var(--primary-fixed);border-radius:var(--radius-xl);width:32px;height:32px}.fidelity-note h3{font:var(--type-body-md);font-weight:600}.fidelity-note p{color:var(--on-surface-variant);font:var(--type-body-sm)}.upload-controls{gap:var(--space-sm);margin-top:var(--space-sm);flex-direction:column;display:flex}.form-assurance{justify-content:center;align-items:center;gap:var(--space-xs);color:var(--on-surface-variant);font:var(--type-body-sm);display:flex}@media (min-width:640px){.sheet:not(.confirmation-sheet){border-radius:var(--screen-radius-sheet);height:fit-content;margin:auto;inset:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
