:root{--ink: #181714;--muted: #67635d;--line: #dad5cb;--paper: #f7f8f5;--surface: #fffefa;--teal: #2f6f5e;--teal-dark: #204f43;--coral: #b9503c;--gold: #c49031;--blue: #3066be;--shadow: 0 18px 50px rgba(39, 35, 29, .12)}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:0 28px;border-bottom:1px solid rgba(24,23,20,.1);background:#f7f8f5f0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.order-demo-topbar{min-height:48px;padding:0 16px;color:var(--ink)}body:has(.order-demo-topbar) .client-page{min-height:calc(100dvh - 48px)}body:has(.order-demo-topbar) .client-shell:has(>.client-grid),body:has(.order-demo-topbar) .client-shell:has(>.order-wizard){height:calc(100dvh - 48px)}.order-demo-brand,.order-demo-cart{display:flex;align-items:center}.order-demo-brand{min-width:0;gap:10px}.order-demo-topbar .order-demo-brand{gap:7px}.order-demo-brand>span{flex:none;padding:4px 7px;border-radius:999px;background:var(--coral);color:#fff;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.order-demo-brand strong,.order-demo-brand small{display:block}.order-demo-brand strong{font-size:13px}.order-demo-brand small{margin-top:1px;color:var(--muted);font-size:10px}.order-demo-cart{flex:none;gap:6px;color:var(--teal-dark);font-size:11px}.order-demo-topbar .order-demo-cart{gap:4px}.order-demo-cart button{display:inline-flex;align-items:center;gap:5px;margin-left:4px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:10px;font-weight:700}.order-demo-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 28px;border-bottom:1px solid var(--line);background:var(--surface)}.order-demo-cta p{margin:0;min-width:0;color:var(--muted);font-size:12px}.order-demo-cta a{display:inline-flex;flex:none;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;background:var(--teal);color:#fff;font-size:12px;font-weight:700;text-decoration:none}.order-demo-finale{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:calc(100vh - 48px);padding:40px 28px;text-align:center}.order-demo-finale-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--teal);color:#fff}.order-demo-finale h1{margin:8px 0 0;max-width:480px;font-size:26px;line-height:1.2}.order-demo-finale p{margin:0;max-width:440px;color:var(--muted);font-size:14px;line-height:1.5}.order-demo-finale a{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:14px 26px;border-radius:999px;background:var(--teal);color:#fff;font-size:15px;font-weight:700;text-decoration:none}.order-demo-finale button{padding:8px 4px;border:0;background:none;color:var(--muted);font-size:13px;font-weight:600;text-decoration:underline}.breadcrumbs{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.breadcrumbs>svg{flex-shrink:0;color:var(--muted)}.breadcrumb-gallery{max-width:28vw;padding:0;overflow:hidden;border:0;background:transparent;color:var(--teal-dark);font-size:14px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.breadcrumb-gallery:hover{text-decoration:underline}.breadcrumb-current{max-width:20vw;overflow:hidden;color:var(--muted);font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.topbar-nav{display:inline-flex;align-items:center;gap:16px}.topbar-account-action{position:relative;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid rgba(24,23,20,.14);border-radius:999px;background:transparent;color:var(--teal-dark);font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease}.topbar-badge{display:none}.topbar-account-action:hover{background:#1817140a;border-color:#1817143d}.topbar-account-action[aria-current=page]{background:#2f6f5e1a;border-color:#2f6f5e4d;cursor:default}.topbar-account-action svg{flex-shrink:0}.buyer-menu{position:relative;flex:none}.topbar-buyer{display:inline-flex;align-items:center;gap:6px;max-width:180px;min-height:36px;padding:7px 11px;overflow:hidden;border:1px solid rgba(24,23,20,.14);border-radius:999px;background:transparent;color:var(--teal-dark);white-space:nowrap;font-size:13px;font-weight:700;cursor:pointer}.topbar-buyer:hover,.topbar-buyer[aria-expanded=true]{border-color:#2f6f5e4d;background:#2f6f5e1a}.topbar-buyer-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.topbar-buyer svg{flex-shrink:0}.topbar-buyer-chevron{transition:transform .15s ease}.topbar-buyer[aria-expanded=true] .topbar-buyer-chevron{transform:rotate(180deg)}.buyer-menu-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:80;display:grid;gap:6px;width:min(240px,calc(100vw - 28px));padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.buyer-menu-identity{display:grid;gap:2px;min-width:0;padding:7px 9px 9px;border-bottom:1px solid var(--line)}.buyer-menu-identity strong,.buyer-menu-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.buyer-menu-identity strong{font-size:13px}.buyer-menu-identity small{color:var(--muted);font-size:11px}.buyer-menu-popover>button{display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:#8e372b;font-size:13px;font-weight:800;text-align:left}.buyer-menu-popover>button:hover:not(:disabled),.buyer-menu-popover>button:focus-visible{background:#b9503c1a}.buyer-menu-popover>p{margin:0;padding:0 9px 6px;color:#8e372b;font-size:11px;line-height:1.35}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%);z-index:60;display:flex;align-items:flex-start;gap:14px;width:min(94vw,460px);padding:16px 18px;border-radius:14px;background:var(--ink);color:#f7f8f5;box-shadow:0 18px 44px #18171466;overflow:hidden;animation:toast-rise .26s cubic-bezier(.2,.9,.3,1)}.toast-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#7fd3a62e;color:#7fd3a6}.toast-refusal .toast-icon{background:#e07a5f33;color:#f0a08a}.toast-warning .toast-icon{background:#d69e2e33;color:#f0c674}.toast-body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.toast-title{font-size:15px;font-weight:700}.toast-description{font-size:13px;line-height:1.45;color:#f7f8f5bd}.toast-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.toast-action{flex-shrink:0;border:1px solid rgba(247,248,245,.28);background:transparent;color:#f7f8f5;padding:6px 13px;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer}.toast-action:hover{background:#f7f8f51a}.toast-action.primary{background:#7fd3a6;border-color:#7fd3a6;color:var(--ink)}.toast-action.primary:hover{background:#7fd3a6;filter:brightness(1.05)}.toast-close{flex-shrink:0;display:inline-flex;border:0;background:none;padding:2px;color:inherit;opacity:.6;cursor:pointer}.toast-close:hover{opacity:1}.toast-progress{position:absolute;left:0;bottom:0;height:3px;width:100%;background:#7fd3a6;transform-origin:left;animation:toast-progress 7s linear forwards}@keyframes toast-rise{0%{opacity:0;transform:translate(-50%,16px) scale(.98)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media(max-width:640px){.toast{width:94vw;gap:8px;padding:12px}.toast-icon{display:none}.toast-action{padding-inline:8px;font-size:12px}}.topnav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.topnav a{color:var(--ink);border-radius:999px;padding:9px 13px;text-decoration:none}.topnav a:hover{background:#2f6f5e1c}.nav-group{position:relative}.nav-group>.tab-link{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.nav-caret{font-size:10px;line-height:1;opacity:.7}.nav-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;display:grid;min-width:190px;padding:6px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 12px 28px #0f201b29}.topnav .nav-menu-link{border-radius:8px;padding:9px 12px;color:var(--ink);text-decoration:none;white-space:nowrap}.topnav .nav-menu-link:hover{background:#2f6f5e1c}.topnav .nav-menu-link.active{color:#fff;background:var(--teal)}.client-page,.admin-page,.entry-page{min-height:calc(100vh - 64px)}.entry-page{display:grid;place-items:start center;padding:48px 24px}.entry-card{width:min(680px,100%);padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.entry-card h1{margin:0;font:700 36px/1.1 Georgia,Times New Roman,serif}.entry-card>p:not(.eyebrow){margin:10px 0 0;color:var(--muted)}.preorders-closed-note{display:grid;gap:6px;justify-items:start;margin:14px 0 0;padding:11px 12px;border-radius:9px;color:var(--teal-dark);background:#2f6f5e1a;font-size:13px;line-height:1.4}.preorders-closed-note button{padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}@media(max-width:720px){.entry-page{padding:0}.entry-card{width:100%;min-height:calc(100vh - 56px);padding:22px 16px 32px;border:0;border-radius:0;box-shadow:none}}.portal-home{display:grid;place-items:center;align-content:center;row-gap:36px;min-height:100vh;min-height:100dvh;padding:56px 24px;background:radial-gradient(circle at 18% 18%,rgba(196,144,49,.15),transparent 30%),radial-gradient(circle at 82% 76%,rgba(47,111,94,.16),transparent 34%)}.portal-home-card{width:min(560px,100%);padding:42px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.portal-home-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:22px;color:var(--teal-dark);border-radius:50%;background:#2f6f5e1f}.portal-home-card h1{margin:0;font:700 44px/1.05 Georgia,Times New Roman,serif}.portal-home-intro{max-width:44ch;margin:14px 0 0;color:var(--muted);font-size:16px;line-height:1.6}.gallery-code-form{display:grid;gap:10px;margin-top:30px}.gallery-code-form label{color:var(--ink);font-size:13px;font-weight:800}.gallery-code-form input{width:100%;min-height:54px;padding:12px 14px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff;font-size:18px;font-weight:700;letter-spacing:.06em;outline:0}.gallery-code-form input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f6f5e1f}.gallery-code-form input[aria-invalid=true]{border-color:var(--coral)}.gallery-code-form small{color:var(--muted);font-size:12px}.gallery-code-form .inline-note{margin:2px 0}.gallery-code-form .primary-action{margin-top:10px}.gallery-confirm{display:grid;gap:7px;margin-top:28px;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.gallery-confirm-school{font:700 26px/1.25 Georgia,Times New Roman,serif;overflow-wrap:anywhere}.gallery-confirm-date{color:var(--teal-dark);font-size:15px;font-weight:800}.gallery-confirm-code{color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.06em}.gallery-confirm-actions{display:grid;gap:10px;margin-top:26px}.gallery-confirm-actions .secondary-action{width:100%}.portal-home-example{width:min(880px,100%);margin:0;padding:18px 18px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.portal-home-example img{display:block;width:100%;height:auto;border-radius:8px}.portal-home-example figcaption{max-width:64ch;margin:14px auto 0;color:var(--muted);font-size:13px;line-height:1.5;text-align:center}.access-code-card{display:grid;align-content:start;gap:16px;max-width:480px}.access-code-card label{display:grid;gap:7px}.access-code-card label span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.access-code-card input{min-height:48px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff}.access-code-card .remember-contact{display:flex;align-items:flex-start;gap:10px}.access-code-card .remember-contact input{flex:0 0 auto;width:18px;height:18px;min-height:0;margin:1px 0 0;padding:0;accent-color:var(--teal)}.access-code-card .remember-contact span{color:var(--ink);font-size:13px;font-weight:700;line-height:1.35;text-transform:none}.saved-buyer-contact{display:grid;gap:3px;padding:14px 16px;border-radius:8px;background:#2f6f5e14;color:var(--ink)}.saved-buyer-contact strong{color:var(--teal-dark);overflow-wrap:anywhere}.saved-buyer-contact span{color:var(--muted);font-size:14px}.access-code-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--teal-dark);background:#2f6f5e1f}.address-region{display:grid;grid-template-columns:5rem 1fr;gap:12px}.address-line1{position:relative}.address-suggestions{position:absolute;top:100%;z-index:5;width:100%;margin:4px 0 0;padding:4px;list-style:none;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.address-suggestions button{display:grid;gap:2px;width:100%;padding:9px 10px;border:0;border-radius:6px;background:none;text-align:left}.address-suggestions button:hover,.address-suggestions button:focus-visible{background:#2f6f5e14}.address-suggestions strong{font-weight:700}.address-suggestions span{color:var(--muted);font-size:13px}.address-choices{display:grid;gap:10px;margin:0;padding:0;list-style:none}.address-choice{display:grid;gap:4px;width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:left}.address-choice:hover:not(:disabled),.address-choice:focus-visible{border-color:var(--teal);background:#2f6f5e0f}.address-choice strong{font-weight:700}.address-choice span{color:var(--muted);font-size:13px}.delivery-panel{display:grid;gap:14px;margin:20px 0;padding:18px;border:1px solid rgba(24,23,20,.12);border-radius:14px;background:#2f6f5e0b}.delivery-panel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.delivery-panel-heading .eyebrow,.delivery-panel-heading h2,.delivery-panel-heading>p{margin:0}.delivery-panel-heading h2{margin-top:3px;font-family:Georgia,Times New Roman,serif;font-size:21px;line-height:1.1}.delivery-heading-short{display:none}.delivery-panel-heading>p{max-width:220px;color:var(--muted);font-size:12px;line-height:1.4;text-align:right}.delivery-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.delivery-options.home-only{grid-template-columns:1fr}.delivery-option{display:flex;align-items:flex-start;gap:10px;min-height:76px;padding:13px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fff;text-align:left}.delivery-option:hover:not(:disabled),.delivery-option:focus-visible,.delivery-option.selected{border-color:var(--teal);background:#2f6f5e14}.delivery-option.selected{box-shadow:0 0 0 2px #2f6f5e1f}.delivery-option>svg{flex-shrink:0;margin-top:1px;color:var(--teal-dark)}.delivery-option>span{display:grid;gap:3px}.delivery-option strong{font-size:14px}.delivery-option small{color:var(--muted);font-size:11px;line-height:1.35}.delivery-radio{flex-shrink:0;width:20px;height:20px;margin-top:1px;border:2px solid var(--line);border-radius:999px;background:#fff}.delivery-option.selected .delivery-radio{border-color:var(--teal);background:radial-gradient(circle at center,var(--teal) 0 5px,transparent 6px)}.delivery-school-note{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border-radius:9px;color:var(--teal-dark);background:#2f6f5e1a;font-size:13px;line-height:1.4}.delivery-school-note>svg{flex-shrink:0;margin-top:1px}.delivery-address-form,.delivery-address-choice{display:grid;gap:13px;padding-top:14px;border-top:1px solid rgba(24,23,20,.1)}.delivery-address-form label{display:grid;gap:7px}.delivery-address-form label>span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.delivery-address-form input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:9px 11px;background:#fff}.delivery-address-form input:focus{border-color:var(--teal);outline:0;box-shadow:0 0 0 3px #2f6f5e1f}.delivery-address-intro,.delivery-address-choice>p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.delivery-address-form .primary-action,.delivery-address-form .secondary-action,.delivery-address-choice .secondary-action{width:100%}@media(max-width:640px){.delivery-panel{margin:16px 0;padding:14px}.delivery-panel-heading{display:grid}.delivery-panel-heading>p{max-width:none;text-align:left}.delivery-options{grid-template-columns:1fr}}.subject-search-form{display:grid;gap:14px;margin-top:24px}.subject-search-form>p{margin:0;color:var(--muted);font-size:14px}.subject-search-form>.subject-search-error{padding:12px 14px;border:1px solid #b91c1c;border-radius:8px;background:#fef2f2;color:#b91c1c;font-weight:700}.subject-search-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.subject-search{display:grid;gap:6px;font-size:13px;font-weight:700}.subject-search input{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--line);border-radius:8px;outline:none;background:#fff}.subject-search input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f6f5e1f}.subject-search-form>.primary-action{justify-self:start}.subject-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.subject-list button{display:grid;gap:4px;padding:14px;color:var(--ink);text-align:left;border:1px solid var(--line);border-radius:8px;background:#fff}.subject-list button:hover:not(:disabled),.subject-list button.pending{border-color:var(--teal);background:#2f6f5e0f}.subject-list button:disabled{cursor:wait;opacity:.65}.subject-list span{color:var(--muted);font-size:12px}.unlisted-child-trigger{margin-top:16px}.unlisted-child-form{display:grid;gap:14px;margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.unlisted-child-form>div>p{margin:6px 0 0;color:var(--muted);font-size:13px}.unlisted-child-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.client-shell{width:min(1480px,100%);margin:0 auto;padding:24px}.proofing-window-notice{display:grid;gap:3px;margin-bottom:16px;padding:12px 14px;border:1px solid rgba(47,111,94,.24);border-radius:10px;background:#2f6f5e12;color:var(--ink)}.proofing-window-notice span{color:var(--muted);font-size:13px}.proofing-window-notice .proofing-window-line{color:var(--ink);font-size:13.5px;line-height:1.5}.proofing-window-notice.needs-parcel{border-color:#c490318c;background:#c490311a}.proofing-window-notice .link-action{display:inline;padding:0;font-size:inherit;vertical-align:baseline}.late-shipping-route{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--muted);font-size:12.5px}.late-shipping-route span{display:inline-flex;align-items:center;gap:6px}.late-shipping-from{text-decoration:line-through;opacity:.7}.late-shipping-to{color:var(--teal-dark);font-weight:700}.late-shipping-from:after{content:"";width:18px;height:1px;margin-left:4px;background:currentColor}.late-shipping-address{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px;border-radius:10px;background:#2f6f5e14;font-size:13px}.late-shipping-address>svg{margin-top:2px;color:var(--teal-dark)}.late-shipping-address address{font-style:normal;line-height:1.45}.late-shipping-address address span{display:block}.late-shipping-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:14px 0 12px;padding-top:12px;border-top:1px solid rgba(24,23,20,.1);font-size:14px}.late-shipping-total b{font-size:17px;color:var(--teal-dark)}.selection-dialog.late-shipping-dialog{overflow-y:auto;overscroll-behavior:contain}@media(max-width:640px){.selection-dialog-backdrop:has(.late-shipping-dialog){align-items:stretch;padding:0}.selection-dialog.late-shipping-dialog{width:100%;max-height:none;border-radius:0;box-shadow:none}}.late-shipping-dialog .delivery-address-form,.late-shipping-dialog .delivery-address-choice{margin-top:4px}.proofing-status-card{max-width:600px}.client-grid{display:grid;grid-template-columns:minmax(210px,260px) minmax(420px,1fr) minmax(260px,320px);gap:18px;align-items:start}.workspace-panel,.preview-panel,.upload-console{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.workspace-panel{min-height:calc(100vh - 112px);padding:18px}@media(min-width:1081px){.client-shell:has(>.client-grid){display:flex;flex-direction:column;height:calc(100dvh - 64px);overflow:hidden}.client-shell>.client-grid{flex:1 1 auto;min-height:0;align-items:stretch}.client-grid>.workspace-panel,.client-grid>.preview-panel{height:100%;min-height:0}.pose-panel,.preview-panel{position:sticky;top:76px}.client-grid>.photo-panel{display:flex;flex-direction:column;overflow:hidden}.client-grid>.photo-panel .photo-list-scroll{flex:1 1 auto;min-height:0;padding:3px 5px 3px 3px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}.client-grid>.preview-panel{grid-template-rows:minmax(0,1fr) auto}.client-grid>.preview-panel .preview-stage{min-height:0}.order-panel{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.order-panel>*{flex:0 0 auto}.order-panel .order-action-bar{position:relative;top:auto}.order-panel .order-summary{max-height:38vh;margin:12px 0 0;overflow-y:auto}}.panel-heading,.admin-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.panel-heading h1,.panel-heading h2,.admin-heading h1{margin:0;font-size:24px;line-height:1.1}.eyebrow{margin:0 0 6px;color:var(--coral);font-size:12px;font-weight:800;text-transform:uppercase}.pose-list{display:grid;gap:12px;margin-top:18px}.class-photo-action{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:50px;margin-top:12px;padding:7px 10px;color:var(--teal-dark);text-align:left;border:1px solid var(--teal);border-radius:8px;background:#2f6f5e0f}.class-photo-action:hover:not(:disabled){background:#2f6f5e1f}.class-photo-action:disabled{cursor:not-allowed;opacity:.5}.class-photo-action-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:#fff}.pose-button{display:grid;grid-template-columns:58px minmax(0,1fr) 20px;align-items:center;gap:12px;width:100%;min-height:78px;padding:10px;color:var(--ink);text-align:left;border:1px solid var(--line);border-radius:8px;background:#fff}.pose-button.selected,.background-chip.selected{border-color:var(--teal);box-shadow:0 0 0 3px #2f6f5e1f}.pose-thumb{display:grid;place-items:end center;width:58px;height:58px;overflow:hidden;border-radius:7px;background:#ede9de}.pose-thumb img{width:80%;height:100%;object-fit:contain;object-position:bottom center}.pose-thumb img.half-body{transform:scale(2.07);transform-origin:center 16%}.pose-button strong{display:block;font-size:14px}.pose-button small{display:block;margin-top:4px;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px}.pose-button>span:nth-child(2){min-width:0}.preview-panel{display:grid;grid-template-rows:minmax(520px,1fr) auto;min-height:calc(100vh - 112px);overflow:hidden}.preview-stage{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;place-items:center;min-height:520px;padding:12px;overflow:hidden}.stage-composite{position:relative;container-type:inline-size;max-width:100%;max-height:100%;aspect-ratio:4 / 5;overflow:hidden;border-radius:8px}.stage-composite.portrait{width:auto;height:100%}.stage-composite.landscape{width:100%;height:auto}.stage-composite:after{position:absolute;inset:auto 0 0;z-index:1;height:28%;content:"";background:linear-gradient(180deg,transparent,rgba(0,0,0,.28))}.preview-toolbar{position:absolute;top:16px;left:16px;right:16px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px}.preview-toolbar span{border-radius:999px;padding:8px 12px;color:#fff;background:#1817146b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.photo-personalization-preview{position:absolute;bottom:clamp(7px,3%,16px);left:50%;z-index:4;width:max-content;max-width:calc(100% - clamp(12px,6cqw,28px));padding:clamp(4px,1.2cqw,6px) clamp(16px,5cqw,24px);overflow-wrap:anywhere;color:#fff;border:1px solid rgba(255,255,255,.58);border-radius:999px;background:linear-gradient(90deg,#18171473,#181714d1 18% 82%,#18171473);box-shadow:0 3px 14px #0000003d;transform:translate(-50%);text-align:center;text-wrap:balance;font-family:Georgia,Times New Roman,serif;font-size:clamp(8px,3cqw,13px);font-style:italic;font-weight:700;letter-spacing:.015em;line-height:1.18;text-shadow:0 1px 3px rgba(0,0,0,.72)}.photo-personalization-preview:before,.photo-personalization-preview:after{position:absolute;top:50%;color:#f4d48b;content:"✦";font-size:.72em;font-style:normal;text-shadow:0 1px 3px rgba(0,0,0,.72);transform:translateY(-50%)}.photo-personalization-preview:before{left:clamp(6px,2cqw,10px)}.photo-personalization-preview:after{right:clamp(6px,2cqw,10px)}.cutout-image{position:absolute;inset:0;z-index:2;width:100%;height:100%;object-fit:contain;object-position:bottom center;transform-origin:50% 100%;filter:drop-shadow(0 24px 28px rgba(0,0,0,.34))}.stage-composite.placement-interactive{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.stage-composite.placement-interactive:active{cursor:grabbing}.placement-hint{position:absolute;bottom:16%;left:50%;z-index:4;display:flex;flex-direction:column;align-items:center;gap:10px;width:max-content;max-width:calc(100% - 24px);transform:translate(-50%);pointer-events:none}.stage-composite.placement-interactive:active .placement-hint{opacity:0}.placement-hint-chip{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:10px 18px;border:2px solid rgba(255,255,255,.9);border-radius:999px;background:#181714eb;color:#fff;font-size:16px;font-weight:800;line-height:1.25;text-align:center;box-shadow:0 4px 16px #0006;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.placement-hint-chip svg{flex-shrink:0}.placement-hint-pinch{display:none}@media(pointer:coarse){.placement-hint-pinch{display:inline}.placement-hint-scroll{display:none}}@keyframes placement-hint-pulse{0%,to{opacity:.95}50%{opacity:.55}}.cutout-image.half-body{transform:scale(2.07);transform-origin:center 16%}.background-choice-preview .background-choice-proof{inset:11% 12% 8%;width:76%;height:81%;border:2px solid rgba(255,255,255,.88);border-radius:6px;background:#fff;box-shadow:0 10px 26px #00000057;filter:none}.background-choice-label{position:absolute;top:10px;left:50%;z-index:4;max-width:calc(100% - 20px);padding:5px 10px;overflow:hidden;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:#181714ad;color:#fff;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap;transform:translate(-50%)}.background-choice-preview .photo-personalization-preview{bottom:9%}.background-controls{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:12px;align-items:center;padding:14px;border-top:1px solid var(--line);background:#fffefa}.icon-button{display:grid;place-items:center;width:40px;height:40px;color:var(--ink);border:1px solid rgba(24,23,20,.14);border-radius:999px;background:#ffffffdb}.icon-button:hover{border-color:var(--teal)}.background-groups{grid-column:1 / -1;display:flex;gap:6px;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:2px}.background-group-chip{flex:0 0 auto;padding:6px 12px;color:var(--ink);border:1px solid var(--line);border-radius:999px;background:#fff;font-size:12px;font-weight:700;white-space:nowrap}.background-group-chip:hover:not(:disabled){border-color:var(--teal)}.background-group-chip.selected{color:#fff;border-color:var(--teal);background:var(--teal)}.background-group-chip:disabled{opacity:.5}.background-wheel{display:grid;grid-auto-columns:116px;grid-auto-flow:column;gap:10px;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;padding:4px;scroll-snap-type:x mandatory}.background-chip{scroll-snap-align:center;display:grid;gap:7px;width:116px;padding:7px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff}.background-swatch{display:block;width:100%;aspect-ratio:16 / 10;overflow:hidden;border-radius:6px}.background-swatch img{display:block;width:100%;height:100%;object-fit:cover}.background-chip span:last-child{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}.product-section{margin-top:18px}.order-action-bar{position:sticky;top:76px;z-index:5;display:grid;gap:4px;margin:14px -8px 0;padding:8px;border:1px solid rgba(47,111,94,.18);border-radius:9px;background:#fffefaf5;box-shadow:0 8px 24px #1e24211f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.order-action-bar .primary-action{width:100%}@media(max-width:640px){.order-action-bar{position:fixed;inset:auto 0 0;z-index:40;margin:0;padding:10px 14px max(10px,env(safe-area-inset-bottom));border:0;border-top:1px solid rgba(47,111,94,.18);border-radius:0;box-shadow:0 -8px 24px #1e24211f}.order-panel{padding-bottom:calc(78px + env(safe-area-inset-bottom))}}.order-wizard{display:flex;flex-direction:column;min-height:0;padding-bottom:calc(88px + env(safe-area-inset-bottom))}.wizard-stepper{display:flex;margin:0 0 4px;padding:0;list-style:none}.wizard-step{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.wizard-step:before{content:"";position:absolute;top:13px;right:50%;width:100%;height:2px;background:var(--line)}.wizard-step:first-child:before{display:none}.wizard-step.done:before,.wizard-step.active:before{background:var(--teal)}.wizard-step-dot{position:relative;z-index:1;width:26px;height:26px;display:grid;place-items:center;border:1.5px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:12px;font-weight:800}.wizard-step.done .wizard-step-dot{background:var(--teal);border-color:var(--teal);color:#fff}.wizard-step.active .wizard-step-dot{border-color:var(--teal);color:var(--teal-dark);box-shadow:0 0 0 3px #2f6f5e24}.wizard-step-dot:disabled{cursor:default}.wizard-step-label{font-size:10px;font-weight:700;letter-spacing:.02em;color:var(--muted)}.wizard-step.active .wizard-step-label{color:var(--teal-dark)}.wizard-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;margin:4px 0 6px;padding:6px 2px;border:0;background:transparent;color:var(--teal-dark);font-size:13px;font-weight:700}.wizard-preview{position:relative;z-index:4;min-height:0;padding:6px 0 10px;overflow:hidden;background:var(--paper)}.wizard-preview .preview-stage{min-height:0;height:min(48dvh,420px);max-height:100%;justify-items:center}.wizard-preview .stage-composite{height:100%;width:auto;max-width:100%}.wizard-step-select .wizard-preview{flex:1 1 auto;min-height:190px;display:flex}.wizard-step-select .wizard-preview .preview-stage{flex:1 1 auto;width:100%;height:auto;min-height:0;max-height:none}.wizard-step-select .wizard-body{flex:0 1 auto;min-height:0;max-height:42%}.wizard-step-select:not(:has(>.wizard-preview)) .wizard-body{flex:1 1 auto;max-height:none}.wizard-step-select:not(:has(.pose-button:nth-child(5))){padding-bottom:0}.wizard-step-position .wizard-preview .preview-stage{height:clamp(340px,calc(100dvh - 250px),680px);padding:4px 0 0}.wizard-preview-expand{position:absolute;inset:0;z-index:5;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;-webkit-tap-highlight-color:transparent}.wizard-preview-expand:focus-visible{outline:3px solid var(--teal);outline-offset:-3px;border-radius:8px}.wizard-preview-expand-badge{position:absolute;bottom:18px;left:50%;display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:#1817149e;color:#fff;font-size:12px;font-weight:700;line-height:1;white-space:nowrap;transform:translate(-50%);pointer-events:none}.fullscreen-preview{position:fixed;inset:0;z-index:110;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;height:100dvh;color:#fff;background:#0c0c0b;animation:fullscreen-preview-in .16s ease-out}.fullscreen-preview:focus{outline:none}.fullscreen-preview-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(10px,env(safe-area-inset-top)) 10px 6px 16px}.fullscreen-preview-heading{display:flex;flex-direction:column;gap:1px;min-width:0}.fullscreen-preview-heading small{overflow:hidden;color:#ffffffad;font-size:12px;font-weight:700;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap}.fullscreen-preview-top strong{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.fullscreen-preview .icon-button{width:44px;height:44px;color:#fff;border-color:transparent;background:#ffffff24}.fullscreen-preview .icon-button:hover{border-color:#ffffff80}.fullscreen-preview-body{position:relative;display:grid;place-items:center;min-height:0;padding:4px 8px;user-select:none;-webkit-user-select:none;touch-action:none}.fullscreen-preview-body .preview-stage{width:100%;height:100%;min-height:0;padding:0}.fullscreen-preview-body .stage-composite{border-radius:10px}.fullscreen-preview-arrow{position:absolute;top:50%;z-index:4;transform:translateY(-50%)}.fullscreen-preview-arrow.prev{left:10px}.fullscreen-preview-arrow.next{right:10px}.fullscreen-preview-caption{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 16px max(14px,env(safe-area-inset-bottom));text-align:center}.fullscreen-preview-caption:not(:last-child){padding-bottom:9px}.fullscreen-preview-caption span{font-size:15px;font-weight:700}.fullscreen-preview-caption small{color:#ffffffb8;font-size:12px}.fullscreen-swipe-hint,.fullscreen-group-hint{position:absolute;bottom:18px;left:50%;z-index:5;display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:#181714ad;color:#fff;font-size:13px;font-weight:700;white-space:nowrap;transform:translate(-50%);pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:placement-hint-pulse 2.6s ease-in-out infinite}.fullscreen-group-hint{bottom:64px}@media(prefers-reduced-motion:reduce){.fullscreen-swipe-hint,.fullscreen-group-hint{animation:none}}.fullscreen-stage-frame{display:grid;place-items:center;width:100%;height:100%;min-height:0}.stage-enter-y-next{animation:stage-rise .19s ease-out}.stage-enter-y-prev{animation:stage-drop .19s ease-out}.stage-enter-x-next{animation:stage-slide-left .19s ease-out}.stage-enter-x-prev{animation:stage-slide-right .19s ease-out}.stage-enter-jump{animation:stage-pop .2s ease-out}@keyframes stage-rise{0%{opacity:.35;transform:translateY(16px)}}@keyframes stage-drop{0%{opacity:.35;transform:translateY(-16px)}}@keyframes stage-slide-left{0%{opacity:.35;transform:translate(22px)}}@keyframes stage-slide-right{0%{opacity:.35;transform:translate(-22px)}}@keyframes stage-pop{0%{opacity:.4;transform:scale(.97)}}.fullscreen-group-bar{display:flex;justify-content:center;align-items:center;gap:10px;min-width:0;padding:6px 12px 0}.fullscreen-group-bar-current{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:420px;min-height:44px;padding:0 14px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:#ffffff1f;color:#fff;font-size:14px;font-weight:800}.fullscreen-group-bar-current:hover{border-color:#ffffffb3}.fullscreen-group-bar-current>svg{flex:0 0 auto}.fullscreen-group-bar-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.fullscreen-group-bar-count{flex:0 0 auto;padding:1px 8px;border-radius:999px;background:#ffffff29;font-size:12px}.fullscreen-group-banner{position:absolute;top:50%;left:50%;z-index:5;display:grid;gap:2px;justify-items:center;max-width:82%;padding:13px 24px;border:1px solid rgba(255,255,255,.32);border-radius:16px;background:#0c0c0bb8;text-align:center;transform:translate(-50%,-50%);pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:group-banner 1.5s ease forwards}.fullscreen-group-banner strong{max-width:100%;overflow:hidden;font-size:20px;white-space:nowrap;text-overflow:ellipsis}.fullscreen-group-banner small{color:#ffffffbf;font-size:12px;font-weight:700}@keyframes group-banner{0%{opacity:0;transform:translate(-50%,-50%) scale(.92)}10%,70%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}@media(prefers-reduced-motion:reduce){.fullscreen-stage-frame,.stage-enter-y-next,.stage-enter-y-prev,.stage-enter-x-next,.stage-enter-x-prev,.stage-enter-jump{animation:none}.fullscreen-group-banner{animation:group-banner-still 1.2s ease forwards}}@keyframes group-banner-still{0%{opacity:0}15%,70%{opacity:1}to{opacity:0}}.fullscreen-group-tray-backdrop{position:absolute;inset:0;z-index:6;background:#0505048c}.fullscreen-group-tray{position:absolute;right:0;bottom:0;left:0;display:grid;gap:11px;align-content:start;max-height:76%;margin:0 auto;padding:13px 14px max(16px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;border-top:1px solid rgba(255,255,255,.14);border-radius:18px 18px 0 0;background:#171715;animation:tray-up .2s ease-out}@media(min-width:720px){.fullscreen-group-tray{right:16px;bottom:14px;left:16px;max-width:680px;border:1px solid rgba(255,255,255,.14);border-radius:18px}}@keyframes tray-up{0%{opacity:0;transform:translateY(24px)}}@media(prefers-reduced-motion:reduce){.fullscreen-group-tray{animation:none}}.fullscreen-group-tray-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.fullscreen-group-tray-head strong{font-size:16px}.fullscreen-group-tray-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:10px}.group-card{position:relative;display:grid;gap:7px;min-width:0;padding:9px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:#ffffff0d;color:#fff;text-align:left}.group-card:hover{border-color:#ffffff80}.group-card.selected{border-color:var(--teal);background:#2f6f5e4d}.group-card-thumbs{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:4px;aspect-ratio:1 / 1}.group-card-thumb{min-height:0;border-radius:7px;background-color:#242421}.group-card-thumb.empty{border:1px solid rgba(255,255,255,.07);background-color:#ffffff0b}.group-card-meta{display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-width:0}.group-card-name{overflow:hidden;font-size:13px;font-weight:800;line-height:1.25}.group-card-count{flex:0 0 auto;padding:1px 8px;border-radius:999px;background:#ffffff24;font-size:12px;font-weight:700}.group-card-check{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:22px;height:22px;border-radius:999px;background:var(--teal);color:#fff}.fullscreen-preview-next{display:flex;justify-content:center;gap:10px;padding:0 16px max(14px,env(safe-area-inset-bottom))}.fullscreen-preview-next .primary-action{max-width:420px}.fullscreen-preview-back{display:inline-flex;align-items:center;gap:6px;padding:0 16px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:#ffffff1f;color:#fff;font-size:14px;font-weight:700;white-space:nowrap}.fullscreen-preview-back:hover{border-color:#ffffffb3}@keyframes fullscreen-preview-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.fullscreen-preview{animation:none}}.wizard-position{text-align:center;padding:0 4px}.wizard-position h2{margin:0 0 4px;font-size:19px}.wizard-position p{margin:0;color:var(--muted);font-size:13px}.wizard-position small{display:block;margin-top:6px;color:var(--muted);font-size:12px;opacity:.8}.wizard-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.order-wizard .workspace-panel{min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.order-wizard .panel-heading{display:grid;gap:2px}.order-wizard .panel-heading .eyebrow{margin:0}.order-wizard .photo-panel .panel-heading .eyebrow{display:none}.photo-proof-note{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.4}.order-wizard .photo-proof-note{margin-top:3px;font-size:11.5px;line-height:1.3}.photo-tap-hint{display:flex;align-items:center;gap:5px;margin:5px 0 0;color:var(--muted);font-size:11.5px;line-height:1.3}.photo-tap-hint svg{flex:none}.photo-scroll-hint{display:none}.order-wizard .photo-scroll-hint{display:block;margin:5px 0 0;color:var(--teal-dark);font-size:11.5px;font-weight:800}.order-wizard .panel-heading h1{font-size:20px}.order-wizard .pose-list{margin-top:10px}.order-wizard .pose-tile-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.order-wizard .pose-tile-grid .pose-button{position:relative;grid-template-columns:1fr;justify-items:center;align-content:start;gap:6px;min-height:0;padding:7px 5px;text-align:center}.order-wizard .pose-tile-grid .pose-thumb{width:min(100%,72px);height:auto;aspect-ratio:1}.order-wizard .pose-tile-grid .pose-button>span:nth-child(2){width:100%}.order-wizard .pose-tile-grid .pose-button strong{display:-webkit-box;min-height:2.4em;overflow:hidden;font-size:11px;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:2}.order-wizard .photo-panel .pose-tile-grid .pose-button strong{min-height:0;white-space:nowrap;-webkit-line-clamp:1}.order-wizard .pose-tile-grid .pose-button small{display:none}.order-wizard .pose-tile-grid .pose-button>svg{position:absolute;top:5px;right:5px;z-index:1;border-radius:999px;background:var(--surface)}.wizard-background h2{margin:2px 0;font-size:20px}.wizard-background p{margin:2px 0 14px;color:var(--muted);font-size:13px}.wizard-step-personalize .wizard-preview{padding:4px 0 6px}.wizard-step-personalize .wizard-preview .preview-stage{height:clamp(240px,calc(100dvh - 370px),530px)}.wizard-step-personalize .wizard-body{flex-basis:150px;min-height:150px}.photo-personalization-picker{display:grid;gap:10px;min-height:0}.photo-personalization-heading h2{margin:0;font:700 20px/1.1 Georgia,Times New Roman,serif}.photo-custom-text{display:grid;gap:4px}.photo-custom-text>span{font-size:12px;font-weight:800}.photo-custom-text textarea{width:100%;min-height:58px;resize:vertical;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;line-height:1.35}.photo-custom-text textarea:focus{border-color:var(--teal);outline:0;box-shadow:0 0 0 3px #2f6f5e1f}.photo-custom-text small{justify-self:end;color:var(--muted);font-size:10.5px}.order-wizard .photo-custom-text textarea{min-height:54px;resize:none}.wizard-step-background .wizard-preview{padding:4px 0 6px}.wizard-step-background .wizard-preview .preview-stage{height:clamp(220px,calc(100dvh - 340px),480px)}.wizard-step-background{padding-bottom:0}.wizard-step-background .wizard-body{flex-basis:145px;min-height:145px}.wizard-step-background:has(.background-groups) .wizard-body{flex-basis:200px;min-height:200px}.wizard-step-background .wizard-background h2{margin:0;font-size:18px}.wizard-step-background .wizard-background p{margin:1px 0 6px;font-size:12px;line-height:1.3}.wizard-step-background .background-controls{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;padding:6px}.wizard-step-background .icon-button{width:44px;height:44px}.wizard-step-background .background-group-chip{min-height:44px}.wizard-step-background .background-wheel{grid-auto-columns:84px;gap:6px;padding:2px}.wizard-step-background .background-chip{gap:4px;width:84px;padding:4px}@media(max-height:620px)and (max-width:720px){.wizard-step-background .wizard-background p{display:none}.wizard-step-personalize .wizard-preview .preview-stage{height:200px}.wizard-step-personalize .photo-personalization-picker{gap:7px}}.wizard-add-ons h2{margin:2px 0;font-size:20px}.wizard-add-ons>p{margin:2px 0 12px;color:var(--muted);font-size:13px;line-height:1.45}.wizard-add-ons .no-add-ons-option{margin-bottom:9px;background:#fff}.wizard-selection-chip{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.wizard-selection-chip .wizard-selection-thumb{width:40px;flex-shrink:0;border-radius:7px}.wizard-selection-chip>div{flex:1;min-width:0}.wizard-selection-chip strong{display:block;font-size:13.5px}.wizard-selection-chip small{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:11.5px}.wizard-bar{position:fixed;right:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;gap:6px;padding:10px 14px max(10px,env(safe-area-inset-bottom));border-top:1px solid rgba(47,111,94,.18);background:#fffefaf7;box-shadow:0 -8px 24px #1e24211f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.wizard-bar .primary-action{width:100%}.photo-text-cart-actions{display:grid;grid-template-columns:minmax(110px,.42fr) minmax(0,1.58fr);gap:8px}.photo-text-cart-actions .primary-action,.photo-text-cart-actions .secondary-action{width:100%;min-width:0}.photo-text-cart-actions .primary-action:only-child{grid-column:1 / -1}.photo-no-text-action{display:flex;flex-direction:column;gap:1px;min-height:48px;padding:5px 8px;line-height:1.1}.photo-no-text-action small{color:var(--muted);font-size:10px}.order-wizard .photo-text-cart-actions .primary-action{padding-inline:8px;font-size:13px}.wizard-bar-split{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);display:grid;gap:8px}.wizard-bar-split .primary-action{min-width:0;padding-inline:8px;white-space:nowrap;font-size:13px}.wizard-bar .wizard-class-photo-action{display:flex;flex-direction:column;gap:2px;min-width:0;padding:4px 6px;line-height:1.05}.wizard-class-photo-action strong{white-space:nowrap;font-size:11px}.wizard-class-photo-action small{font-size:10px}.wizard-bar-summary{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted)}.wizard-bar-summary b{color:var(--ink)}body:has(.order-demo-topbar) .client-shell:has(>.order-wizard){padding-bottom:calc(51px + env(safe-area-inset-bottom))}body:has(.order-demo-topbar) .client-shell:has(>.order-wizard .wizard-bar-summary){padding-bottom:calc(70px + env(safe-area-inset-bottom))}body:has(.order-demo-topbar) .order-wizard{padding-bottom:0}body:has(.order-demo-topbar) .wizard-stepper{margin-bottom:2px}body:has(.order-demo-topbar) .wizard-step{gap:2px}body:has(.order-demo-topbar) .wizard-step:before{top:10px}body:has(.order-demo-topbar) .wizard-step-dot{width:20px;height:20px;border-width:1px;font-size:10px}body:has(.order-demo-topbar) .wizard-step-label{font-size:8px}@media(min-width:340px){body:has(.order-demo-topbar) .wizard-step-label{font-size:9px}}@media(min-width:600px){body:has(.order-demo-topbar) .wizard-step-label{font-size:10px}}body:has(.order-demo-topbar) .wizard-back{gap:4px;margin:2px 0 3px;padding:3px 2px;font-size:11px}body:has(.order-demo-topbar) .order-wizard .pose-tile-grid{grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:5px}body:has(.order-demo-topbar) .order-wizard .pose-tile-grid .pose-button{gap:3px;padding:4px 3px}body:has(.order-demo-topbar) .order-wizard .pose-tile-grid .pose-thumb{width:min(100%,56px)}body:has(.order-demo-topbar) .order-wizard .pose-tile-grid .pose-button strong{font-size:10px}body:has(.order-demo-topbar) .wizard-step-select .wizard-body{flex:0 1 190px;min-height:0;max-height:48%;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}body:has(.order-demo-topbar) .order-wizard .photo-panel .photo-scroll-hint{display:block}body:has(.order-demo-topbar) .order-wizard .photo-panel .pose-tile-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:6px;padding:2px 2px 5px;overflow:visible}body:has(.order-demo-topbar) .wizard-step-background .background-controls{grid-template-columns:minmax(0,1fr)}body:has(.order-demo-topbar) .wizard-step-background .background-controls>.icon-button{display:none}@media(max-height:560px){body:has(.order-demo-topbar) .wizard-step-select .wizard-preview{min-height:130px}body:has(.order-demo-topbar) .wizard-step-select .wizard-body{flex-basis:180px;max-height:52%}}body:has(.order-demo-topbar) .wizard-step-background .wizard-body{flex:1 1 200px;min-height:0;display:flex;flex-direction:column;justify-content:flex-end}body:has(.order-demo-topbar) .wizard-step-background .wizard-preview{flex:1 1 auto;min-height:120px;display:flex}body:has(.order-demo-topbar) .wizard-step-background .wizard-preview .preview-stage{flex:1 1 auto;width:100%;height:auto;min-height:0;max-height:none}body:has(.order-demo-topbar) .wizard-bar{gap:4px;padding:6px 10px max(6px,env(safe-area-inset-bottom))}body:has(.order-demo-topbar) .wizard-bar .primary-action,body:has(.order-demo-topbar) .wizard-bar .secondary-action{min-height:38px;padding:7px 10px;font-size:12px}body:has(.order-demo-topbar) .wizard-bar-summary{font-size:11px}.wizard-prepaid-hint{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;margin-bottom:12px;padding:10px 12px;border-radius:10px;border:1px solid rgba(196,144,49,.5);background:#c490311a}.wizard-prepaid-hint>svg{margin-top:1px;color:#966c1ef2}.wizard-prepaid-hint p{margin:0;color:var(--ink);font-size:12.5px;line-height:1.45}.wizard-prepaid-hint .link-action{white-space:nowrap}.wizard-prepaid-review{display:grid;gap:12px}.wizard-prepaid-envelope{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#2f6f5e1a;color:var(--teal-dark);font-size:13px;font-weight:700}.wizard-prepaid-envelope>svg{flex-shrink:0}.wizard-prepaid-review-note{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.wizard-prepaid-review .photo-personalization-picker{margin:0}.wizard-prepaid-review-actions{display:grid;gap:6px;justify-items:center}.wizard-prepaid-review-actions .primary-action{width:100%}.wizard-prepaid-skip{font-size:12.5px}.wizard-prepaid-complete{display:flex;flex-direction:column;justify-content:center;min-height:55vh}.wizard-prepaid-done{display:grid;justify-items:center;gap:6px;padding:26px 18px;text-align:center}.wizard-prepaid-done-badge{display:grid;place-items:center;width:56px;height:56px;margin-bottom:4px;border-radius:999px;background:#2f6f5e1f;color:var(--teal-dark)}.wizard-prepaid-done h2{margin:0;font-size:20px}.wizard-prepaid-done p{margin:0;max-width:34ch;color:var(--muted);font-size:13.5px;line-height:1.5}.wizard-prepaid-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:8px;width:100%;max-width:340px;margin-top:12px}.wizard-prepaid-actions .primary-action,.wizard-prepaid-actions .secondary-action{width:100%;min-width:0}.open-order-nudge{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-top:14px;padding:12px;color:var(--teal-dark);border:1px solid rgba(47,111,94,.35);border-radius:9px;background:#2f6f5e14}.open-order-nudge svg{margin-top:2px}.open-order-nudge strong{display:block;font-size:13px}.open-order-nudge p{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.open-order-nudge+.prepaid-panel{margin-top:10px}.prepaid-done-nudge{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-top:14px;padding:12px;color:var(--teal-dark);border:1px solid rgba(47,111,94,.35);border-radius:9px;background:#2f6f5e14}.prepaid-done-nudge svg{margin-top:2px}.prepaid-done-nudge strong{display:block;font-size:13px}.prepaid-done-nudge p{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.prepaid-done-nudge-dismiss{margin-top:7px;padding:0;font-size:12px}.product-section h3{margin:0 0 10px;font-size:15px}.no-package-card{margin-top:9px}.no-add-ons-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;flex:0 0 auto;width:100%;min-height:68px;padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);text-align:left}.no-add-ons-option.selected{border-color:var(--teal);box-shadow:0 0 0 2px #2f6f5e2e}.no-add-ons-option.selected .package-radio{border-color:var(--teal)}.no-add-ons-option>b{color:var(--muted);white-space:nowrap}.package-card{border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden}.package-card.selected{border-color:var(--teal);box-shadow:0 0 0 2px #2f6f5e2e}.package-card.none{background:var(--paper)}.package-choose{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:12px 14px;border:0;background:none;text-align:left}.package-radio{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:2px solid var(--line);color:var(--teal-dark)}.package-card.selected .package-radio{border-color:var(--teal)}.package-copy{display:grid;gap:2px;min-width:0}.package-copy strong{font-size:14px}.package-copy small{color:var(--muted);font-size:12px}.package-choose b{color:var(--teal-dark);white-space:nowrap}.package-card.none .package-choose b{color:var(--muted);font-weight:700}.selection-dialog-backdrop{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:24px;background:#18171470}.selection-dialog{display:flex;flex-direction:column;gap:14px;width:min(520px,100%);max-height:min(80vh,720px);overflow:hidden;padding:20px;border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.selection-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.selection-dialog header h2{margin:0;font:700 24px/1.1 Georgia,Times New Roman,serif}.selection-dialog .primary-action{flex:0 0 auto}.selection-dialog-intro{margin:0}.photo-personalization-dialog{width:min(820px,100%);max-height:min(94vh,940px)}.photo-personalization-dialog-preview{flex:0 0 auto}.photo-personalization-dialog .preview-stage{min-height:0;height:clamp(340px,56vh,560px);padding:0}.photo-personalization-dialog .photo-personalization-picker{overflow-y:auto;overscroll-behavior:contain;padding:2px}.selection-dialog-scroll-wrap,.package-dialog-scroll-wrap{position:relative;min-height:0;display:flex}.selection-dialog-scroll-wrap:after,.package-dialog-scroll-wrap:after{content:"";position:absolute;right:0;bottom:0;left:0;height:44px;background:linear-gradient(to top,var(--surface),rgba(255,254,250,0));opacity:1;transition:opacity .15s ease;pointer-events:none}.selection-dialog-scroll-wrap.at-end:after,.package-dialog-scroll-wrap.at-end:after{opacity:0}.selection-dialog-scroll,.package-dialog-scroll{flex:1 1 auto;min-height:0;overscroll-behavior:contain;overflow-y:auto}.selection-dialog-scroll{display:grid;gap:12px;padding:3px}.package-picker-dialog .product-section{margin-top:0}.add-ons-actions{display:grid;gap:8px}.product-quantity-list{display:grid;gap:9px}.product-quantity-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.product-quantity-row.selected{border-color:var(--teal);box-shadow:0 0 0 3px #2f6f5e1f}.product-copy{min-width:0}.product-copy strong,.product-copy small{display:block}.product-copy strong{font-size:14px}.product-copy small{margin-top:3px;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px}.product-detail-trigger{display:block;min-width:0;width:100%;padding:0;color:var(--ink);text-align:left;border:0;background:transparent}.product-detail-trigger:hover strong,.product-detail-trigger:focus-visible strong{color:var(--teal-dark);text-decoration:underline}.product-detail-hint{display:block;margin-top:5px;color:var(--teal-dark);font-size:11px;font-weight:800}.product-quantity-row>b{color:var(--teal-dark);font-size:15px}.product-price.discounted{display:grid;justify-items:end;line-height:1.15}.product-price.discounted s{color:var(--muted);font-size:12px;font-weight:500}.quantity-control{grid-column:1 / -1;display:grid;grid-template-columns:34px 54px 34px;justify-content:end;gap:6px}.quantity-control button,.quantity-control input{height:34px;border:1px solid rgba(24,23,20,.16);border-radius:6px;background:#fff}.quantity-control button{display:grid;place-items:center}.quantity-control input{width:54px;padding:0 4px;text-align:center;font-weight:800}@media(max-width:640px){.quantity-control{grid-template-columns:44px 56px 44px}.quantity-control button,.quantity-control input{height:44px}.quantity-control input{width:56px}}@media(max-width:720px){.order-wizard .product-quantity-row{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:9px 10px}.order-wizard .product-detail-trigger{grid-column:1}.order-wizard .product-detail-hint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-wizard .quantity-control{grid-column:3;grid-template-columns:44px 36px 44px;gap:4px}.order-wizard .quantity-control input{width:36px}}.order-summary{display:grid;gap:12px;margin:18px 0;padding:14px;border:1px solid rgba(24,23,20,.1);border-radius:8px;background:#f2f3ee}.order-summary div{display:flex;align-items:center;gap:9px;min-width:0;font-size:14px;font-weight:700}.mini-swatch{flex:0 0 auto;width:18px;height:18px;border-radius:999px;background-position:center;background-size:cover}.order-summary ul{margin:0;padding-left:18px;color:var(--muted);font-size:13px}.package-includes{display:grid;gap:7px;padding-top:4px;border-top:1px solid rgba(24,23,20,.1)}.package-includes p{margin:0;color:var(--teal-dark);font-size:13px;font-weight:700}.package-includes-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.package-dialog-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:20px;background:#12110f94;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.package-dialog{display:flex;flex-direction:column;gap:4px;width:min(520px,100%);max-height:min(720px,calc(100vh - 40px));padding:22px;overflow:hidden;border-radius:10px;background:var(--surface);box-shadow:0 28px 80px #00000052}.package-dialog header{flex:0 0 auto}.package-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.package-dialog h2,.package-dialog h3{margin:0}.package-dialog h2{font-size:28px}.package-dialog h3{margin-top:22px;font-size:16px}.package-dialog-scroll>p{margin:12px 0 0;color:var(--muted);line-height:1.5}.package-dialog-price{display:block;margin-top:18px;color:var(--teal-dark);font-size:22px}.package-dialog ul{display:grid;gap:7px;margin:12px 0 0;padding-left:20px;color:var(--muted)}.order-placed-dialog p{margin:12px 0 0;color:var(--muted);line-height:1.5}.order-placed-dialog p strong{color:var(--ink)}.order-placed-dialog .primary-action{margin-top:22px}.primary-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:46px;padding:11px 16px;color:#fff;border:0;border-radius:8px;background:var(--teal);font-weight:800}.primary-action:hover{background:var(--teal-dark)}.text-button{padding:6px 0;color:var(--teal-dark);border:0;background:transparent;font-weight:800}.checkout-email{display:grid;gap:7px;min-width:0;margin-bottom:14px;color:var(--muted);font-size:12px;font-weight:800;overflow-wrap:anywhere}.checkout-email input{width:100%;min-height:44px;padding:10px 12px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:400}.inline-note{margin:12px 0 0;color:var(--coral);font-size:13px}.booking-load-error{display:flex;align-items:center;gap:12px}.booking-load-error .inline-note{margin:0}.admin-shell{width:min(1180px,100%);margin:0 auto;padding:28px 24px}.admin-shell .primary-action:disabled,.admin-shell .primary-action:disabled:hover{background:var(--line);color:var(--muted);opacity:1}.admin-crumbs{display:flex;flex:1;align-items:baseline;gap:9px;min-width:0}.admin-crumbs .brand{flex:none;color:var(--teal-dark);font-size:15px;font-weight:800;text-decoration:none}.admin-crumbs .brand:hover{text-decoration:underline}.admin-crumbs>span{flex:none;color:var(--muted);font-size:15px}.admin-crumbs h1{overflow:hidden;margin:0;font-size:17px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.admin-crumbs p{flex:0 1 auto;overflow:hidden;margin:0;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1240px){.admin-crumbs p{display:none}}.admin-heading{margin-bottom:18px}.admin-auth-options,.admin-auth-form{display:grid;gap:12px}.admin-auth-options{margin-bottom:12px}.google-sign-in{min-height:44px;padding:10px 14px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:700}.google-sign-in:hover:not(:disabled){border-color:var(--muted);background:var(--paper)}.admin-auth-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.admin-auth-divider:before,.admin-auth-divider:after{height:1px;background:var(--line);content:"";flex:1}.admin-auth-form input{min-height:44px;padding:10px 12px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff}.admin-auth-form button[type=submit]{min-height:44px;padding:10px 14px;color:#fff;border:0;border-radius:8px;background:var(--teal);font-weight:800}.admin-auth-form button[type=submit]:hover:not(:disabled){background:var(--teal-dark)}.status-pill,.upload-status{display:inline-flex;align-items:center;gap:7px;min-height:30px;border-radius:999px;padding:6px 10px;color:var(--teal-dark);background:#2f6f5e1f;font-size:12px;font-weight:800}.prepaid-pill{display:inline-flex;align-items:center;margin-left:10px;border-radius:999px;padding:3px 10px;color:#fff;background:var(--teal-dark);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.parent-added-pill{display:inline-flex;align-items:center;margin-left:10px;border-radius:999px;padding:3px 10px;color:var(--ink);background:#c4903138;border:1px solid var(--gold);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.password-pill{display:inline-flex;align-items:center;margin-left:10px;border-radius:999px;padding:3px 10px;color:#3f3a33;background:#efe7d8;font-size:11px;font-weight:800;letter-spacing:.06em;font-variant-numeric:tabular-nums}.ordered-pill{display:inline-flex;align-items:center;margin-left:10px;border:1px solid rgba(47,111,94,.32);border-radius:999px;padding:3px 10px;color:var(--teal-dark);background:#2f6f5e1f;font-size:11px;font-weight:800;letter-spacing:.04em;cursor:pointer}.ordered-pill:hover{border-color:var(--teal)}.upload-console{display:grid;gap:18px;padding:18px}.upload-controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,.8fr) minmax(180px,220px) 170px;gap:12px;align-items:end}.upload-controls label{display:grid;gap:7px}.upload-controls label span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.upload-controls input:not([type=file]){width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);background:#fff}.file-drop{position:relative;place-items:center;min-height:44px;border:1px dashed var(--teal);border-radius:8px;padding:8px 12px;color:var(--teal-dark);background:#2f6f5e17}.file-drop input{position:absolute;inset:0;opacity:0}.admin-upload-button{min-height:44px}.upload-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.upload-metrics div{display:grid;gap:4px;border:1px solid rgba(24,23,20,.1);border-radius:8px;padding:14px;background:#f2f3ee}.upload-metrics strong{font-size:22px}.upload-metrics span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.upload-table{display:grid;gap:8px}.empty-state{display:grid;place-items:center;min-height:180px;gap:8px;color:var(--muted);border:1px dashed var(--line);border-radius:8px}.upload-row{display:grid;grid-template-columns:minmax(220px,1fr) 110px minmax(260px,1.4fr);gap:12px;align-items:center;min-height:58px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.upload-row strong,.upload-row small{display:block}.upload-row small{margin-top:3px;color:var(--muted)}.upload-row code{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.upload-status.queued{color:#684b16;background:#c490312e}.upload-status.uploading{color:#244d88;background:#3066be21}.upload-status.error{color:#8e372b;background:#b9503c24}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1080px){.client-shell:has(>.order-wizard){display:flex;flex-direction:column;height:calc(100dvh - 64px);padding-bottom:calc(88px + env(safe-area-inset-bottom));overflow:hidden}.client-shell:has(>.wizard-prepaid-complete){padding-bottom:24px}.client-shell>.order-wizard{flex:1 1 auto;padding-bottom:0;overflow:hidden}.client-grid{grid-template-columns:1fr}.workspace-panel,.preview-panel{min-height:0}.pose-list{grid-template-columns:repeat(3,minmax(0,1fr))}.upload-controls,.upload-row{grid-template-columns:1fr}}@media(max-width:720px){.topbar{gap:12px;height:52px;min-height:52px;padding:5px 14px}.topbar.order-demo-topbar{height:44px;min-height:44px;padding:3px 10px}body:has(.order-demo-topbar) .client-page{min-height:calc(100dvh - 44px)}body:has(.order-demo-topbar) .client-shell:has(>.order-wizard){height:calc(100dvh - 44px)}.order-demo-brand small,.order-demo-cart>span{display:none}.order-demo-cart button{margin-left:2px;padding:6px}.order-demo-topbar .order-demo-cart button{padding:4px 5px}.order-demo-cta{padding:9px 14px}.order-demo-finale{min-height:calc(100vh - 44px);padding:32px 18px}.order-demo-finale h1{font-size:21px}.breadcrumbs{gap:4px;overflow:hidden}.breadcrumb-gallery,.breadcrumb-current{flex:1 1 0;max-width:none;font-size:12px}.breadcrumb-current{color:var(--ink);font-weight:700}.breadcrumbs>svg{width:12px;height:12px}.topbar-nav{gap:8px;margin-left:auto}.topbar-account-action,.topbar-buyer{width:40px;height:40px;max-width:none;padding:0;justify-content:center;border-radius:999px}.topbar-buyer{width:auto;max-width:100px;padding:0 9px}.topbar-action-label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.topbar-badge{position:absolute;top:-3px;right:-3px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--coral);color:#fff;font-size:10.5px;font-weight:800;line-height:1}.client-shell,.admin-shell{padding:14px}.client-shell:has(>.order-wizard){height:calc(100dvh - 52px);padding-bottom:calc(88px + env(safe-area-inset-bottom))}.client-shell:has(>.wizard-prepaid-complete){padding-bottom:14px}.portal-home{place-items:start center;padding:0}.portal-home-card{width:100%;min-height:0;padding:28px 20px 32px;border:0;border-radius:0;background:transparent;box-shadow:none}.portal-home-card h1{font-size:36px}.portal-home-icon{margin-bottom:18px}.portal-home-intro{line-height:1.5}.gallery-code-form{margin-top:24px}.portal-home{align-content:start;row-gap:0}.portal-home-example{width:100%;padding:0 20px 32px;border:0;border-radius:0;background:transparent;box-shadow:none}.portal-home-example figcaption{margin-top:12px}.pose-list,.upload-metrics,.subject-search-fields,.subject-list{grid-template-columns:1fr}.preview-panel{grid-template-rows:minmax(420px,1fr) auto}.preview-stage{min-height:420px}.cutout-image{width:100%;height:100%}.background-controls{grid-template-columns:38px minmax(0,1fr) 38px;padding:10px}.background-wheel{grid-auto-columns:98px}}.cart-card{width:min(560px,100%)}.cart-card .eyebrow{display:inline-flex;align-items:center;gap:6px}.cart-lines{display:grid;gap:10px;margin:20px 0 0;padding:0;list-style:none}.cart-line{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fff}.prepaid-panel,.yearbook-panel{display:grid;gap:10px;margin-bottom:14px;padding:14px;border-radius:10px;border:1px solid rgba(196,144,49,.55);background:#c490311a}.prepaid-panel strong,.yearbook-panel strong{font-size:14px}.prepaid-panel ul{display:grid;gap:4px;margin:0;padding:0;list-style:none}.prepaid-panel li{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.prepaid-line-copy{flex:1;min-width:0;display:grid;gap:2px}.prepaid-item-summary{overflow-wrap:anywhere}.prepaid-apply{flex-shrink:0;padding:5px 11px;border:1px solid rgba(47,111,94,.45);border-radius:999px;background:#fff;color:var(--teal-dark);font-size:12px;font-weight:700}.prepaid-apply:hover{background:#2f6f5e14}.prepaid-panel li b{color:var(--teal-dark)}.prepaid-panel p,.yearbook-panel p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.5}.yearbook-panel p b{color:var(--ink)}.yearbook-chosen-note{display:flex;align-items:center;gap:6px;margin:10px 2px 0;color:var(--teal-dark);font-size:12.5px;font-weight:700}.yearbook-confirm-thumb{flex-shrink:0;width:108px;aspect-ratio:4 / 5;object-fit:cover;border-radius:8px;background:#efe9df}.prepaid-panel .photo-personalization-picker{margin:0}.prepaid-text-edit{display:grid;gap:6px}.prepaid-text-edit small,.prepaid-panel li .photo-custom-text>span{color:var(--muted);font-size:12px;line-height:1.45}.prepaid-panel li{flex-wrap:wrap}.prepaid-panel li>.photo-personalization-picker{flex-basis:100%;margin-bottom:6px}.prepaid-panel .primary-action:disabled,.prepaid-panel .primary-action:disabled:hover,.prepaid-apply:disabled,.prepaid-apply:disabled:hover{cursor:not-allowed;opacity:.55;background:var(--teal)}.prepaid-apply:disabled,.prepaid-apply:disabled:hover{background:#fff}.order-lock-note{margin:14px 2px 0;color:var(--muted);font-size:12px;line-height:1.45;text-align:center}.photo-decline-action{display:flex;align-items:center;gap:10px;width:100%;margin-top:14px;padding:10px 12px;border:1px dashed rgba(24,23,20,.3);border-radius:8px;background:transparent;color:var(--muted);text-align:left;cursor:pointer}.photo-decline-action:hover{border-color:var(--teal);background:#2f6f5e0d;color:var(--teal-dark)}.photo-decline-action svg{flex-shrink:0}.photo-decline-action>span{display:grid;gap:2px;min-width:0}.photo-decline-action strong{color:var(--ink);font-size:13px}.photo-decline-action small{font-size:12px;line-height:1.4}.photo-decline-proof-note{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.photo-decline-orders{display:grid;gap:4px;margin:0;padding:10px 12px;list-style:none;border:1px solid rgba(196,144,49,.55);border-radius:9px;background:#c490311a;font-size:13px}.photo-decline-orders li{display:flex;justify-content:space-between;gap:10px}.photo-decline-orders b{color:var(--teal-dark)}.photo-decline-reasons{display:grid;gap:6px;margin:0;padding:0;border:0}.photo-decline-reasons legend{margin-bottom:6px;font-size:13.5px;font-weight:800}.photo-decline-reason{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;font-size:13.5px;cursor:pointer}.photo-decline-reason:has(input:checked){border-color:var(--teal);background:#2f6f5e14}.photo-decline-reason input{flex-shrink:0;width:18px;height:18px;margin:0;accent-color:var(--teal)}.photo-decline-comment{display:grid;gap:6px;font-size:13px}.photo-decline-comment span{font-weight:700}.photo-decline-comment textarea{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:8px;font:inherit;resize:vertical}.photo-decline-done{display:grid;gap:12px;justify-items:center;text-align:center}.photo-decline-done-badge{display:grid;place-items:center;width:52px;height:52px;border-radius:999px;background:#2f6f5e1f;color:var(--teal-dark)}.photo-decline-done p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.5}.prepaid-confirm-preview{display:flex;align-items:center;gap:14px}.cart-thumb.prepaid-confirm-thumb{flex-shrink:0;width:108px;border-radius:8px}.prepaid-confirm-copy{min-width:0;display:grid;gap:3px}.prepaid-confirm-copy strong{font-size:15px}.prepaid-confirm-copy small{color:var(--muted);font-size:12.5px;overflow-wrap:anywhere}.prepaid-confirm-text{color:var(--teal-dark);font-size:13px;font-style:italic}.prepaid-confirm-warning{display:flex;align-items:flex-start;gap:9px;margin:0;padding:11px 12px;border-radius:9px;border:1px solid rgba(196,144,49,.55);background:#c490311a;color:var(--ink);font-size:13px;line-height:1.45}.prepaid-confirm-warning svg{flex-shrink:0;margin-top:1px;color:#8a6417}.prepaid-confirm-actions{display:flex;flex-wrap:wrap;gap:10px}.prepaid-confirm-actions button,.selection-dialog .prepaid-confirm-actions .primary-action{flex:1 1 180px;width:auto;min-width:0;justify-content:center}.prepaid-confirm-actions button svg{flex-shrink:0}.cart-section-label{margin:16px 0 8px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.cart-open-order-note{margin:-2px 0 10px;color:var(--muted);font-size:13px;line-height:1.45}.paid-chip{justify-self:end;padding:3px 10px;border-radius:999px;background:#2f6f5e1f;color:var(--teal-dark);font-size:12px;font-weight:700}.my-orders-card{width:min(620px,100%)}.my-orders-list{display:grid;gap:12px;margin:18px 0 0;padding:0;list-style:none}.my-order{border:1px solid rgba(24,23,20,.12);border-radius:14px;background:#fff9;overflow:hidden}.my-order.expanded{border-color:#18171433}.my-order-head{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border:0;background:transparent;text-align:left;cursor:pointer}.my-order-head>svg{flex-shrink:0;color:var(--muted)}.my-order-head-text{display:grid;gap:2px;flex:1;min-width:0}.my-order-head-text strong{font-size:15px}.my-order-head-text small{color:var(--muted);font-size:12px}.my-order-body{padding:0 16px 14px}.my-order-delivery{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-top:12px;padding:10px 12px;border-radius:10px;background:#2f6f5e14;color:var(--ink);font-size:12px;line-height:1.45}.my-order-delivery>svg{margin-top:2px;color:var(--teal-dark)}.my-order-delivery strong,.my-order-delivery address,.my-order-delivery span{display:block}.my-order-delivery strong{margin-bottom:2px;color:var(--teal-dark);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.my-order-delivery address{font-style:normal}.my-order-delivery .my-order-delivery-note{margin-top:5px;color:var(--teal-dark);font-weight:700}.my-order-items{display:grid;gap:10px;margin:0;padding:12px 0 0;border-top:1px solid rgba(24,23,20,.08);list-style:none}.my-order-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.cart-thumb.my-order-item-thumb{width:104px;border-radius:10px}.my-order-item-thumb-link{flex-shrink:0;padding:0;border:0;border-radius:10px;background:transparent;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.my-order-item-thumb-link:hover{transform:translateY(-1px);box-shadow:0 6px 16px #18171429}.my-order-item-thumb-link:focus-visible{outline:2px solid var(--teal-dark);outline-offset:2px}.photo-state-link{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:#8e5a1f73;text-underline-offset:3px}.photo-state-link:hover{text-decoration-color:currentColor}.my-order-item-main{display:grid;flex:1;gap:3px;min-width:0}.my-order-item-main strong{display:inline-flex;align-items:center;gap:8px;font-size:14px}.item-state{border-radius:999px;padding:2px 8px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.item-state-unpaid{color:#684b16;background:#c490312e}.item-state-prepaid{color:#8e5a1f;background:#c4903124}.item-state-ready{color:#244d88;background:#3066be21}.item-state-refunded{color:#5b5b66;background:#5b5b6624}.my-order-item-main small{color:var(--muted);font-size:12px}.photo-state{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700}.photo-state.needs{color:#8e5a1f}.photo-state.chosen{color:var(--teal-dark)}.my-order-photo-note{display:block;margin-top:3px;color:#5b5348;font-size:12px;font-weight:500;line-height:1.35}.my-order-item-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.link-action{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:var(--teal-dark);font-size:12px;font-weight:800;cursor:pointer}.link-action:hover{text-decoration:underline}.my-order-foot{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:12px;border-top:1px solid rgba(24,23,20,.08);font-size:14px}.my-order-coupon{color:var(--teal-dark)}.my-order-coupon>span{display:inline-flex;align-items:center;gap:5px}.checkout-result{margin:14px 0 0;padding:12px 14px;border-radius:10px;background:#2f6f5e1a;color:var(--teal-dark);font-weight:700}.checkout-result-warning{background:#b9503c1a;color:var(--coral)}.checkout-result-warning .link-action{color:inherit;font-weight:700}.my-order-pay{display:grid;gap:8px;margin-top:12px}.my-order-pay .primary-action{width:100%}.my-order-pay .inline-note{margin:0}@media(max-width:720px){.cart-card,.my-orders-card{width:100%;padding:12px 12px 28px}.cart-card>.eyebrow,.cart-intro,.my-orders-card>.eyebrow,.my-orders-intro{display:none}.cart-card h1,.my-orders-card h1{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.my-orders-list{margin-top:0}.cart-card>.cart-lines{margin-top:0}.my-order-head{gap:8px;padding:11px 10px}.my-order-head-text strong{font-size:14px;line-height:1.25}.my-order-head .order-status{flex-shrink:0;padding-inline:7px}.my-order-body{padding:0 10px 12px}.my-order-items{gap:0;padding-top:4px}.my-order-item{display:grid;grid-template-columns:84px minmax(0,1fr);grid-template-areas:"thumb main" "thumb side";gap:4px 10px;padding:6px 0;border-bottom:1px solid rgba(24,23,20,.08)}.my-order-item:last-child{border-bottom:0}.cart-thumb.my-order-item-thumb{grid-area:thumb;align-self:start;width:84px;border-radius:8px}.my-order-item-main{grid-area:main}.my-order-item-main strong{align-items:flex-start;justify-content:space-between;gap:4px 6px}.my-order-item-main small,.photo-state{line-height:1.25}.photo-state{align-items:flex-start}.photo-state>svg{flex-shrink:0;margin-top:1px}.my-order-item-side{grid-area:side;min-width:0;flex-flow:row wrap;align-items:center;justify-content:flex-start;gap:4px 9px}.my-order-item-side>b{font-size:14px}.my-order-item-side .paid-chip{justify-self:auto;padding:2px 7px}.my-order-item-side .link-action{justify-content:flex-start;min-height:26px}}@media(max-width:360px){.my-orders-card{padding-inline:10px}.my-order-body{padding-inline:8px}.my-order-item{grid-template-columns:76px minmax(0,1fr);gap:4px 8px}.cart-thumb.my-order-item-thumb{width:76px}}.cart-line-info{display:flex;align-items:center;gap:12px;min-width:0}.cart-line-text{min-width:0}.cart-personalization-text,.my-order-personalization{display:block;margin-top:2px;color:var(--teal-dark);font-size:11px;font-weight:700;line-height:1.3}.cart-personalization-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-order-item-thumb .cart-thumb-personalization{padding:4px 5px;font-size:8px}.cart-line-edit-actions{display:grid;gap:0}.cart-add-ons-trigger,.cart-personalization-trigger{display:flex;align-items:center;gap:5px;max-width:100%;min-height:28px;margin-top:3px;padding:3px 0;border:0;background:transparent;color:var(--teal-dark);font-size:11.5px;font-weight:800;text-align:left}.cart-add-ons-trigger span,.cart-personalization-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-add-ons-trigger svg,.cart-personalization-trigger svg{flex-shrink:0}.cart-add-ons-trigger:hover span,.cart-personalization-trigger:hover span{text-decoration:underline}.cart-personalization-trigger{color:#8e5a1f}.cart-add-ons-dialog-actions{display:grid;grid-template-columns:minmax(0,1fr) 120px;align-items:center;gap:8px}.cart-add-ons-dialog-actions span{display:inline-flex;align-items:baseline;gap:4px;color:var(--muted);font-size:13px;white-space:nowrap}.cart-add-ons-dialog-actions b{color:var(--teal-dark)}.cart-add-ons-dialog-actions .primary-action{min-width:0}.selection-dialog-backdrop:has(.cart-photo-text-dialog){padding:10px}.cart-photo-text-dialog{gap:10px;width:min(520px,100%);max-height:min(calc(100dvh - 20px),760px);padding:14px}.cart-photo-text-dialog .cart-thumb.cart-photo-text-preview{width:min(190px,52vw);margin:0 auto;border-radius:10px}.cart-photo-text-dialog .cart-thumb.cart-photo-text-preview .cart-thumb-personalization{right:8px;bottom:8px;left:8px;padding:5px 7px;border:1px solid rgba(255,255,255,.55);border-radius:999px;font-size:9px;-webkit-line-clamp:3}.cart-photo-text-dialog .photo-custom-text textarea{min-height:70px;resize:none}.cart-photo-text-actions{display:grid;grid-template-columns:130px minmax(0,1fr);gap:8px}.cart-photo-text-actions .primary-action,.cart-photo-text-actions .secondary-action{min-width:0}@media(max-width:420px){.cart-photo-text-actions{grid-template-columns:105px minmax(0,1fr)}.cart-photo-text-actions .primary-action{padding-inline:8px;font-size:13px}}.selection-dialog-backdrop:has(.cart-add-ons-dialog){padding:10px}.cart-add-ons-dialog{gap:10px;max-height:min(calc(100dvh - 20px),720px);padding:14px}.cart-add-ons-dialog header h2{font-size:22px}.cart-add-ons-dialog header .icon-button{width:44px;height:44px}.cart-add-ons-dialog .selection-dialog-scroll{padding:2px}.cart-add-ons-dialog .product-quantity-list{gap:6px}.cart-add-ons-dialog .product-quantity-row{grid-template-columns:minmax(0,1fr) auto auto;gap:6px;min-height:60px;padding:7px}.cart-add-ons-dialog .product-quantity-row.selected{box-shadow:0 0 0 2px #2f6f5e1f}.cart-add-ons-dialog .product-copy strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.cart-add-ons-dialog .product-copy small{display:none}.cart-add-ons-dialog .product-quantity-row>b{font-size:13px;white-space:nowrap}.cart-add-ons-dialog .quantity-control{grid-column:3;grid-template-columns:44px 32px 44px;gap:3px}.cart-add-ons-dialog .quantity-control button,.cart-add-ons-dialog .quantity-control input{height:44px}.cart-add-ons-dialog .quantity-control input{width:32px}.cart-thumb{position:relative;flex-shrink:0;display:block;width:46px;border-radius:8px;border:1px solid var(--line);overflow:hidden}.cart-thumb-composite{position:absolute;inset:0;display:block}.cart-thumb img{display:block;width:100%;height:100%;object-fit:contain;object-position:bottom center;transform-origin:50% 100%}.cart-thumb-personalization{position:absolute;right:0;bottom:0;left:0;z-index:2;display:-webkit-box;padding:2px 3px;overflow:hidden;color:#fff;background:#181714c7;text-align:center;font-size:5.5px;font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:700;line-height:1.15;-webkit-box-orient:vertical;-webkit-line-clamp:2}.class-photo-cart-thumb{display:grid;place-items:center;aspect-ratio:1;background:#2f6f5e1a;color:var(--teal-dark)}.cart-line strong{display:block;font-size:15px}.cart-line small{display:flex;align-items:center;gap:6px;margin-top:4px;color:var(--muted);font-size:12px}.cart-line b{color:var(--teal-dark);font-size:15px}.cart-total{display:flex;align-items:center;justify-content:space-between;margin:16px 0;padding-top:14px;border-top:1px solid var(--line);font-weight:800}.cart-total b{color:var(--teal-dark);font-size:20px}.cart-total-value{display:flex;align-items:center;justify-content:flex-end;gap:12px}.cart-coupon-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:4px 6px;border:0;background:transparent;color:var(--teal-dark);font-size:12px;font-weight:800}.cart-coupon-toggle:hover{text-decoration:underline}.cart-actions{display:grid;grid-template-columns:1fr;gap:12px}.cart-ordering-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cart-actions .primary-action{order:-1}.secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 16px;color:var(--teal-dark);border:1px solid var(--teal);border-radius:8px;background:#fff;font-weight:800}.secondary-action:hover{background:#2f6f5e14}.tab-link{border:0;border-radius:999px;padding:9px 13px;color:var(--ink);background:none}.tab-link:hover{background:#2f6f5e1c}.tab-link.active{color:#fff;background:var(--teal)}.upload-controls select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);background:#fff}.proof-console .upload-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.proof-error{margin:0;border:1px solid rgba(185,80,60,.4);border-radius:8px;padding:12px 14px;color:#8e372b;background:#b9503c1a}.proof-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px 14px;background:#f2f3ee}.proof-actions p{margin:0;font-weight:600}.proof-actions button{display:inline-flex;align-items:center;gap:7px;min-height:38px;border:1px solid var(--line);border-radius:8px;padding:8px 13px;background:#fff;font-weight:700}.primary-action.danger{background:var(--coral)}.proof-group{border:1px solid var(--line);border-radius:8px;background:#fff}.proof-group summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;font-size:15px}.proof-group summary span{color:var(--muted);font-size:12px;font-weight:700}.yearbook-pill,.proof-group summary .yearbook-pill{display:inline-flex;align-items:center;margin-left:10px;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:800;white-space:nowrap}.yearbook-pill.ready,.proof-group summary .yearbook-pill.ready{color:#137333;background:#e6f4ea}.yearbook-pill.waiting,.proof-group summary .yearbook-pill.waiting{color:#7a5200;background:#fef7e0}.yearbook-pill.not_photographed,.proof-group summary .yearbook-pill.not_photographed{color:#b3261e;background:#fce8e6}.yearbook-totals{display:flex;flex-wrap:wrap;align-items:center;gap:8px 4px;border:1px solid var(--line);border-radius:8px;padding:10px 14px;background:#fff}.yearbook-totals .yearbook-pill{margin-left:6px}.yearbook-totals small{margin-left:auto;color:var(--muted)}.yearbook-tile-badge{border-radius:999px;padding:2px 8px;color:#137333;background:#e6f4ea;font-size:11px;font-weight:800}.yearbook-tile-action{border:1px solid var(--teal);border-radius:999px;padding:3px 10px;color:var(--teal-dark);background:#fff;font-size:12px;font-weight:700;cursor:pointer}.yearbook-tile-action:disabled{opacity:.55;cursor:wait}.yearbooks-list{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}.yearbooks-list[aria-busy=true],.yearbook-roster[aria-busy=true]{opacity:.45;transition:opacity .15s}.yearbooks-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;border:1px solid var(--line);border-radius:9px;padding:12px 14px;background:#fff}.yearbooks-row-school{display:grid;flex:1 1 220px;gap:2px;min-width:0;color:inherit;text-decoration:none}.yearbooks-row-school:hover strong{text-decoration:underline}.yearbooks-row-school small,.yearbooks-row-facts small{color:var(--muted);font-size:12px}.yearbooks-row-facts{display:grid;gap:4px;justify-items:start}.status-pill.yearbook-off{color:var(--muted);background:#0000000f}.yearbook-meter{display:grid;flex:1 1 280px;gap:6px;min-width:0}.yearbook-meter-bar{display:flex;overflow:hidden;height:10px;border-radius:999px;background:var(--line)}.yearbook-meter-bar>i.ready{background:#1e8e3e}.yearbook-meter-bar>i.waiting{background:#f9ab00}.yearbook-meter-bar>i.not_photographed{background:#d93025}.yearbook-meter-counts{display:flex;flex-wrap:wrap;gap:4px 6px}.yearbook-meter-counts .yearbook-pill{margin-left:0}.yearbook-section{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:16px;border:1px solid var(--line);border-radius:10px;padding:14px 16px;background:#fff}.yearbook-section-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}.yearbook-section-heading h3,.yearbook-subheading{margin:0}.yearbook-subheading{color:var(--muted);font-size:13px}.yearbook-help{color:var(--muted)}.yearbook-settings{margin-top:16px}.yearbook-add-code,.yearbook-student-edit{display:flex;flex-wrap:wrap;align-items:end;gap:8px}.yearbook-add-code label,.yearbook-student-edit label{display:grid;gap:4px}.yearbook-add-code label span,.yearbook-student-edit label span{color:var(--muted);font-size:12px;font-weight:700}.yearbook-roster{display:grid;gap:8px}.yearbook-student summary{flex-wrap:wrap;justify-content:flex-start}.proof-group summary .yearbook-duplicate-pill{border-radius:999px;padding:2px 8px;color:#8a4b08;background:#fff4e5;font-size:10px;font-weight:900}.yearbook-student-body{display:grid;gap:12px;padding:0 14px 14px}.yearbook-student-body>button{justify-self:start}.yearbook-child{display:grid;gap:8px}.yearbook-child-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.yearbook-child-heading small{color:var(--muted)}.yearbook-student .yearbook-student-body .gallery-grid{margin:0}.subject-summary-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.subject-proof-status{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px}.subject-proof-status.is-ready{color:var(--teal-dark)!important;background:#2a7e6f1f}.subject-proof-status.not-ready{color:#76520d!important;background:#c490312e}.proof-group .upload-row,.proof-group .gallery-grid{margin:0 10px 10px}.subject-order-link{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:999px;padding:8px 12px;color:#fff;background:var(--teal);font-size:12px;font-weight:800;text-decoration:none}.subject-order-link:hover{background:var(--teal-dark)}.copy-order-link{color:var(--teal-dark);border:1px solid rgba(47,111,94,.32);background:#fff}.copy-order-link:hover{color:#fff}.subject-order-error{max-width:220px;color:var(--coral)!important}.send-order-link-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#1817148f}.send-order-link-dialog{display:grid;gap:18px;width:min(100%,460px);margin:0;padding:24px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 24px 80px #1817144d}.send-order-link-dialog header,.send-order-link-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.send-order-link-dialog h2,.send-order-link-dialog p{margin:0}.send-order-link-dialog label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:700}.send-order-link-dialog input{width:100%;min-height:44px;padding:10px 12px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff}.send-order-link-error{color:var(--coral);font-size:13px;font-weight:700}.merge-subject-dialog{width:min(100%,520px)}.merge-picker{display:grid;gap:9px}.merge-picker-title,.merge-picker small{color:var(--muted);font-size:13px;font-weight:700}.merge-candidate-list{display:grid;gap:6px;max-height:min(300px,38vh);overflow-y:auto}.merge-subject-dialog .merge-candidate{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;cursor:pointer}.merge-candidate.likely{border-color:var(--gold);background:#c490311a}.merge-candidate.selected{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.merge-subject-dialog .merge-candidate input{width:auto;min-height:0;padding:0;border:0;flex:none;accent-color:var(--teal)}.merge-candidate-body{display:grid;gap:2px}.merge-candidate-hint{color:var(--ink);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.merge-candidate-name{color:var(--ink);font-size:14px;font-weight:700}.merge-candidate-meta{color:var(--muted);font-size:12px;font-weight:600}.merge-candidate-empty{margin:0;color:var(--muted);font-size:13px}.send-order-link-actions{justify-content:flex-end}.send-order-link-actions button{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:9px 14px;border-radius:8px;font-weight:800}.send-order-link-actions button[type=submit]{color:#fff;border:1px solid var(--teal);background:var(--teal)}.send-order-link-actions .secondary-button{color:var(--teal-dark);border:1px solid var(--teal);background:#fff}.upload-status.done{color:var(--teal-dark);background:#2f6f5e29}.gallery-panel{min-height:320px}.gallery-back{display:inline-flex;align-items:center;gap:5px;justify-self:start;border:0;border-radius:999px;padding:8px 13px;color:var(--teal-dark);background:#2f6f5e1a;font-weight:700}.gallery-heading{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.gallery-heading h2{margin:0}.gallery-code{color:var(--muted);font-weight:700;overflow-wrap:anywhere}.gallery-tab-panel:not([hidden]){display:grid;min-width:0;gap:16px}.proof-email-log{display:grid;gap:14px;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface)}.proof-email-log-run{margin:4px 0 0;color:var(--muted);font-size:12px}.proof-email-log-table td{font-size:13px}.proof-email-log-key,.proof-email-log-times small{display:block;color:var(--muted);font-size:11px}.proof-email-log-times small{display:inline;margin-left:4px}.proof-email-log-email{overflow-wrap:anywhere}.proof-email-log-times{margin:0;padding-left:18px;white-space:nowrap}.proof-email-log-none{color:var(--coral);font-weight:700}.proof-email-log-table .reminder-run-outcome{display:inline-block;white-space:normal;line-height:1.4}.proof-email-log-unsent h3{margin:0 0 6px;font-size:14px}.proof-email-log-unsent ul{margin:10px 0 0;padding-left:18px;display:grid;gap:4px;font-size:13px}.proof-email-log-unsent li span{color:var(--muted)}.gallery-settings{display:grid;gap:16px;border:1px solid var(--line);border-radius:8px;padding:18px;background:#fff}.gallery-settings-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.gallery-settings-heading h3,.gallery-settings-heading p{margin:0}.gallery-settings-heading p{margin-top:4px;color:var(--muted);font-size:13px}.gallery-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-settings-grid label{display:grid;gap:7px}.gallery-settings-grid label span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.gallery-settings-grid label small{color:var(--muted);font-size:12px}.gallery-settings-grid input,.gallery-settings-grid select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);background:#fff}.school-season-preview{display:grid;gap:3px;border:1px solid rgba(47,111,94,.2);border-radius:8px;padding:12px 14px;background:#2f6f5e0f}.school-season-preview strong{color:var(--teal-dark);font-size:12px;text-transform:uppercase}.school-season-preview span{font-size:16px;font-weight:800}.school-season-preview small{color:var(--muted);font-size:12px}.settings-saved-note{margin:0;color:var(--teal-dark);font-size:13px;font-weight:800}.gallery-settings-grid .gallery-settings-checkbox{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.gallery-settings-grid .gallery-settings-checkbox input{flex-shrink:0;width:18px;min-height:18px;margin:0;padding:0}.gallery-settings-checkbox div{display:grid;gap:2px}.gallery-settings-checkbox strong{font-size:13px}.gallery-settings-checkbox small{color:var(--muted);font-size:11px;line-height:1.35}.gallery-settings-actions{justify-content:flex-end}.gallery-settings-actions button,.preorder-link-result button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border-radius:8px;padding:9px 14px;font-weight:800}.gallery-settings-actions .primary-button,.preorder-link-result button{color:#fff;border:1px solid var(--teal);background:var(--teal)}.gallery-settings-actions .secondary-button{color:var(--teal-dark);border:1px solid var(--teal);background:#fff}.preorder-link-result{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(260px,1.5fr) auto;align-items:center;gap:12px;border:1px solid rgba(47,111,94,.32);border-radius:8px;padding:12px;background:#2f6f5e14}.preorder-link-result strong,.preorder-link-result small{display:block}.preorder-link-result small{margin-top:3px;color:var(--muted)}.preorder-link-result code{overflow-wrap:anywhere;color:var(--teal-dark)}.yearbook-school-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.yearbook-school-access code{font-size:18px;font-weight:700;letter-spacing:.08em}.yearbook-school-access>.inline-note{grid-column:1 / -1;margin:0}.gallery-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border:1px solid rgba(185,80,60,.34);border-radius:8px;padding:14px;background:#b9503c12}.gallery-danger-zone strong,.gallery-danger-zone small{display:block;max-width:62ch}.gallery-danger-zone small{margin-top:3px;color:var(--muted)}.gallery-danger-zone .secondary-button,.send-order-link-actions button.danger{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:9px 14px;border:1px solid var(--coral);border-radius:8px;font-weight:800}.gallery-danger-zone .secondary-button{color:var(--coral);background:#fff}.gallery-danger-zone .secondary-button:hover:not(:disabled){color:#fff;background:var(--coral)}.send-order-link-actions button.danger{color:#fff;background:var(--coral)}.delete-gallery-dialog{width:min(100%,520px)}.delete-gallery-impact ul{margin:0 0 12px;padding-left:20px;display:grid;gap:5px;font-size:13px}.delete-gallery-impact .destroyed{color:var(--coral)}.delete-gallery-impact .kept{color:var(--teal-dark)}.delete-gallery-impact p{margin:0;color:var(--muted);font-size:12px}.delete-gallery-warning{display:flex;align-items:flex-start;gap:8px;margin:0;color:var(--coral);font-size:13px;font-weight:700}.delete-gallery-failures{margin:0;padding-left:20px;display:grid;gap:4px;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.gallery-search{display:flex;flex:1 1 300px;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:12px}.gallery-search-field{display:flex;flex:1 1 240px;min-width:0;align-items:center;gap:7px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fff;color:var(--muted);cursor:text}.gallery-search-field:focus-within{border-color:var(--teal)}.gallery-search-field input{flex:1;min-width:0;border:0;padding:0;background:transparent;color:var(--ink);font-size:13px}.gallery-search-field input:focus{outline:none}.gallery-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}.gallery-table-wrap[aria-busy=true]>table{opacity:.45}.gallery-table{width:100%;border-collapse:collapse;font-size:13px}.gallery-table th,.gallery-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.gallery-table tbody tr:last-child td{border-bottom:0}.gallery-table th{position:sticky;top:0;background:var(--surface);color:var(--muted);font-size:11px;text-transform:uppercase}.gallery-sort{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:none;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.gallery-sort svg{opacity:.35}.gallery-sort:hover{color:var(--teal-dark)}.gallery-sort:hover svg,.gallery-sort.is-sorted svg{opacity:1}.gallery-sort.is-sorted{color:var(--teal-dark)}.gallery-table tbody tr{cursor:pointer}.gallery-table tbody tr:hover{background:#2f6f5e12}.gallery-table small{display:block;margin-top:3px;color:var(--muted)}.gallery-date-cell{color:var(--muted);white-space:nowrap}.gallery-table code{color:var(--muted);font-size:12px}.gallery-title-link{color:var(--ink);font-weight:800;text-decoration:none}.gallery-title-link:hover{text-decoration:underline}.gallery-table tbody tr:not(.gallery-comment-row) .gallery-latest-comment{display:none}.gallery-table tbody tr:has(+.gallery-comment-row) td{border-bottom:0}.gallery-comment-row td{padding-top:0}.gallery-table tbody tr:hover+.gallery-comment-row,.gallery-table tbody tr:has(+.gallery-comment-row:hover){background:#2f6f5e12}.gallery-latest-comment{display:flex;align-items:flex-start;gap:6px;color:var(--teal-dark);font-size:12px;font-style:italic;line-height:1.4;text-decoration:none}.gallery-latest-comment svg{flex:none;margin-top:2px}.gallery-latest-comment span{display:-webkit-box;min-width:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere}.gallery-latest-comment b{flex:none;font-style:normal;font-weight:800}.gallery-latest-comment:hover span{text-decoration:underline}.gallery-latest-comment:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.gallery-missing-proofs-link{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;color:var(--teal-dark);background:#edf5f0;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.gallery-missing-proofs-link:hover{border-color:var(--teal);background:#e1eee7}.gallery-missing-proofs-link:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.gallery-code-cell{display:flex;align-items:center;gap:8px}.gallery-code-cell button{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;color:var(--teal-dark);border:1px solid rgba(47,111,94,.28);border-radius:999px;background:#fff;font-size:11px;font-weight:800;white-space:nowrap}.gallery-code-cell button:hover{color:#fff;background:var(--teal)}.gallery-preorder-link{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:999px;padding:7px 10px;color:#fff;background:var(--teal);font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap;cursor:pointer}.gallery-preorder-link:hover{background:var(--teal-dark)}.gallery-preorder-link:disabled{cursor:wait;opacity:.7}.gallery-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:11px 2px 0}.gallery-pagination button{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:8px;padding:7px 11px;background:#fff;color:var(--teal-dark);font-size:12px;font-weight:800}.gallery-pagination button:disabled{background:var(--paper);color:var(--muted)}.gallery-pagination span{color:var(--muted);font-size:12px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.gallery-tile{display:grid;gap:6px;margin:0;border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff}.gallery-tile img{width:100%;aspect-ratio:4 / 5;border-radius:6px;object-fit:cover}.gallery-tile-placeholder{display:grid;place-items:center;aspect-ratio:4 / 5;border:1px dashed var(--line);border-radius:6px;color:var(--muted)}.gallery-tile figcaption{display:grid;gap:4px;justify-items:start}.gallery-tile small{overflow:hidden;max-width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.fs-browser{display:grid;gap:10px}.fs-browser-head{display:flex;align-items:center;gap:12px}.fs-browser-head span{color:var(--muted);font-size:12px}@media(max-width:720px){.gallery-settings-grid{grid-template-columns:1fr}.gallery-settings-actions,.preorder-link-result{display:grid;grid-template-columns:1fr}}.fs-browser-head button{display:inline-flex;align-items:center;gap:4px;margin-left:auto;border:1px solid var(--line);border-radius:999px;padding:6px 12px;background:#fff;font-weight:700}.fs-dir-list{display:flex;flex-wrap:wrap;gap:8px}.fs-dir{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:8px 12px;background:#fff}.fs-dir:hover{border-color:var(--teal)}@media(max-width:1080px){.proof-console .upload-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}.orders-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.orders-filter{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.orders-filter select{min-height:40px;padding:8px 10px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:700;text-transform:none}.orders-gallery-filter{display:grid;position:relative;flex:1 1 240px;max-width:320px;gap:4px}.orders-gallery-filter>label{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.orders-gallery-input{position:relative}.orders-gallery-input>input{width:100%;min-height:40px;padding:8px 34px 8px 10px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:700}.orders-gallery-clear{display:grid;position:absolute;z-index:2;top:50%;right:8px;width:24px;height:24px;padding:0;color:var(--muted);border:0;border-radius:999px;background:transparent;place-items:center;transform:translateY(-50%)}.orders-gallery-clear:hover{color:var(--teal-dark);background:#2f6f5e14}.orders-gallery-suggestions{display:grid;position:absolute;z-index:20;top:calc(100% + 5px);right:0;left:0;max-height:290px;overflow-y:auto;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 30px #0f172a29}.orders-gallery-suggestions button{display:grid;gap:2px;width:100%;padding:10px 12px;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left}.orders-gallery-suggestions button:last-child{border-bottom:0}.orders-gallery-suggestions button:hover,.orders-gallery-suggestions button.active{background:#2f6f5e14}.orders-gallery-suggestions strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.orders-gallery-suggestions span,.orders-gallery-suggestion-message{color:var(--muted);font-size:11px}.orders-gallery-suggestion-message{padding:11px 12px}.orders-search{display:flex;align-items:flex-end;flex:1 1 520px;flex-wrap:wrap;gap:8px}@media(max-width:720px){.orders-gallery-filter{flex-basis:100%;max-width:none}}.orders-search label{display:grid;flex:1 1 280px;gap:4px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.orders-search input{width:100%;min-height:40px;padding:8px 10px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:700}.orders-search button{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 12px;color:#fff;border:1px solid var(--teal);border-radius:8px;background:var(--teal);font-weight:800}.orders-search .orders-search-clear{color:var(--teal-dark);background:#fff}.orders-count{color:var(--muted);font-size:13px;font-weight:700}.orders-toolbar .secondary-button,.order-detail-toolbar .secondary-button{display:inline-flex;align-items:center;gap:7px;margin-left:auto;min-height:40px;padding:8px 14px;color:var(--teal-dark);border:1px solid var(--teal);border-radius:8px;background:#fff;font-weight:800}.orders-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.orders-table{width:100%;min-width:960px;border-collapse:collapse;text-align:left}.orders-table th{padding:10px 12px;color:var(--muted);background:var(--paper);border-bottom:1px solid var(--line);font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.orders-table td{max-width:220px;padding:13px 12px;border-bottom:1px solid var(--line);color:var(--ink);font-size:13px;vertical-align:top}.orders-table tbody tr{cursor:pointer;transition:background .15s ease}.orders-table tbody tr:last-child td{border-bottom:0}.orders-table tbody tr:hover,.orders-table tbody tr:focus-within{outline:0;background:#2f6f5e12}.orders-table-primary,.orders-table-secondary,.orders-table-contact{display:block}.orders-table-primary{color:var(--teal-dark);font-size:14px}.orders-table-order-link{display:block;color:var(--teal-dark);font-size:14px;font-weight:800;text-decoration:none}.orders-table-order-link:hover,.orders-table-order-link:focus-visible{text-decoration:underline}.orders-table-secondary{margin-top:3px;color:var(--muted);font-size:11px}.orders-table-contact{overflow-wrap:anywhere}.orders-table .orders-table-amount{text-align:right;white-space:nowrap}.orders-table-amount strong{color:var(--teal-dark);font-size:14px}.orders-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px}.orders-pagination button{display:inline-flex;align-items:center;gap:5px;min-height:38px;padding:7px 12px;color:var(--teal-dark);border:1px solid var(--teal);border-radius:8px;background:#fff;font-size:13px;font-weight:800}.orders-pagination button:disabled{color:var(--muted);border-color:var(--line);background:var(--paper)}.orders-pagination span{min-width:58px;color:var(--muted);font-size:13px;font-weight:700;text-align:center}.abandoned-carts-toolbar>div:first-child{display:grid;gap:3px}.abandoned-carts-toolbar>div:first-child strong{color:var(--teal-dark);font-size:14px}.abandoned-carts-toolbar>div:first-child span{color:var(--muted);font-size:12px}.abandoned-carts-toolbar .primary-button,.abandoned-cart-send{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 14px;border-radius:8px;font-weight:800}.abandoned-carts-toolbar .primary-button{color:#fff;border:1px solid var(--teal);background:var(--teal)}.abandoned-carts-toolbar button:disabled,.abandoned-cart-send:disabled{cursor:not-allowed;opacity:.55}.abandoned-cart-notice{color:var(--teal-dark)}.orders-table.abandoned-carts-table{min-width:1050px}.abandoned-carts-table tbody tr{cursor:default}.abandoned-carts-table .abandoned-cart-check{width:44px;max-width:44px;text-align:center}.abandoned-cart-check input{width:17px;height:17px;accent-color:var(--teal)}.abandoned-cart-send{min-height:34px;padding:6px 10px;color:var(--teal-dark);border:1px solid var(--teal);background:#fff}.order-detail-console{gap:14px}.order-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.order-detail-toolbar>a{display:inline-flex;align-items:center;gap:7px;color:var(--teal-dark);font-size:13px;font-weight:800;text-decoration:none}.order-detail-toolbar>a:hover{text-decoration:underline}.order-detail-toolbar .secondary-button{margin-left:auto}.order-card.order-detail-card{gap:14px;padding:18px}.order-detail-card .order-items-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.order-panel{width:min(100%,960px);max-height:calc(100dvh - 40px);overflow-y:auto}.order-card{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.order-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.order-card-head strong{display:block;font-size:15px}.order-number{display:block;margin-bottom:3px;color:var(--teal-dark);font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.order-card-head small{display:block;margin-top:3px;color:var(--muted);font-size:12px}.order-card-amount{display:grid;justify-items:end;gap:5px}.order-card-amount b{color:var(--teal-dark);font-size:16px}.order-card-refund{color:#8e372b;font-size:11.5px;font-weight:700}.order-status{display:inline-flex;align-items:center;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800;text-transform:capitalize;color:var(--muted);background:#18171414}.order-status-open{color:#684b16;background:#c490312e}.order-status-finished{color:var(--teal-dark);background:#2f6f5e24}.order-status-in_production{color:#244d88;background:#3066be21}.order-status-cancelled,.order-status-refunded{color:#8e372b;background:#b9503c24}.order-items-list{display:grid;gap:10px}.order-envelope{display:grid;gap:6px;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--paper)}.order-envelope-body{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:start;gap:12px}.order-envelope-body:not(:has(.order-result-thumbnail)){grid-template-columns:minmax(0,1fr)}.order-envelope-details{display:grid;gap:6px;min-width:0}.order-result-thumbnail{display:grid;gap:4px;margin:0}.order-result-stage{position:relative;display:grid;place-items:center;width:112px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background-color:#e9e4d9;background-position:center;background-size:contain;background-repeat:no-repeat;color:var(--muted)}.order-result-stage img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:bottom center;transform-origin:50% 100%}.order-result-personalization{position:absolute;right:5px;bottom:5px;left:5px;z-index:2;padding:3px 5px;overflow-wrap:anywhere;border:1px solid rgba(255,255,255,.58);border-radius:999px;color:#fff;background:#181714c7;text-align:center;font-family:Georgia,Times New Roman,serif;font-size:7px;font-style:italic;font-weight:700;line-height:1.15}.order-result-thumbnail figcaption{color:var(--muted);text-align:center;font-size:11px;font-weight:700}.order-envelope-head{display:flex;align-items:center;gap:10px;font-size:14px}.order-envelope-head strong{flex:1;min-width:0}.order-envelope-head b{color:var(--teal-dark)}@media(max-width:560px){.order-envelope-body{grid-template-columns:88px minmax(0,1fr)}.order-result-stage{width:88px}}.bookings-console{padding:0;overflow:hidden}.booking-queue{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;height:100%}.admin-page:has(.booking-queue){height:max(420px,calc(100dvh - 65px));min-height:0;overflow:hidden}.admin-page:has(.booking-queue)>.admin-shell{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;padding:14px 16px;height:100%}.admin-shell:has(.booking-queue)>.bookings-console{min-height:0}@media(max-width:720px){.admin-page:has(.booking-queue){height:max(420px,calc(100dvh - 53px))}}.booking-queue-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:13px 14px;background:var(--surface)}.booking-queue-toolbar .secondary-action{padding:8px 12px;font-size:12px}.booking-view-switch{display:flex;border:1px solid var(--line);border-radius:999px;padding:3px;background:#fff}.booking-view-switch button{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:999px;padding:7px 13px;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.booking-view-switch button.active{background:var(--teal);color:#fff}.booking-calendar-nav{display:flex;align-items:center;gap:8px}.booking-calendar-nav>button:not(.secondary-action){display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--teal-dark)}.booking-calendar-nav strong{min-width:168px;color:var(--ink);font-size:14px;text-align:center}.calendar-jump{display:inline-flex;gap:6px}.calendar-jump select{border:1px solid var(--line);border-radius:8px;padding:7px 8px;background:#fff;color:var(--ink);font-size:13px;font-weight:800}.calendar-jump select:hover{border-color:var(--teal)}.booking-search{display:flex;flex:1 1 300px;align-items:center;gap:7px}.booking-search-field{display:flex;flex:1;min-width:0;align-items:center;gap:7px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fff;color:var(--muted);cursor:text}.booking-search-field:focus-within{border-color:var(--teal)}.booking-search-field input{flex:1;min-width:0;border:0;padding:0;background:transparent;color:var(--ink);font-size:13px}.booking-search-field input:focus{outline:none}.booking-queue-head{position:relative}.school-search-results{position:absolute;top:100%;left:0;right:0;z-index:40;display:grid;grid-template-rows:auto minmax(0,1fr);max-height:min(72vh,calc(100dvh - 190px));border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;background:#fff;box-shadow:0 18px 40px #11201c33;overflow:hidden}.school-search-results-header{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:8px 14px;background:var(--surface);color:var(--muted);font-size:12px}.school-search-results-header>span{flex:1;min-width:0}.school-search-results-header strong{color:var(--ink)}.school-search-results-header .secondary-action{flex:none;padding:7px 11px;font-size:12px}.school-search-results-close{display:grid;flex:none;width:28px;height:28px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted)}.school-search-results-close:hover{border-color:var(--teal);color:var(--teal-dark)}.school-search-results>.booking-table-wrap{min-height:0}.appointment-search{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.appointment-search-list{min-height:0;overflow:auto;transition:opacity .14s ease}.appointment-search-list[aria-busy=true]{opacity:.45}.appointment-hit{display:grid;grid-template-columns:116px minmax(0,1fr);border-bottom:1px solid var(--line)}.appointment-hit-date,.appointment-hit-card{border:0;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.appointment-hit-date{display:grid;align-content:start;justify-items:start;gap:1px;padding:9px 6px 9px 16px}.appointment-hit-date strong{color:var(--ink);font-size:20px;font-weight:500;line-height:1.1}.appointment-hit-date small{display:flex;flex-wrap:wrap;gap:0 4px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.appointment-hit-date small span{white-space:nowrap}.appointment-hit-date:hover strong,.appointment-hit-date:hover small{color:var(--teal-dark)}.appointment-hit-card{display:grid;grid-template-columns:10px 68px minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;padding:10px 14px 10px 6px}.appointment-hit-card:hover{background:#2f6f5e12}.appointment-hit-date:focus-visible,.appointment-hit-card:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}.appointment-hit-dot{width:10px;height:10px;border-radius:999px;background:#1967d2}.appointment-hit-card.zoom-call .appointment-hit-dot{background:#174ea6}.appointment-hit-card.school-shoot .appointment-hit-dot{background:var(--teal)}.appointment-hit-card.school-shoot.needs-follow-up .appointment-hit-dot{background:#d98324}.appointment-hit-card.school-shoot.lapsed .appointment-hit-dot{background:var(--muted)}.appointment-hit-card.cancelled .appointment-hit-dot{background:#b3261e}.appointment-hit-card.archived .appointment-hit-dot{background:var(--muted)}.appointment-hit-card.archived{opacity:.72}.appointment-hit-time{color:var(--teal-dark);font-size:12px;font-weight:800}.appointment-hit-card.cancelled .booking-week-school strong{text-decoration:line-through}.appointment-hit-contact{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}@media(max-width:620px){.admin-shell .appointment-hit{grid-template-columns:70px minmax(0,1fr)}.admin-shell .appointment-hit-date{padding-left:8px}.admin-shell .appointment-hit-card{grid-template-columns:8px 60px minmax(0,1fr);gap:4px 7px;padding-right:8px}.admin-shell .appointment-hit-card .booking-week-school strong{white-space:normal;overflow-wrap:anywhere}.admin-shell .appointment-hit-card .booking-week-marks{grid-column:3}.admin-shell .appointment-hit-contact{display:none}}.booking-queue-filter{display:grid;gap:3px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.booking-queue-filter select{border:1px solid var(--line);border-radius:8px;padding:7px 9px;background:#fff;color:var(--ink);font-size:12px}.booking-queue-note{align-content:start;padding:18px}.booking-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;border-top:1px solid var(--line);padding:11px 14px}.booking-pagination button{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:8px;padding:7px 11px;background:#fff;color:var(--teal-dark);font-size:12px;font-weight:800}.booking-pagination button:disabled{background:var(--paper);color:var(--muted)}.booking-pagination span{color:var(--muted);font-size:12px}.school-list-more{justify-content:space-between}.school-list-end{height:1px}.booking-appointment-card,.booking-week-row{border:1px solid rgba(25,103,210,.25);border-left:3px solid #1967d2;border-radius:7px;background:#f2f7fe;color:var(--ink);text-align:left;text-decoration:none}button.booking-appointment-card,button.booking-week-row{width:100%;min-width:0;font:inherit;cursor:pointer}button.booking-appointment-card:focus-visible,button.booking-week-row:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.booking-appointment-card:hover,.booking-week-row:hover{border-color:var(--teal)}.booking-appointment-card.completed,.booking-week-row.completed{border-color:#13733340;border-left-color:#137333;background:#f1f8f3}.booking-appointment-card.cancelled,.booking-week-row.cancelled{border-color:#b3261e40;border-left-color:#b3261e;background:#fdf2f1}.booking-appointment-card.archived,.booking-week-row.archived{border-color:var(--line);border-left-color:var(--muted);border-left-style:dashed;background:#f4f3f1;opacity:.72}.booking-appointment-card.archived:hover,.booking-week-row.archived:hover{opacity:1}.booking-month{min-width:0;overflow:auto}.booking-weekday-row,.booking-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:560px}.booking-weekday-row{position:sticky;top:0;z-index:1;border-bottom:1px solid var(--line);background:var(--surface)}.booking-weekday-row span{padding:8px 6px;color:var(--muted);font-size:11px;font-weight:800;text-align:center;text-transform:uppercase}.booking-month-grid{grid-auto-rows:minmax(104px,auto)}.booking-month-day{position:relative;display:grid;align-content:start;gap:5px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px;background:#fff}.booking-month-book{position:absolute;inset:0;z-index:0;display:grid;align-content:start;justify-items:end;border:0;padding:6px;background:transparent;opacity:0}.booking-month-day>header,.booking-month-day>.booking-holiday,.booking-month-day>.booking-appointment-card,.booking-month-day>.school-shoot-row{position:relative;z-index:1;min-width:0}.booking-month-day>header{pointer-events:none}.booking-month-day .callback-form{padding-top:8px}.booking-month-day .callback-form label{min-width:0;max-width:100%}.booking-month-day .callback-form-comments{flex-basis:100%}.booking-month-day .callback-form input{width:100%;min-width:0}.booking-month-day:hover .booking-month-book,.booking-month-book:focus-visible{opacity:1}.booking-month-book:focus-visible{outline:2px solid var(--teal);outline-offset:-3px}.booking-month-book span{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 9px;background:var(--teal);color:#fff;font-size:10.5px;font-weight:800}.booking-month-day:nth-child(7n){border-right:0}.booking-month-day.outside{background:#fafafa}.booking-month-day.outside header{opacity:.45}.booking-month-day header strong{color:var(--ink);font-size:13px}.booking-month-day.today header strong{display:grid;width:23px;height:23px;place-items:center;border-radius:999px;background:var(--teal);color:#fff;font-size:12px}.booking-month-day.holiday,.booking-week-day.holiday{background:#fdf7ee}.booking-month-day.holiday.outside{background:#f7f0e6}.booking-holiday{display:block;overflow:hidden;border-radius:4px;padding:3px 7px;background:#fff4e5;color:#8a4b08;font-size:10px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.booking-holiday.no-students{background:#eef0f4;color:#4a5568}.booking-appointment-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px;padding:5px 7px}.booking-appointment-card.cancelled span{text-decoration:line-through}.booking-appointment-card>strong{grid-column:1}.booking-appointment-card>:is(span,small){grid-column:1 / -1}.booking-appointment-card>.booking-detail-mark{grid-column:2;grid-row:1;justify-self:end;font-size:9.5px;font-weight:900}.booking-appointment-card>.contract-flag{grid-column:1 / -1;justify-self:start;margin-left:0;font-size:9.5px;font-weight:900;line-height:1.5}.booking-appointment-card strong{color:var(--teal-dark);font-size:11px}.booking-appointment-card span{overflow-wrap:anywhere;font-size:12px;font-weight:700;line-height:1.25}.booking-appointment-card small{color:var(--muted);font-size:10px}.booking-week{min-width:0;overflow:auto}.booking-week-day{display:grid;grid-template-columns:66px minmax(0,1fr);gap:10px;border-bottom:1px solid var(--line);padding:9px 13px}.booking-week-day.today{background:#2f6f5e0d}.booking-week-day>header{display:flex;align-items:baseline;gap:6px;padding-top:7px}.booking-week-day>header span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.booking-week-day>header strong{color:var(--ink);font-size:15px}.booking-week-day.today>header strong{color:var(--teal)}.school-week-book-day{display:flex;align-items:baseline;gap:6px;border:0;padding:0;background:none;font:inherit;cursor:pointer}.school-week-book-empty{border:0;padding:7px 0;background:none;color:var(--muted);font:inherit;font-size:12px;text-align:left;cursor:pointer}.school-week-book-day:hover,.school-week-book-empty:hover{color:var(--teal-dark)}.school-week-book-day:focus-visible,.school-week-book-empty:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.booking-week-appointments{display:grid;align-content:start;gap:6px}.booking-week-appointments>p{margin:7px 0;color:var(--muted);font-size:12px}.booking-week-row{display:grid;grid-template-columns:72px minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;gap:11px;padding:8px 11px}.booking-week-row>strong{color:var(--teal-dark);font-size:12px}.booking-week-school{display:grid;min-width:0}.booking-week-school strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.booking-week-row.cancelled .booking-week-school strong{text-decoration:line-through}.booking-week-school small{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.booking-week-row>small{color:var(--muted);font-size:11px}.booking-table-wrap{overflow:auto}.booking-table-wrap>table{transition:opacity .14s ease}.booking-table-wrap[aria-busy=true]>table{opacity:.45}.booking-table{width:100%;border-collapse:collapse;font-size:13px}.booking-table th,.booking-table td{padding:9px 14px;border-bottom:1px solid var(--line);line-height:1.4;text-align:left;vertical-align:top}.booking-table th{position:sticky;top:0;padding-block:7px;background:var(--surface);color:var(--muted);font-size:11px;text-transform:uppercase}.booking-table tbody tr{cursor:pointer}.booking-table tbody tr:hover{background:#2f6f5e12}.booking-pid-link{color:var(--teal-dark);font-weight:800;text-decoration:none}.booking-pid-link:hover{text-decoration:underline}.booking-table small{display:block;margin-top:1px;color:var(--muted);line-height:1.35}.booking-table .secondary-action{padding:6px 11px;font-size:12px}.booking-admin-status{display:inline-block;border-radius:999px;padding:4px 8px;background:#e8f0fe;color:#1967d2;font-size:11px;font-weight:800;text-transform:capitalize}.booking-zoom-flag{display:inline-block;border-radius:999px;padding:4px 9px;background:#e8f0fe;color:#174ea6;font-size:11px;font-weight:700}td>.booking-zoom-flag{display:block;margin-top:5px;width:fit-content}.booking-admin-status.completed{background:#e6f4ea;color:#137333}.booking-admin-status.cancelled{background:#fce8e6;color:#b3261e}.booking-admin-status.merged_into{background:#eeece8;color:var(--muted)}.booking-admin-status.booked{background:#fff4e5;color:#8a4b08}.booking-admin-status.detail_submitted{background:#e8f0fe;color:#1967d2}.booking-admin-status.file_uploaded{background:#f1e8fd;color:#6d2bb8}.booking-admin-status.detail_confirmed{background:#dff3ee;color:#0b6e5f}.booking-status-field{display:grid;align-content:start;justify-items:start;gap:6px}.booking-status-field>span:first-child{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.booking-status-field .secondary-action{display:inline-flex;align-items:center;gap:5px;padding:6px 11px;font-size:12px}.booking-time-field strong{font-size:13.5px;line-height:1.45}.returning-school-list{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0}.returning-school-summary{display:flex;flex:1 1 300px;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:10px;margin:0;padding:6px 14px;color:var(--muted);font-size:12px}.returning-school-summary>span{flex:0 1 auto;min-width:0;text-align:right}.returning-school-summary strong{color:var(--ink)}.returning-school-summary .secondary-action{flex:none;padding:7px 11px;font-size:12px}.school-archived-toggle{gap:6px}.school-archived-toggle[aria-pressed=true]{border-color:var(--teal-dark);background:#2f6f5e1f}.school-list-header{display:flex;flex-wrap:wrap;align-items:stretch;gap:0 10px;border-bottom:1px solid var(--line)}.school-list-tabs{display:flex;flex:0 1 auto;flex-wrap:wrap;align-items:stretch;gap:2px;padding:0 8px}.school-list-tabs button{display:inline-flex;align-items:center;gap:7px;border:0;border-bottom:2px solid transparent;padding:10px 10px 8px;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.school-list-tabs button:hover{color:var(--teal-dark)}.school-list-tabs button.active{border-bottom-color:var(--teal);color:var(--ink)}.school-list-count{border-radius:999px;padding:1px 7px;background:#2f6f5e1a;color:var(--teal-dark);font-size:11px;font-weight:900}.school-list-tabs button.active .school-list-count{background:var(--teal);color:#fff}.school-status-tabs{flex:1 1 100%;border-top:1px dashed var(--line)}.school-status-tabs-label{align-self:center;padding:0 4px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.school-status-next{flex:0 1 auto;align-self:center;min-width:0;margin-left:auto;padding:0 6px;color:var(--muted);font-size:11px;font-style:italic}.school-season-status{display:inline-block;border-radius:999px;padding:4px 8px;background:#2f6f5e1a;color:var(--teal-dark);font-size:11px;font-weight:800;white-space:nowrap}.school-season-status.needs-follow-up,.booking-admin-status.needs-follow-up{background:#fff4e5;color:#8a4b08}.booking-admin-status.returned-this-season{background:#e6f4ea;color:#137333}.booking-admin-status.new-this-season{background:#e8f0fe;color:#1967d2}.school-season-status.lapsed,.booking-admin-status.lapsed{background:#eeece8;color:var(--muted)}.school-season-status.do-not-call,.booking-admin-status.do-not-call{background:#fce8e6;color:#c5221f}.school-season-status.do-not-call{display:inline-flex;align-items:center;gap:4px}.booking-admin-status.note{background:#eeece8;color:var(--muted)}.callback-due{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 9px;background:#2f6f5e1a;color:var(--teal-dark);font-size:11px;font-weight:800;white-space:nowrap}.callback-due.today{background:#fff4e5;color:#8a4b08}.callback-due.overdue{background:#fce8e6;color:#c5221f}.booking-table tr.school-row-due>td:first-child{box-shadow:inset 3px 0 0 var(--teal)}.booking-table tr.school-row-due.today>td{background:#fffaf3}.booking-table tr.school-row-due.today>td:first-child{box-shadow:inset 3px 0 #d98324}.booking-table tr.school-row-due.overdue>td{background:#fdf3f2}.booking-table tr.school-row-due.overdue>td:first-child{box-shadow:inset 3px 0 #c5221f}.booking-table tbody tr.school-row-due.today:hover>td{background:#fff3e2}.booking-table tbody tr.school-row-due.overdue:hover>td{background:#fbe9e7}.booking-table tr.school-row-detail>td:first-child{box-shadow:inset 3px 0 #e8a33d}.season-flag{display:inline-block;margin-left:7px;border-radius:999px;padding:1px 7px;background:#e8f0fe;color:#1967d2;font-size:10px;font-weight:900}.zoom-flag{display:inline-flex;align-items:center;gap:3px;margin-left:7px;border-radius:999px;padding:1px 7px;background:#eef3fc;color:#174ea6;font-size:10px;font-weight:900;white-space:nowrap}.contract-flag{display:inline-flex;align-items:center;gap:3px;margin-left:7px;border:1px solid rgba(19,115,51,.4);border-radius:999px;padding:0 6px;background:#fff;color:#137333;font-size:10px;font-weight:900;line-height:1.5;white-space:nowrap;vertical-align:middle}.contract-flag.sent{border-color:#137333;background:#137333;color:#fff}.booking-status-flag{display:inline-block;margin-left:7px;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:900;white-space:nowrap;background:#fff4e5;color:#8a4b08}.booking-status-flag.detail_submitted{background:#e8f0fe;color:#1967d2}.booking-status-flag.file_uploaded{background:#f1e8fd;color:#6d2bb8}.booking-status-flag.detail_confirmed{background:#dff3ee;color:#0b6e5f}.booking-status-flag.completed{background:#e6f4ea;color:#137333}.booking-status-flag.cancelled{background:#fce8e6;color:#b3261e}.booking-status-flag.merged_into{background:#eeece8;color:var(--muted)}.booking-detail-mark{display:inline-flex;align-items:center;gap:3px;border-radius:999px;padding:1px 6px;background:#fff;color:#8a4b08;font-size:10px;font-weight:900;line-height:1.5;white-space:nowrap}.booking-detail-mark b{font-weight:inherit}.booking-detail-mark svg{flex:none}.booking-detail-mark.review{color:#6d2bb8}.booking-detail-mark.done{color:#0b6e5f}.booking-week-marks{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-width:0}.booking-week-marks>.contract-flag{margin-left:0}.booking-unsettled-count{color:#8a4b08}.booking-appointment-card.zoom-call,.booking-week-row.zoom-call{border-color:#174ea64d;border-left-color:#174ea6;background:#eef3fc}.booking-appointment-card.school-shoot,.booking-week-row.school-shoot{border-color:#2f6f5e40;border-left-color:var(--teal);background:#c8ebd0}.booking-appointment-card.school-shoot.needs-follow-up,.booking-week-row.school-shoot.needs-follow-up{border-color:#8a4b084d;border-left-color:#d98324;background:#ffe8c2}.booking-appointment-card.school-shoot.needs-follow-up>strong{color:#8a4b08}.booking-appointment-card.school-shoot.lapsed,.booking-week-row.school-shoot.lapsed{border-color:var(--line);border-left-color:var(--muted);background:#eeece8}.school-shoot-row{display:grid;gap:7px}.school-sort-header{display:inline-flex;align-items:center;gap:5px;border:0;padding:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.school-sort-header:hover,.school-sort-header.active{color:var(--teal-dark)}.school-sort-idle{opacity:.35}.school-sort-header:hover .school-sort-idle{opacity:.7}.booking-table tbody tr[data-school-id]{cursor:default}.booking-table td.school-actions-cell{width:1%;vertical-align:middle}.school-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px;width:360px}.school-actions .secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:4px;width:auto;min-height:0;padding:4px 7px;font-size:11px;line-height:1.3;white-space:nowrap;text-decoration:none}.school-actions .secondary-action:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.school-remind-sent{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:11px;line-height:1.3;font-weight:700;color:#137333;white-space:nowrap}.booking-appointment-card.done,.booking-week-row.done{border-color:#13733340;border-left-color:#137333;background:#f1f8f3}.booking-appointment-card.converted,.booking-week-row.converted{border-color:#7940c740;border-left-color:#7940c7;background:#f7f2fd}.booking-admin-status.done{background:#e6f4ea;color:#137333}.booking-admin-status.converted{background:#f1e8fd;color:#6d2bb8}.callback-row{grid-template-columns:28px minmax(0,1fr) auto auto}.callback-row>strong{display:grid;place-items:center}.callback-actions{display:inline-flex;gap:6px}.callback-actions .secondary-action{padding:6px 10px;font-size:12px}.callback-form-row>td{background:var(--paper)}.callback-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.callback-form label{display:grid;gap:4px}.callback-form label span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.callback-form input{border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fff;color:var(--ink);font-size:13px}.callback-form-comments{flex:1 1 260px}.callback-form-comments input{width:100%}.callback-form .inline-note{flex-basis:100%;margin:0}.callback-form .primary-action,.callback-form>.secondary-action{flex:none;width:auto;min-height:0;padding:8px 14px;border-radius:999px;font-size:13px;line-height:1.3}.callback-form .primary-action{border:1px solid transparent}.school-booking-form{row-gap:10px}.school-booking-type,.school-booking-slots{display:flex;flex-wrap:wrap;gap:6px}.school-booking-type,.school-booking-slots{flex-basis:100%}.school-booking-times{display:grid;flex-basis:100%;gap:8px;margin:0;border:1px solid var(--line);border-radius:10px;padding:10px 13px 12px}.school-booking-times legend{padding:0 5px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.school-booking-times .inline-note{margin:0}.school-booking-type button,.school-booking-slots button{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;padding:7px 12px;background:#fff;color:var(--ink);font-size:12.5px;font-weight:700;cursor:pointer}.school-booking-type button.active,.school-booking-slots button.active{border-color:var(--teal);background:var(--teal);color:#fff}.school-booking-slots button.warned{border-style:dashed;border-color:#c48a1ab3;background:#d69e2e1a;color:#8a6212}.school-booking-slots button.warned.active{border-style:solid;border-color:#b4801a;background:#b4801a;color:#fff}.school-booking-warning,.school-booking-warning-confirm p{display:flex;align-items:flex-start;gap:6px;margin:0;color:#8a6212;font-size:11.5px;font-weight:600;line-height:1.45}.school-booking-warning svg,.school-booking-warning-confirm svg{flex-shrink:0;margin-top:2px}.school-booking-warning-confirm{display:grid;gap:9px;flex-basis:100%;border:1px solid rgba(196,138,26,.45);border-radius:9px;padding:11px;background:#d69e2e14}.school-booking-carried{flex-basis:100%;margin:0;color:var(--muted);font-size:11.5px}.school-booking-room{display:grid;flex-basis:100%;gap:4px}.school-booking-required:after{content:"*" / "";margin-left:3px;color:var(--coral);font-weight:800}.school-booking-failure{flex-basis:100%;margin:0}.school-booking-hint{color:var(--muted);font-size:11px;font-weight:500;text-transform:none}.school-booking-carried .text-button{padding:0;font-size:inherit;text-decoration:underline;cursor:pointer}.school-pick{display:grid;flex-basis:100%;gap:6px}.school-pick-matches{display:grid;gap:4px;border:1px solid var(--line);border-radius:9px;padding:8px;background:var(--paper)}.school-pick-matches>span,.school-pick-matches>small{color:var(--muted);font-size:11px}.school-pick-matches>span{font-weight:800;text-transform:uppercase}.school-pick-matches button{display:grid;gap:1px;border:1px solid transparent;border-radius:7px;padding:6px 9px;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.school-pick-matches button:hover,.school-pick-matches button:focus-visible{border-color:var(--teal);background:#2f6f5e0f}.school-pick-matches button strong{font-size:12.5px}.school-pick-matches button small{color:var(--muted);font-size:11px}.school-pick-note{margin:0}.school-booking-set-days{display:grid;flex-basis:100%;gap:7px;border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:var(--paper)}.school-booking-set-days>span{color:var(--muted);font-size:11.5px;line-height:1.45}.school-booking-set-days ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.school-booking-set-days li{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:4px 5px 4px 11px;background:#fff;font-size:12px;font-weight:700}.school-booking-set-days li button{display:grid;width:20px;height:20px;place-items:center;border:0;border-radius:999px;background:#0000000d;color:var(--muted);cursor:pointer}.school-booking-set-days li button:hover{background:#b043351a;color:var(--coral)}.school-booking-set-days li.held{border-style:dashed;padding-right:11px;background:var(--paper);color:var(--muted)}.school-booking-set-days li.held small{font-size:10.5px;font-weight:600}.booking-day-calendar{display:grid;flex-basis:100%;gap:6px;min-width:0}.booking-day-calendar-bar{display:flex;align-items:center;justify-content:space-between;gap:8px}.booking-day-calendar-bar strong{font-size:14px}.booking-day-calendar-bar button{display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--line);border-radius:999px;padding:0;background:#fff;color:var(--ink);cursor:pointer}.booking-day-weekdays,.booking-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.booking-day-weekdays span{color:var(--muted);font-size:10.5px;font-weight:800;text-align:center;text-transform:uppercase}.booking-day-grid>*{display:grid;align-content:start;gap:2px;min-width:0;min-height:84px;border:1px solid var(--line);border-radius:8px;padding:5px 6px;background:#fff;color:var(--ink);font:inherit;text-align:left}.booking-day-grid button{cursor:pointer}.booking-day-grid button:hover:not(:disabled){border-color:var(--teal)}.booking-day-head{display:flex;align-items:center;justify-content:space-between;gap:4px}.booking-day-head strong{font-size:12.5px;line-height:1.3}.booking-day-head b{border-radius:999px;padding:1px 6px;background:#2f6f5e1a;color:var(--teal-dark);font-size:10.5px;font-weight:800;font-variant-numeric:tabular-nums}.booking-day-school,.booking-day-grid .booking-holiday{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-day-school{font-size:11px;font-weight:600;line-height:1.35}.booking-day-school.own{color:var(--teal-dark);font-weight:800}.booking-day-grid .booking-holiday{padding:1px 5px;font-size:9.5px}.booking-day-more{color:var(--muted);font-size:10.5px;font-weight:700}.booking-day-grid small{display:inline-flex;align-items:center;gap:3px;color:var(--muted);font-size:10.5px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.booking-day-grid small svg{flex-shrink:0}.booking-day-grid .outside{border-color:transparent;background:transparent;color:var(--muted);opacity:.4}.booking-day-grid button:disabled{border-color:transparent;background:var(--paper);color:var(--muted);cursor:default}.booking-day-grid .holiday{background:#fdf7ee}.booking-day-grid .today .booking-day-head strong{color:var(--teal);text-decoration:underline 2px;text-underline-offset:2px}.booking-day-grid .full .booking-day-head b{background:#b9503c1f;color:var(--coral)}.booking-day-grid .warned{border-style:dashed;border-color:#c48a1ab3;background:#d69e2e1a}.booking-day-grid .picked{border-color:var(--teal);background:#2f6f5e1f}.booking-day-grid .picked.warned{border-style:solid;border-color:#b4801a;background:#d69e2e2e}.booking-day-grid .held{border-style:dashed;border-color:var(--line);background:var(--paper)}.booking-day-grid [aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--teal)}.booking-day-legend{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.booking-day-legend svg{vertical-align:-1px}.booking-day-detail{display:grid;gap:6px;border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:var(--paper)}.booking-day-detail p{margin:0;font-size:12.5px}.booking-day-detail>.booking-holiday{justify-self:start}.booking-day-detail ul{display:grid;gap:4px;margin:0;padding:0;list-style:none}.booking-day-detail li{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;font-size:12.5px}.booking-day-detail li>span{min-width:64px;color:var(--muted);font-variant-numeric:tabular-nums}.booking-day-detail li small{color:var(--muted);font-size:11.5px}.booking-day-detail li em{border-radius:999px;padding:1px 7px;background:#2f6f5e1f;color:var(--teal-dark);font-size:10.5px;font-style:normal;font-weight:800}.school-day-booking-modal[open]:has(.booking-day-calendar){width:min(980px,calc(100vw - 32px))}@media(max-width:620px){.booking-day-grid>*{min-height:52px;padding:3px}.booking-day-head{flex-direction:column;align-items:flex-start;gap:1px}.booking-day-head b{padding:0 3px;font-size:9.5px}.booking-day-school,.booking-day-more,.booking-day-grid .booking-holiday{display:none}.booking-day-grid small{gap:2px;font-size:9.5px}.booking-day-grid small svg{width:8px;height:8px}}.school-booking-form .booking-notify-school{display:inline-flex;margin-bottom:8px}.school-booking-done{display:grid;gap:8px}.school-booking-done p{display:flex;align-items:center;gap:6px;margin:0;font-size:13px}.school-day-booking-modal:not([open]){display:none}.school-day-booking-modal[open]{display:grid;gap:14px;width:min(560px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:12px;padding:18px;background:#fff;color:var(--ink);box-shadow:0 24px 70px #15201c59}.school-day-booking-modal::backdrop{background:#121b189e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.school-day-booking-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.school-day-booking-heading h3{margin:0;font-size:15px}.school-day-booking-heading p{margin:3px 0 0;color:var(--muted);font-size:12px;font-weight:600}.school-duplicate-flag{display:inline-flex;align-items:center;gap:4px;margin-left:7px;border:0;border-radius:999px;padding:2px 8px;background:#fff4e5;color:#8a4b08;font-size:10px;font-weight:900;cursor:pointer}.school-duplicate-flag:hover{background:#ffe9cc}.school-callback-flag{display:inline-flex;align-items:center;gap:4px;margin-left:7px;border-radius:999px;padding:2px 8px;background:#2f6f5e1a;color:var(--teal-dark);font-size:10px;font-weight:900;white-space:nowrap}.school-callback-flag.today{background:#fff4e5;color:#8a4b08}.school-callback-flag.overdue{background:#fce8e6;color:#c5221f}.school-duplicates-row>td{background:var(--paper)}.school-duplicates{display:grid;gap:8px}.school-duplicates>.inline-note{margin:0}.school-duplicate{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:#fff}.school-duplicate-school{display:grid;flex:1 1 220px;gap:2px;min-width:0}.school-duplicate-school small,.school-duplicate-facts small{color:var(--muted);font-size:11.5px}.school-duplicate-facts{display:grid;flex:0 1 auto;gap:4px;justify-items:start}.school-duplicate-reasons{display:flex;flex:0 1 200px;flex-wrap:wrap;gap:4px}.school-duplicate-reason{border-radius:999px;padding:2px 8px;background:#2f6f5e1a;color:var(--teal-dark);font-size:10px;font-weight:800;white-space:nowrap}.school-duplicate .callback-actions{margin-left:auto}.school-duplicate .primary-action{width:auto;min-height:0;padding:6px 10px;font-size:12px}.school-merge-confirm{display:flex;flex-basis:100%;flex-wrap:wrap;align-items:center;gap:6px;border-top:1px dashed var(--line);padding-top:8px}.school-merge-confirm>small{flex:none;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.school-merge-confirm .primary-action,.school-merge-confirm .secondary-action{max-width:340px;padding:6px 10px;font-size:12px;white-space:normal;text-align:left}.school-mark-booked-dialog[open]{width:min(620px,calc(100vw - 32px))}.school-mark-booked-note{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.school-mark-booked-dialog .school-duplicates>.school-mark-booked-note{padding-top:2px}.school-history-row>td{background:var(--paper)}.school-history{display:grid;gap:10px}.school-history>.inline-note{margin:0}.school-history .callback-form{border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:#fff}.school-history .callback-form .callback-form-note{color:var(--muted);font-size:11.5px}.school-dnc-banner{display:flex;align-items:center;gap:10px;border:1px solid rgba(197,34,31,.25);border-left:3px solid #c5221f;border-radius:9px;padding:10px 12px;background:#fce8e6;color:#7a1713}.school-dnc-banner>span{display:grid;flex:1 1 auto;gap:2px;min-width:0;font-size:12.5px}.school-dnc-banner small{color:#a03a35;font-size:11px}.school-dnc-banner .secondary-action{flex:none;padding:6px 10px;font-size:12px}.school-history-entries{display:grid;gap:7px}.school-history-entry{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;padding:8px 12px;background:#fff}.school-history-entry>.booking-admin-status{flex:none}.school-history-body{display:grid;flex:1 1 auto;gap:2px;min-width:0;font-size:13px}.school-history-body small{color:var(--muted);font-size:11px}.school-history-edit{display:flex;align-items:center;gap:6px}.school-history-edit input{flex:1 1 auto;border:1px solid var(--line);border-radius:8px;padding:6px 9px;background:#fff;color:var(--ink);font-size:13px}.school-history-edit .secondary-action{padding:5px 9px;font-size:11.5px;white-space:nowrap}.school-history-entry .callback-actions{flex:none;flex-wrap:wrap;justify-content:flex-end}.school-history-entry .callback-actions .secondary-action{padding:5px 9px;font-size:11.5px;white-space:nowrap}.school-history-delete{color:#c5221f}.booking-empty-detail{display:grid;place-content:center;justify-items:center;gap:10px;padding:40px;color:var(--muted);text-align:center}.booking-detail-page{overflow:visible}.booking-detail-header{position:sticky;top:var(--booking-header-top, 64px);z-index:10;max-height:50dvh;margin:-22px -22px 0;overflow-y:auto;border-bottom:1px solid var(--line);background:var(--paper);box-shadow:0 6px 14px #18171414}.booking-detail-summary{padding:8px 14px}.booking-detail-header .booking-editor-heading{flex-wrap:wrap;gap:10px}.booking-detail-header .booking-editor-heading-actions{flex:0 1 auto;flex-wrap:wrap;gap:6px}.booking-detail-header :is(.primary-action,.secondary-action){min-height:34px;gap:5px;padding:6px 10px;font-size:12px}.booking-detail-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 14px;background:var(--surface)}.booking-detail-summary .booking-detail-toolbar{padding:0;background:transparent}.booking-detail-back{display:inline-flex;flex-shrink:0;align-items:center;gap:6px;min-height:34px;color:var(--teal-dark);font-size:12px;font-weight:800;text-decoration:none}.booking-detail-back:hover{text-decoration:underline}.booking-detail-toolbar>button{flex-shrink:0;margin-left:auto}.booking-detail-identity{flex:1 1 auto}.booking-detail-toolbar .booking-detail-identity>span{font-size:10px}.booking-detail-toolbar .booking-detail-identity>strong{margin-top:1px;font-size:18px;line-height:1.2}.booking-detail-identity>time{display:block;margin-top:2px;color:var(--muted);font-size:12px}.booking-editor{padding:22px}.booking-editor-heading,.booking-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.booking-editor-heading span{display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.booking-editor-heading strong{display:block;margin-top:4px;color:var(--teal-dark);font-size:24px}.primary-action,.secondary-action{display:inline-flex;align-items:center;gap:7px;border:0;border-radius:999px;padding:9px 14px;background:var(--teal);color:#fff;font-weight:800}.secondary-action{border:1px solid var(--line);background:var(--surface);color:var(--teal-dark)}.booking-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:22px 0}.booking-editor-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:13px;margin:22px 0}.booking-editor-fields>label{align-self:start}.booking-files-admin h3{grid-column:1 / -1}.booking-files-admin>.inline-note{grid-column:1 / -1;margin:0}.booking-editor-heading .primary-action{flex:none;width:auto}.booking-notes textarea{max-width:720px}.booking-editor label,.booking-config label,.booking-response-list label{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:700}.booking-editor input,.booking-editor select,.booking-editor textarea,.booking-config input,.booking-config select,.booking-config textarea,.form-builder input,.form-builder select,.form-builder textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px 10px;background:#fff;color:var(--ink)}.booking-response-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:11px}.booking-response-field{min-width:0;margin:0;border:0;padding:0}.booking-response-field legend{margin-bottom:5px;color:var(--muted);font-size:12px;font-weight:700}.booking-response-scope{margin-left:7px;border-radius:999px;padding:2px 7px;background:#2f6f5e1a;color:var(--teal-dark);font-size:10.5px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.booking-response-field.choice>div{display:flex;flex-wrap:wrap;gap:8px 16px}.booking-response-field.choice label{display:flex;align-items:center;gap:5px}.booking-response-field.choice input{width:auto}.booking-notes{margin-top:20px}.booking-quiet-note{margin:12px 0 0;color:var(--muted);font-size:13px}.booking-change-requests{display:grid;gap:10px;margin:20px 0 0}.booking-change-requests h3{margin:0}.booking-change-request{display:grid;gap:7px;border:1px solid rgba(214,158,46,.45);border-radius:10px;padding:13px 15px;background:#d69e2e14}.booking-change-request>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.booking-change-request>header span{color:var(--muted);font-size:11px;font-weight:700}.booking-change-request p{display:flex;align-items:center;gap:7px;margin:0;font-size:13px}.booking-change-request .booking-change-callback{font-weight:800}.booking-change-request .booking-change-reason{display:block;max-width:70ch;color:var(--muted);line-height:1.5;white-space:pre-wrap}.booking-change-request>button{justify-self:start}.booking-change-error{color:var(--coral)}.booking-meeting-link{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin:0 0 6px}.booking-meeting-link label{flex:1 1 340px;min-width:0}.booking-meeting-link .secondary-action{flex:none;height:38px}.booking-meeting-link p{flex-basis:100%;margin:0}.booking-order-forms{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin:0 0 6px}.booking-order-forms label{flex:1 1 340px;min-width:0}.booking-order-forms .secondary-action{flex:none;height:38px}.booking-order-forms-link{display:inline-flex;align-items:center;gap:4px;height:38px;color:var(--teal-dark);font-size:12.5px;font-weight:700;text-decoration:none}.booking-order-forms-link:hover{text-decoration:underline}.booking-order-forms p{flex-basis:100%;margin:0}.booking-order-forms p small{display:block;margin-top:2px;color:var(--muted);font-weight:600}.booking-admin-status.parcel-label_printed{background:#eeece8;color:var(--muted)}.booking-admin-status.parcel-shipped{background:#e8f0fe;color:#1967d2}.booking-admin-status.parcel-in_transit{background:#fff4e5;color:#8a4b08}.booking-admin-status.parcel-delivered{background:#e6f4ea;color:#137333}.booking-admin-status.parcel-not_found{background:#fce8e6;color:#b3261e}.booking-sent-back-note{max-width:46ch;color:var(--coral);font-size:11px;font-weight:700;line-height:1.4}.booking-notify-school{display:inline-flex;align-items:center;gap:6px;margin-right:4px;color:var(--muted);font-size:12.5px;font-weight:700}.booking-notify-school input{width:auto}.booking-editor-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:14px 0 22px}.danger-action{border:1px solid #f5b7b1;border-radius:999px;padding:9px 14px;background:#fce8e6;color:#b3261e;font-weight:800}.danger-action:disabled{opacity:.45}.booking-settings-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line)}.booking-settings-tabs button{display:inline-flex;align-items:center;gap:7px;margin-bottom:-1px;border:0;border-bottom:3px solid transparent;padding:10px 14px 11px;color:var(--muted);background:transparent;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.booking-settings-tabs button:hover{color:var(--ink)}.booking-settings-tabs button.active{border-bottom-color:var(--teal);color:var(--teal-dark)}.booking-settings-tabs .tab-dirty-dot{width:7px;height:7px;border-radius:999px;background:var(--coral)}.booking-config{display:grid;gap:20px;padding:22px}.booking-config>section{border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--surface)}.booking-section-heading h2{margin:0}.booking-section-heading p{margin:4px 0 0;color:var(--muted)}.zone-range-builder{margin:20px 0;border:1px solid var(--line);border-radius:10px;padding:15px}.zone-range-builder h3{margin:0}.zone-range-list{display:grid;gap:8px;margin-top:14px}.zone-range-row{display:grid;grid-template-columns:110px 1fr auto 1fr 38px;align-items:center;gap:8px}.zone-range-row input,.zone-range-row select{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px 10px;background:#fff}.zone-range-row>button{height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--coral)}.capacity-override-list{display:grid;gap:8px;margin-top:14px}.capacity-override-row{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1.3fr 38px;align-items:end;gap:8px}.capacity-override-row label{display:grid;gap:3px}.capacity-override-row label span{color:var(--muted);font-size:10px;font-weight:800}.capacity-override-row input{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px 10px;background:#fff}.capacity-override-row>button{height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--coral)}.booking-description{margin-top:12px}.booking-description textarea{min-height:82px}.picture-day-set-list{display:grid;gap:6px;margin-top:14px;padding:0;list-style:none}.picture-day-set-row{display:grid;gap:2px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:#fff}.picture-day-set-row strong{font-size:13px}.picture-day-set-row small{color:var(--muted);font-size:12px}.booking-preview-sets,.school-booking-sets{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 14px;border:1px solid var(--line);border-radius:10px;padding:10px 13px 12px}.booking-preview-sets legend,.school-booking-sets legend{padding:0 5px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.booking-preview-sets label,.school-booking-sets label{display:flex;align-items:center;gap:6px;font-size:13px}.booking-preview-sets input,.school-booking-sets input{width:auto;margin:0}.booking-preview-sets input:disabled+*,.school-booking-sets label.unavailable{color:var(--muted)}.booking-editor-sets{margin:0 0 22px}.booking-editor-sets small{flex-basis:100%;color:var(--muted);font-size:12px}.booking-multi-day{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;margin-top:16px;border:1px solid var(--line);border-radius:10px;padding:13px 15px}.booking-multi-day input{width:auto;margin-top:3px}.booking-multi-day strong{display:block;font-size:14px}.booking-multi-day small{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.55}.booking-set-note{min-width:0;margin:8px 0 0;border-top:1px solid var(--line);padding-top:8px}.booking-set-note p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.booking-set-note ul{display:flex;gap:6px;margin:0;padding:0 0 2px;overflow-x:auto;overscroll-behavior-x:contain;list-style:none}.booking-set-note li{flex:0 0 260px;max-width:100%}.booking-set-day{display:grid;gap:4px;height:100%;border:1px solid var(--line);border-radius:7px;padding:7px 9px;background:#fff;color:var(--ink);text-decoration:none}a.booking-set-day:hover{border-color:var(--teal);background:#eaf3ee}.booking-set-day-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 6px}.booking-set-day-label{color:var(--muted);font-size:10px;font-weight:800}.booking-set-day time{font-size:12px;font-weight:700;line-height:1.35}.booking-set-day .booking-admin-status{padding:2px 6px;font-size:10px}.booking-set-day.current{border-color:var(--teal);background:var(--teal);color:#fff}.booking-set-day.current .booking-set-day-label{color:#fff}.booking-weekdays{display:flex;flex-wrap:wrap;gap:12px;margin:0;border:1px solid var(--line);border-radius:9px;padding:12px}.booking-weekdays legend{padding:0 6px;color:var(--muted);font-size:12px;font-weight:800}.booking-weekdays label{display:flex;align-items:center;gap:4px}.booking-weekdays input{width:auto}.form-builder-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.form-builder-alert{margin:14px 0 0;border-radius:8px;padding:9px 11px;background:#fff4e5;color:#8a4b08;font-size:13px;font-weight:700}.form-builder-layout{min-width:0}.form-builder-layout.preview-open{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.65fr);gap:18px;align-items:start}.form-builder{display:grid;min-width:0;gap:9px;margin-top:18px}.form-question-card{min-width:0;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:0 1px 1px #19302b08;overflow:hidden}.form-question-card.expanded{border-color:#2f6f5e8c;box-shadow:0 6px 18px #19302b14}.form-question-card.dragging{z-index:10;opacity:.72;box-shadow:0 12px 28px #19302b2e}.form-question-card.disabled{background:#fafafa}.form-question-summary{display:grid;grid-template-columns:36px 30px minmax(0,1fr) 38px;gap:6px;align-items:center;min-height:68px;padding:8px 10px}.form-question-summary button{border:0;background:transparent}.form-question-drag{display:grid;width:34px;height:42px;place-items:center;border-radius:7px!important;color:var(--muted);cursor:grab;touch-action:none}.form-question-drag:hover,.form-question-drag:focus-visible{background:#2f6f5e17;color:var(--teal-dark)}.form-question-drag:active{cursor:grabbing}.form-question-number{display:grid;width:27px;height:27px;place-items:center;border-radius:999px;background:#2f6f5e1a;color:var(--teal-dark);font-size:12px;font-weight:900}.form-question-toggle{display:grid;min-width:0;gap:5px;padding:5px 4px;text-align:left}.form-question-title{overflow:hidden;color:var(--ink);font-size:14px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.form-question-badges{display:flex;flex-wrap:wrap;gap:5px}.form-question-badges>span{border-radius:999px;padding:2px 7px;background:#2f6f5e17;color:var(--teal-dark);font-size:10px;font-weight:800}.form-question-badges .muted-badge{background:#eee;color:var(--muted)}.form-question-condition{overflow:hidden;color:#6c4f9b;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.form-question-expand{display:grid;width:36px;height:36px;place-items:center;border-radius:8px!important;color:var(--teal-dark)}.form-question-expand:hover{background:#2f6f5e14}.form-question-editor{display:grid;gap:16px;border-top:1px solid var(--line);padding:17px 18px 18px 82px;background:#fdfdfc}.form-question-primary-settings{display:grid;grid-template-columns:minmax(0,1fr) 190px 210px;gap:12px}.form-question-scope-note{margin:-4px 0 0;color:var(--muted);font-size:12px}.form-question-contract-field,.form-option-contract-box{max-width:420px}.form-question-toggles{display:flex;flex-wrap:wrap;gap:10px 22px}.form-question-toggles label{display:flex;align-items:center;gap:6px;color:var(--ink)}.form-question-toggles input{width:auto}.form-options-editor{display:grid;gap:10px;border-radius:9px;padding:13px;background:#2f6f5e0f}.form-options-editor>div:first-child{display:flex;justify-content:space-between;gap:10px;color:var(--ink);font-size:12px}.form-options-editor>div:first-child span{color:var(--muted)}.form-option-card{display:grid;gap:8px;border:1px solid rgba(47,111,94,.18);border-radius:9px;padding:10px;background:#ffffffbf}.form-option-row{display:grid;grid-template-columns:25px minmax(0,1fr) 36px;gap:7px;align-items:center}.form-option-index{display:grid;width:23px;height:23px;place-items:center;border-radius:999px;background:#2f6f5e1a;color:var(--teal-dark);font-size:10px;font-weight:900}.form-option-row button,.form-option-add{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--teal-dark)}.form-option-row button:disabled{opacity:.35}.form-option-add{width:fit-content;padding:7px 10px;font-weight:800}.option-availability{display:grid;gap:8px;border-top:1px solid rgba(47,111,94,.13);padding-top:8px}.background-option-adder{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;border:1px dashed rgba(47,111,94,.3);border-radius:8px;padding:9px}.form-option-extras{display:grid;grid-template-columns:minmax(0,1fr) 72px;align-items:end;gap:9px}.form-option-extras img{width:72px;height:52px;border:1px solid var(--line);border-radius:7px;object-fit:cover}.option-file-upload{display:grid;gap:8px;border-top:1px solid rgba(25,103,210,.14);padding-top:8px}.option-file-upload-editor{display:grid;gap:10px;border-radius:8px;padding:10px;background:#1967d20f}.option-file-upload-editor .option-upload-required{display:flex;align-items:center;gap:6px;color:var(--ink)}.option-file-upload-editor .option-upload-required input{width:auto}.option-file-upload-editor fieldset{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0;border:1px solid var(--line);border-radius:8px;padding:10px}.option-file-upload-editor fieldset label{display:flex;align-items:center;gap:5px}.option-file-upload-editor fieldset input{width:auto}.option-upload-remove{display:inline-flex;width:fit-content;align-items:center;gap:5px;border:0;background:transparent;color:var(--coral);font-size:11px;font-weight:800}.form-condition-editor{display:grid;gap:10px;border:1px solid rgba(108,79,155,.2);border-radius:9px;padding:13px;background:#6c4f9b0d}.form-condition-editor>label{max-width:360px}.form-condition-editor>p{margin:0;color:var(--muted);font-size:12px}.form-condition-rule{display:grid;grid-template-columns:minmax(180px,1fr) 100px minmax(130px,.6fr);gap:9px}.condition-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.condition-heading strong,.condition-heading span{display:block;font-size:12px}.condition-heading span{margin-top:2px;color:var(--muted);font-weight:500}.rule-group{display:grid;gap:8px;border:1px solid rgba(108,79,155,.2);border-radius:8px;padding:9px;background:#ffffffb8}.rule-group .rule-group{margin-left:14px;background:#6c4f9b0a}.rule-group-heading{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;font-weight:800}.rule-group-heading select{width:auto;min-width:180px;padding-block:6px}.rule-group-heading button{display:inline-flex;align-items:center;gap:4px;margin-left:auto;border:0;background:transparent;color:var(--coral);font-size:11px;font-weight:800}.rule-list{display:grid;gap:7px}.condition-row{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(110px,.7fr) minmax(130px,1fr) 32px;gap:6px}.condition-row select{min-width:0;padding:7px}.condition-row button{display:grid;place-items:center;border:0;border-radius:7px;background:#b0433514;color:var(--coral)}.rule-actions{display:flex;gap:7px}.rule-actions button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:7px;padding:6px 8px;background:#fff;color:var(--teal-dark);font-size:11px;font-weight:800}.file-settings-editor{display:grid;gap:11px;border-radius:9px;padding:13px;background:#1967d20f}.file-settings-editor>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:12px}.file-settings-editor>div:first-child span{color:var(--muted)}.file-limit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.file-settings-editor fieldset{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0;border:1px solid var(--line);border-radius:8px;padding:10px}.file-settings-editor legend{padding:0 5px;color:var(--muted);font-size:11px;font-weight:800}.file-settings-editor fieldset label{display:flex;align-items:center;gap:5px}.file-settings-editor fieldset input{width:auto}.file-later-editor{display:grid;gap:8px;border-top:1px solid rgba(25,103,210,.14);padding-top:10px}.file-later-editor .file-later-toggle{display:flex;align-items:center;gap:6px;color:var(--ink);font-size:12px;font-weight:700}.file-later-editor .file-later-toggle input{width:auto}.file-later-editor textarea{width:100%;min-height:52px}.file-later-editor small{color:var(--muted);font-size:11px}.form-question-danger{display:flex;justify-content:flex-end}.form-question-danger button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--coral);font-weight:800}.form-builder-empty{display:grid;justify-items:center;gap:8px;border:1px dashed var(--line);border-radius:11px;padding:34px;color:var(--muted)}.form-builder-empty p{margin:0}.form-builder-empty button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--teal-dark);font-weight:800}.booking-form-preview{position:sticky;top:16px;display:grid;gap:13px;max-height:calc(100vh - 100px);margin-top:18px;border:1px solid rgba(47,111,94,.35);border-radius:12px;padding:17px;background:#fff;box-shadow:0 8px 24px #19302b1a;overflow:auto}.booking-form-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.booking-form-preview-heading span{display:block;color:var(--teal-dark);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.booking-form-preview-heading strong{display:block;margin-top:3px;color:var(--ink);font-size:17px}.booking-form-preview-heading button{display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:8px;background:#2f6f5e14;color:var(--teal-dark)}.booking-form-preview>p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.booking-preview-fields{display:grid;gap:14px}.booking-preview-fields fieldset{min-width:0;margin:0;border:0;padding:0}.booking-preview-fields legend{margin-bottom:6px;color:var(--ink);font-size:12px;font-weight:800}.booking-preview-fields textarea{min-height:78px}.preview-choice-field>div{display:grid;gap:7px}.preview-choice-field label{display:flex;align-items:center;gap:6px;color:var(--ink);font-size:13px;font-weight:500}.preview-choice-field input{width:auto}.form-preview-empty{margin:0;border-radius:8px;padding:20px;background:#f5f5f3;color:var(--muted);text-align:center}.booking-config-savebar{position:sticky;bottom:12px;z-index:5;display:flex;align-items:center;justify-content:flex-end;gap:16px;margin:0 10px;border:1px solid rgba(47,111,94,.25);border-radius:12px;padding:11px 13px;background:#fffffff5;box-shadow:0 8px 24px #19302b1f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.booking-config-savebar span{color:var(--muted);font-size:12px}.booking-config-savebar .inline-note{flex:1;margin:0}.reminder-switch{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0;border:1px solid var(--line);border-radius:10px;padding:13px 15px;background:#fff}.reminder-switch-state{display:grid;gap:3px}.reminder-switch-state strong{font-size:14px}.reminder-switch-state span{justify-self:start;border-radius:999px;padding:1px 9px;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.reminder-switch-state span.is-on{background:#2f6f5e24;color:var(--teal-dark)}.reminder-switch-state span.is-off{background:#0000000f;color:var(--muted)}.reminder-switch-button{display:inline-flex;align-items:center;gap:9px;min-width:132px;justify-content:center;border:1px solid var(--line);border-radius:9px;padding:10px 15px;background:#fff;color:var(--ink);font-weight:800}.reminder-switch-button.is-on{border-color:var(--teal-dark);background:var(--teal-dark);color:#fff}.reminder-switch-button:disabled{opacity:.55}.reminder-switch-track{width:30px;height:17px;border-radius:999px;background:#00000029;position:relative;transition:background .15s}.reminder-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:#fff;transition:transform .15s}.reminder-switch-button.is-on .reminder-switch-track{background:#ffffff73}.reminder-switch-button.is-on .reminder-switch-track:after{transform:translate(13px)}.reminder-offset-list{display:grid;gap:8px;margin-top:12px}.reminder-offset-row{display:grid;grid-template-columns:minmax(0,1fr) 38px;align-items:end;gap:8px}.reminder-offset-row>button{height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--coral)}.reminder-log-actions{display:flex;align-items:center;gap:8px}.reminder-log-actions .secondary-action{display:inline-flex;align-items:center;gap:6px;text-decoration:none}.reminder-run-list{display:grid;gap:8px;margin-top:16px}.reminder-run{border:1px solid var(--line);border-radius:9px;overflow:hidden}.reminder-run-summary{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;border:0;background:#fff;text-align:left}.reminder-run-when{font-weight:800}.reminder-run-outcome{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:800}.reminder-run-outcome.is-sent{background:#2f6f5e1f;color:var(--teal-dark)}.reminder-run-outcome.is-quiet{background:#0000000d;color:var(--muted)}.reminder-run-outcome.is-bad{background:#d65a461f;color:var(--coral)}.reminder-run-counts,.reminder-run-trigger{color:var(--muted);font-size:12px}.reminder-run-trigger{margin-left:auto}.reminder-run-detail{border-top:1px solid var(--line);padding:12px;background:#00000004}.reminder-message-table{width:100%;border-collapse:collapse;font-size:12px}.reminder-message-table th,.reminder-message-table td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.reminder-message-table th{color:var(--muted);font-size:11px}.booking-reminder-history{display:grid;gap:7px;border:1px solid var(--line);border-radius:9px;padding:11px}.described-choice{align-items:flex-start!important;flex-direction:column;gap:3px!important}.described-choice>span{display:flex;align-items:center;gap:6px}.described-choice small,.selected-option-description{color:var(--muted);font-size:11px;font-weight:500;line-height:1.4;white-space:pre-wrap}.selected-option-description{margin:6px 0 0;border-left:3px solid rgba(47,111,94,.3);padding:5px 8px;background:#2f6f5e0d}.booking-files-admin{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:12px;margin-top:20px}.booking-file-group{display:grid;gap:7px;border:1px solid var(--line);border-radius:9px;padding:11px}.booking-file-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.booking-file-row span{min-width:0;overflow:hidden;text-overflow:ellipsis}.booking-file-row small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.booking-file-row button{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;background:#fff;color:var(--teal-dark);font-weight:800}.booking-file-row button:disabled{opacity:.45}.booking-file-row span{flex:1}.booking-confirm-blocked{max-width:46ch;color:var(--muted);font-size:11px;font-weight:600;line-height:1.4}.booking-file-row .danger-action{border-color:#b9503c59;color:var(--coral)}.booking-files-admin .file-picker{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;border:1px dashed rgba(47,111,94,.5);border-radius:8px;padding:11px;background:#2f6f5e0d;color:var(--teal-dark);font-size:12px;font-weight:800;cursor:pointer}.booking-files-admin .file-picker:has(input:disabled){cursor:progress;opacity:.7}.booking-files-admin .file-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.booking-file-group{min-width:0}.booking-file-group>strong,.booking-file-group>p{min-width:0;overflow-wrap:anywhere}.booking-file-row{min-width:0;flex-wrap:wrap}.booking-file-row button{flex:none;white-space:nowrap}.background-choice-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}.visual-choice{align-self:stretch;border:1px solid var(--line);border-radius:8px;padding:7px;background:#fff}.visual-choice:has(input:checked){border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}.visual-choice>img{width:100%;aspect-ratio:4 / 3;border-radius:6px;object-fit:cover}.preview-option-upload{display:flex;align-items:flex-start;gap:7px;margin-top:8px;border-radius:8px;padding:9px;background:#1967d212;color:var(--ink);font-size:12px;font-weight:700}.preview-option-upload small{display:block;margin-top:2px;color:var(--muted);font-size:10px;font-weight:500}.booking-editor-heading-actions{display:flex;flex:none;align-items:center;gap:9px}.booking-print-sheet{display:none}.booking-print-sheet.measuring{position:fixed;top:0;left:-10000px;display:block;width:733px;visibility:hidden;zoom:1}.booking-print-sheet{box-sizing:border-box;padding:8mm}.booking-print-sheet,.booking-print-sheet *{color:#000}.booking-print-sheet{font-family:Courier New,Courier,monospace;font-size:9.5pt;line-height:1.4}.booking-print-sheet section{margin-top:4mm}.booking-print-sheet h2{margin:0 0 2mm;border-bottom:1px solid #000;padding-bottom:1mm;font-size:9.5pt;font-weight:700;break-after:avoid}.booking-print-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10mm;border-bottom:2px solid #000;padding-bottom:2mm}.booking-print-head span{display:block;font-size:8.5pt}.booking-print-head strong{display:block;margin-top:1mm;font-size:13pt;font-weight:700;line-height:1.2}.booking-print-reference{flex:none;text-align:right}.booking-print-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6mm 8mm;margin:3mm 0 0}.booking-print-facts div.wide,.booking-print-answer.wide{grid-column:1 / -1}.booking-print-facts div,.booking-print-answer{display:flex;align-items:baseline;gap:3mm;border-bottom:1px solid #000;padding-bottom:.8mm;break-inside:avoid}.booking-print-facts dt,.booking-print-label{flex:none;max-width:52%;font-size:9.5pt;font-weight:400}.booking-print-facts dd,.booking-print-value{flex:1 1 auto;min-width:0;min-height:1.2em;margin:0;font-weight:700;overflow-wrap:anywhere}.booking-print-value span{display:block}.booking-print-label em{font-style:normal}.booking-print-answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2mm 8mm}.booking-print-days{margin:3mm 0 0;font-size:9pt}.booking-print-days strong{font-weight:700}.booking-print-notes{margin:0 0 2mm;white-space:pre-wrap}.booking-print-rules{display:grid;gap:6mm;margin-top:3mm}.booking-print-rules span{display:block;border-bottom:1px solid #000}@media print{@page{margin:8mm}body:has(.booking-print-sheet)>*:not(.booking-print-sheet){display:none!important}body{margin:0;background:#fff}.booking-print-sheet{display:block;zoom:var(--print-scale,1);-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media(max-width:1050px){.form-builder-layout.preview-open{grid-template-columns:1fr}.booking-form-preview{position:static;max-height:none}}@media(max-width:620px){.booking-editor-fields,.booking-config-grid,.file-limit-grid,.background-option-adder,.background-choice-grid{grid-template-columns:1fr}.booking-section-heading{align-items:flex-start;flex-direction:column}.zone-range-row{grid-template-columns:1fr}.reminder-run-summary{flex-wrap:wrap}.reminder-run-trigger{margin-left:0}.reminder-message-table{display:block;overflow-x:auto}.zone-range-row>span{display:none}.capacity-override-row{grid-template-columns:1fr}.form-builder-actions{justify-content:flex-start}.form-question-summary{grid-template-columns:34px 27px minmax(0,1fr) 34px;padding-inline:6px}.form-question-editor{padding:15px}.form-question-primary-settings,.form-condition-rule,.condition-row{grid-template-columns:1fr}.condition-row button{min-height:32px}.rule-group-heading{align-items:stretch;flex-direction:column}.rule-group-heading select{width:100%}.rule-group-heading button{margin-left:0}.booking-config-savebar{align-items:stretch;flex-direction:column}.booking-config-savebar .primary-action{justify-content:center}}.order-coupons{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:9px 10px;border-radius:7px;color:var(--teal-dark);background:#2f6f5e14;font-size:12px}.order-coupons>div{display:flex;flex-wrap:wrap;gap:6px}.order-coupon-chip{border:1px solid rgba(47,111,94,.24);border-radius:999px;padding:3px 9px;background:#fff;font-weight:700}.order-coupon-chip b{margin-left:3px}.envelope-paid,.envelope-unpaid,.envelope-prepaid,.envelope-pending,.envelope-ready{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:800;text-transform:uppercase}.envelope-paid{color:var(--teal-dark);background:#2f6f5e24}.envelope-unpaid{color:#684b16;background:#c490312e}.envelope-prepaid{color:#8e5a1f;background:#c4903124}.envelope-pending{color:var(--muted);background:#18171412}.order-envelope-pending{opacity:.82;border-style:dashed}.envelope-ready{color:#244d88;background:#3066be21}.order-payments{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.order-payment-chip{border-radius:999px;padding:3px 10px;background:#3066be1c;color:#244d88;font-size:12px;font-weight:700}.order-payment{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.order-payment .secondary-button{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:3px 10px;border:1px solid var(--line);background:#fff;color:var(--teal-dark);font-size:12px;font-weight:700}.order-payment .secondary-button:hover:not(:disabled){border-color:var(--teal)}.order-refund-form{display:grid;gap:7px;flex-basis:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:13px}.order-refund-form>strong{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.order-refund-form label{display:flex;align-items:center;gap:7px;font-weight:700}.order-refund-form input[type=number]{width:110px;border:1px solid var(--line);border-radius:7px;padding:5px 8px;font-size:13px}.order-refund-form p{margin:0;color:var(--muted);line-height:1.4}.order-refund-error{color:#8e372b;font-size:12px;font-weight:700}.order-offline-flag{display:inline-flex;align-items:center;gap:5px;color:#684b16;font-size:12px;font-weight:700}.order-inperson-note{color:var(--muted);font-size:12px;line-height:1.4}.order-refund-warning{padding:7px 9px;border-radius:7px;background:#c4903129;color:#684b16;font-size:12px;font-weight:700;line-height:1.35}.order-refund-actions{display:flex;justify-content:flex-end;gap:8px}.order-refund-actions button[type=submit]{display:inline-flex;align-items:center;gap:6px;min-height:34px;border-radius:8px;padding:6px 14px;border:1px solid transparent;background:var(--coral);color:#fff;font-size:13px;font-weight:800}.order-unpaid{color:#8e372b;font-size:12px;font-weight:700}.order-paid-flag{display:inline-flex;align-items:center;gap:5px;color:var(--teal-dark);font-size:12px;font-weight:700}.order-refund-flag{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px;color:#8e372b;font-size:12px;font-weight:700}.order-pending-flag{display:inline-flex;align-items:flex-start;flex-wrap:wrap;gap:5px;color:#684b16;font-size:12px;font-weight:700;line-height:1.4}.order-shipping-address{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:9px 10px;border-radius:7px;color:var(--ink);background:#2f6f5e14;font-size:12px;font-style:normal}.order-shipping-address>svg{margin-top:2px;color:var(--teal-dark)}.order-shipping-address div,.order-shipping-address span{display:block}.order-shipping-address strong{display:block;margin-bottom:2px;color:var(--teal-dark);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.order-photo-decline{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:9px 10px;border-radius:7px;color:var(--ink);background:#8e372b12;font-size:12px}.order-photo-decline>svg{margin-top:2px;color:#8e372b}.order-photo-decline div>*{display:block}.order-photo-decline strong{margin-bottom:2px;color:#8e372b;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.order-photo-decline q{margin-top:4px;font-style:italic}.order-photo-decline small{margin-top:4px;color:var(--muted)}.order-selection{margin:0;color:var(--ink);font-size:13px;font-weight:700}.order-personalization,.order-placement,.order-withdrawn-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;margin:0;padding:8px 9px;border:1px solid rgba(47,111,94,.2);border-radius:7px;background:#2f6f5e14;color:var(--ink);font-size:12px;line-height:1.35}.order-personalization>svg,.order-placement>svg,.order-withdrawn-note>svg{margin-top:2px;color:var(--teal-dark)}.order-personalization span,.order-personalization strong,.order-placement span,.order-placement strong,.order-withdrawn-note span,.order-withdrawn-note strong{display:block}.order-personalization strong,.order-placement strong,.order-withdrawn-note strong{margin-bottom:1px;color:var(--teal-dark);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.order-envelope-withdrawn{background:#0f172a08}.order-envelope-withdrawn .order-envelope-head strong,.order-envelope-withdrawn .order-selection,.order-envelope-withdrawn .order-items{color:var(--muted)}.order-envelope-withdrawn .order-envelope-head b{color:var(--muted);text-decoration:line-through}.order-withdrawn-note{border-color:#b9503c40;background:#b9503c17}.order-withdrawn-note>svg,.order-withdrawn-note strong{color:#8e372b}.envelope-refunded{border-radius:999px;padding:2px 8px;color:#8e372b;background:#b9503c24;font-size:11px;font-weight:800;text-transform:uppercase}.order-envelope-refund{display:inline-flex;align-items:center;gap:5px;justify-self:start;border-radius:999px;padding:4px 11px;border:1px solid var(--line);background:#fff;color:var(--teal-dark);font-size:12px;font-weight:700}.order-envelope-refund>svg{flex-shrink:0}.order-envelope-refund:hover:not(:disabled){border-color:var(--teal)}.order-placement{border-color:var(--line);background:#0f172a08}.order-placement>svg,.order-placement strong{color:var(--muted)}.order-placement em{color:var(--muted);font-style:normal}.order-placement-adjusted{border-color:#2f6f5e33;background:#2f6f5e14}.order-placement-adjusted>svg,.order-placement-adjusted strong{color:var(--teal-dark)}.order-items{display:grid;gap:6px;margin:0;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);list-style:none}.order-items li{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600}.order-items li span{margin-left:auto;color:var(--teal-dark);font-weight:800}.order-foot{display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--muted);font-size:12px}.order-foot span{display:inline-flex;align-items:center;gap:5px}.coupons-console{display:grid;gap:16px}.coupon-scope-note{margin:0;color:var(--muted);font-size:13px}.orders-toolbar .coupon-refresh{margin-left:0}.coupon-search input{width:min(240px,45vw)}.coupon-browser{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;gap:16px}.coupon-list-panel,.coupon-detail,.coupon-detail-empty{border:1px solid var(--line);border-radius:8px;background:#fff}.coupon-list-panel{display:flex;flex-direction:column;min-width:0;max-height:calc(100vh - 250px);overflow:hidden}.coupon-list-panel .empty-state{border:0;box-shadow:none}.coupon-list{display:grid;min-height:0;overflow-y:auto}.coupon-list-item{display:grid;gap:7px;width:100%;border:0;border-bottom:1px solid var(--line);padding:13px 14px;color:var(--ink);text-align:left;background:#fff}.coupon-list-item:last-child{border-bottom:0}.coupon-list-item:hover,.coupon-list-item.selected{background:#2f6f5e12}.coupon-list-item.selected{box-shadow:inset 3px 0 0 var(--teal)}.coupon-list-head,.coupon-list-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.coupon-list-terms,.coupon-list-meta{color:var(--muted);font-size:12px}.coupon-list-meta b{color:var(--teal-dark);font-weight:800}.coupon-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;padding:10px;border-top:1px solid var(--line);color:var(--muted);background:var(--paper);font-size:11px;font-weight:800}.coupon-pagination button{display:inline-flex;align-items:center;gap:3px;min-height:32px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;color:var(--teal-dark);background:#fff;font-size:11px;font-weight:800}.coupon-detail-pane{min-width:0}.coupon-detail{display:grid;gap:16px;padding:18px}.coupon-detail-empty{display:grid;place-items:center;align-content:center;gap:7px;min-height:360px;padding:28px;color:var(--muted);text-align:center}.coupon-detail-empty strong{color:var(--ink)}.coupon-code{margin:0;color:var(--ink);font-size:16px;font-weight:800;letter-spacing:.06em}.coupon-terms{margin:4px 0 0;color:var(--muted);font-size:12px}.coupon-note{margin:0;color:var(--ink);font-size:13px;font-style:italic}.coupon-stack-summary{display:grid;gap:3px;margin:0;padding:12px;border-radius:7px;color:var(--muted);background:var(--paper);font-size:12px}.coupon-stack-summary strong{color:var(--ink);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.coupon-status{display:inline-flex;align-items:center;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800;white-space:nowrap}.coupon-status.live{color:var(--teal-dark);background:#2f6f5e29}.coupon-status.off{color:var(--muted);background:#18171414}.coupon-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;margin:0;border:1px solid var(--line);border-radius:8px;background:var(--line)}.coupon-detail-facts>div{min-width:0;padding:11px 12px;background:#fff}.coupon-detail-facts dt{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.coupon-detail-facts dd{overflow-wrap:anywhere;margin:3px 0 0;color:var(--ink);font-size:13px;font-weight:700}.coupon-stats{display:flex;gap:18px;margin:0;padding-top:10px;border-top:1px solid var(--line)}.coupon-stats dt{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.coupon-stats dd{margin:2px 0 0;color:var(--ink);font-size:14px;font-weight:800}.coupon-detail-actions{display:flex;justify-content:flex-end;gap:8px}.coupon-detail-actions .secondary-button{display:inline-flex;align-items:center;gap:6px;min-height:36px;border-radius:8px;padding:7px 12px;color:var(--teal-dark);border:1px solid var(--line);background:#fff;font-size:13px;font-weight:800}.coupon-detail-actions .secondary-button:hover:not(:disabled){border-color:var(--teal)}.coupon-detail-actions .secondary-button.danger{color:#8e372b}.coupon-editor .gallery-settings-grid{align-items:end}.coupon-stack-options{grid-column:1 / -1;margin:0;padding:14px;border:1px solid var(--line);border-radius:8px}.coupon-stack-options legend{padding:0 6px;color:var(--ink);font-size:13px;font-weight:800}.coupon-stack-options>p{margin:0 0 10px;color:var(--muted);font-size:12px}.coupon-stack-options>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.coupon-stack-options label{display:flex;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--line);border-radius:7px;background:#fff}.coupon-stack-options label>input{width:auto;margin:0}.coupon-stack-options label>span{display:grid;gap:2px;color:var(--ink);font-size:12px;text-transform:none}.coupon-stack-options small,.coupon-stack-empty{color:var(--muted);font-size:11px;font-weight:500}@media(max-width:900px){.coupon-browser{grid-template-columns:1fr}.coupon-list-panel{max-height:320px}}@media(max-width:620px){.coupon-detail-facts{grid-template-columns:1fr}}.catalog-console{display:grid;gap:16px}.catalog-intro{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 18px;color:var(--muted);font-size:13px}.catalog-intro p{margin:0}.orders-toolbar .catalog-refresh{margin-left:0}.orders-toolbar .background-group-actions{display:flex;gap:8px;justify-content:flex-end}.catalog-order-link{text-decoration:none}.orders-toolbar .catalog-order-link~.secondary-button{margin-left:0}.catalog-search{display:grid;grid-template-columns:auto auto minmax(140px,220px);align-items:center;gap:7px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.catalog-search input{width:100%;min-height:40px;padding:8px 10px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;font-weight:700;text-transform:none}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}.catalog-order-status{color:var(--teal-dark);font-weight:800}.catalog-order-status.error{color:#a93424}.catalog-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.catalog-preview{display:grid;flex:0 0 190px;place-items:center;height:190px;color:var(--muted);border-bottom:1px solid var(--line);background:#efeee9}.catalog-preview img{width:100%;height:100%;object-fit:contain}.catalog-card-body{display:grid;flex:1 1 auto;gap:12px;padding:14px;background:#fff}.catalog-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.catalog-card-head h3{margin:3px 0 0;font-size:17px}.catalog-card-status-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.catalog-status-action{min-height:28px;padding:4px 9px 4px 6px;color:var(--teal-dark);border:1px solid #b9cbc5;border-radius:999px;background:#fff;font:inherit;font-size:11px;font-weight:900;cursor:pointer}.catalog-status-action:hover:not(:disabled),.catalog-status-action:focus-visible{border-color:var(--teal);background:#e9f2ee}.catalog-status-action:disabled{cursor:not-allowed;opacity:.55}.catalog-code{color:var(--teal-dark);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.catalog-description{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.catalog-meta{display:flex;flex-wrap:wrap;gap:6px 12px;color:var(--muted);font-size:12px}.catalog-meta strong{color:var(--teal-dark)}.catalog-card .secondary-button{justify-self:end;min-height:36px;border:1px solid var(--line);border-radius:8px;padding:7px 14px;color:var(--teal-dark);background:#fff;font-weight:800}.catalog-card .secondary-button:hover{border-color:var(--teal)}.background-order-console{gap:14px}.background-order-heading,.background-order-actions,.background-order-help{display:flex;align-items:center}.background-order-heading{justify-content:space-between;flex-wrap:wrap;gap:12px 20px}.background-order-heading h2,.background-order-heading p{margin:0}.background-order-heading h2{font-size:18px}.background-order-heading p{margin-top:4px;color:var(--muted);font-size:13px}.background-order-actions{gap:8px}.background-order-actions .secondary-button{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:7px 12px;color:var(--teal-dark);border:1px solid var(--teal);border-radius:8px;background:#fff;font-weight:800;text-decoration:none}.background-order-section{display:grid;gap:10px}.background-order-help{justify-content:space-between;flex-wrap:wrap;gap:6px 16px;color:var(--muted);font-size:12px;font-weight:700}.background-order-help>span:first-child{display:inline-flex;align-items:center;gap:6px}.background-order-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}.background-order-row{display:grid;grid-template-rows:96px auto;gap:8px;min-width:0;padding:8px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;transition:border-color .12s ease,box-shadow .12s ease,opacity .12s ease}.background-order-row.dragging{opacity:.45;border-color:var(--teal);box-shadow:0 0 0 2px #186d5c24}.background-order-thumbnail{position:relative;display:grid;place-items:center;width:100%;height:96px;padding:0;overflow:hidden;color:var(--muted);border:1px solid var(--line);border-radius:6px;background:#efeee9;cursor:grab;-webkit-user-select:none;user-select:none}.background-order-thumbnail:hover:not(:disabled),.background-order-thumbnail:focus-visible{border-color:var(--teal);box-shadow:0 0 0 2px #186d5c1f}.background-order-thumbnail:active{cursor:grabbing}.background-order-thumbnail img{width:100%;height:100%;object-fit:contain}.background-order-position{position:absolute;top:6px;left:6px;z-index:1;display:grid;place-items:center;min-width:25px;height:25px;padding:0 6px;color:#fff;border-radius:999px;background:#124a3fe0;font-size:12px;font-weight:900}.background-order-identity{display:grid;justify-items:start;gap:2px;min-width:0}.background-order-identity strong{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.background-order-identity>span:last-child:not(.catalog-code){color:var(--teal-dark);font-size:11px;font-weight:800}@media(max-width:620px){.catalog-search{grid-template-columns:auto minmax(0,1fr);flex:1 1 100%}.catalog-search>span{display:none}.background-order-row{grid-template-rows:84px auto}.background-order-thumbnail{height:84px}}.catalog-editor-modal:not([open]){display:none}.catalog-editor-modal[open]{display:grid;width:min(900px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 24px 70px #15201c59}.catalog-editor-modal::backdrop{background:#121b189e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.catalog-editor-modal-heading{position:sticky;top:-18px;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:-18px -18px 0;padding:18px;border-bottom:1px solid var(--line);background:#fff}.catalog-editor-close{display:grid;flex:0 0 auto;place-items:center;width:36px;height:36px;color:var(--teal-dark);border:1px solid var(--line);border-radius:8px;background:#fff}.catalog-editor-close:hover:not(:disabled),.catalog-editor-close:focus-visible{border-color:var(--teal);background:#e9f2ee}.catalog-editor-modal>.gallery-settings-actions{position:sticky;bottom:-18px;z-index:2;margin:0 -18px -18px;padding:12px 18px 18px;border-top:1px solid var(--line);background:#fff}.catalog-editor .gallery-settings-grid{align-items:end}.gallery-settings-grid textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);background:#fff;font:inherit;line-height:1.45}.gallery-settings-grid .catalog-field-wide{grid-column:1 / -1}.catalog-image-upload{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.catalog-upload-preview{display:grid;place-items:center;min-height:130px;overflow:hidden;color:var(--muted);border:1px solid var(--line);border-radius:7px;background:#fff}.catalog-upload-preview img{width:100%;height:130px;object-fit:contain}.catalog-upload-controls{display:grid;align-content:center;justify-items:start;gap:10px}.catalog-upload-controls p{margin:3px 0 0;color:var(--muted);font-size:12px}.catalog-upload-controls .secondary-button{display:inline-flex;align-items:center;gap:7px}@media(max-width:620px){.catalog-image-upload{grid-template-columns:1fr}}.email-template-console{gap:20px;padding:22px;box-shadow:none}.email-template-toolbar{display:flex;align-items:center;gap:16px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.email-template-picker{display:flex;flex:1;align-items:center;gap:14px;min-width:0}.email-template-picker>span{flex:none;font-size:12px;font-weight:700}.email-template-picker select{width:100%;max-width:440px;min-width:0;min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:#fff;font:inherit;font-size:14px}.email-template-count{flex:none;color:var(--muted);font-size:12px}.email-template-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.email-template-intro h2,.email-template-intro p,.email-template-reference h3,.email-template-reference p{margin:0}.email-template-intro h2{font-size:20px;line-height:1.3}.email-template-intro p,.email-template-reference p{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45}.email-template-intro>span{flex:none;padding:5px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--paper);font-size:11px;line-height:1.4}.email-template-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px}.email-template-layout>*{min-width:0}.email-template-console h3{font-size:16px}.email-template-console .gallery-settings-heading p{line-height:1.5}.email-template-fields,.email-template-fields label{display:grid;gap:8px}.email-template-fields{gap:14px}.email-template-fields label{min-width:0;align-content:start}.email-template-fields label>span{color:var(--muted);font-size:12px;font-weight:700}.email-template-fields small{color:var(--muted);font-size:12px;line-height:1.5}.email-template-fields input,.email-template-fields textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);background:#fff;font:inherit}.email-template-fields input{min-width:0;min-height:44px;font-size:14px}.email-template-picker select:focus-visible,.email-template-fields input:focus-visible,.email-template-fields textarea:focus-visible,.email-settings-panel summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.email-template-fields textarea{min-height:440px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.55}.email-template-saved{margin:0;color:var(--teal-dark);font-size:13px;font-weight:700}.email-template-reference{display:grid;gap:20px}.email-template-preview,.email-template-data{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff}.email-template-preview dl{display:grid;gap:4px;margin:0;padding:10px 12px;border-radius:7px;background:var(--paper)}.email-template-preview dt{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.email-template-preview dd{margin:0;font-size:13px;font-weight:700}.email-template-preview iframe{display:block;width:100%;height:480px;border:1px solid var(--line);border-radius:7px;background:#fff}.email-template-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:7px}.email-template-data table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.email-template-data th,.email-template-data td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}.email-template-data th{color:var(--muted);background:var(--paper);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.email-template-data tr:last-child td{border-bottom:0}.email-template-data code{color:var(--teal-dark);font-size:11px;font-weight:700;overflow-wrap:anywhere}.email-template-data td{overflow-wrap:anywhere}.email-settings-panel{min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff}.email-settings-panel summary{display:flex;align-items:center;gap:12px;padding:16px 18px;list-style:none;cursor:pointer}.email-settings-panel summary::-webkit-details-marker{display:none}.email-settings-panel summary>svg{flex:none;color:var(--teal)}.email-settings-summary-copy{display:grid;flex:1;gap:3px;min-width:0}.email-settings-summary-copy strong{font-size:14px}.email-settings-summary-copy>span{color:var(--muted);font-size:12px;line-height:1.4}.email-settings-pending{color:var(--gold);font-size:12px}.email-settings-panel[open] .email-settings-chevron{transform:rotate(180deg)}.email-settings-panel .email-sender-editor{border:0;border-top:1px solid var(--line);border-radius:0 0 8px 8px}.email-sender-editor .email-template-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.email-template-state{display:flex;align-items:center;gap:8px;min-height:180px;justify-content:center;color:var(--muted)}.email-template-state.error{color:var(--coral)}@media(max-width:900px){.email-template-layout{grid-template-columns:minmax(0,1fr)}}.coupon-stack{display:grid;gap:8px;margin-top:14px}.coupon-field{display:grid;grid-template-columns:1fr auto;gap:8px;margin:0}.coupon-field input{min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);background:#fff;font-size:15px;letter-spacing:.06em;text-transform:uppercase}.coupon-field input::placeholder{color:var(--muted);letter-spacing:normal;text-transform:none}.coupon-apply{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border-radius:8px;padding:10px 18px;color:var(--teal-dark);border:1px solid var(--teal);background:#fff;font-weight:800}.coupon-apply:disabled{color:var(--muted);border-color:var(--line)}.coupon-stack>.inline-note{margin-top:0}.coupon-applied{display:flex;align-items:center;gap:10px;margin:0;border:1px solid var(--teal);border-radius:8px;padding:10px 12px;background:#2f6f5e0f}.coupon-applied-code{display:inline-flex;align-items:center;gap:6px;color:var(--teal-dark);font-weight:800;letter-spacing:.06em}.coupon-applied b{margin-left:auto;color:var(--teal-dark)}.coupon-remove{display:inline-flex;align-items:center;gap:4px;border:0;padding:4px 6px;color:var(--muted);background:none;font-size:13px;font-weight:700;cursor:pointer}.coupon-remove:hover:not(:disabled){color:var(--coral)}.cart-discount{display:flex;align-items:center;justify-content:space-between;margin-top:10px;color:var(--teal-dark);font-size:14px}@media(max-width:720px){.cart-card{padding-bottom:16px}.cart-card .cart-line{gap:8px;padding:8px 10px}.cart-card .cart-line-info{gap:8px}.cart-card .cart-thumb{width:40px}.cart-card .icon-button{width:44px;height:44px}.cart-card .cart-line small{gap:4px;margin-top:2px;font-size:11px;line-height:1.25}.delivery-panel{gap:8px;margin:8px 0;padding:10px;border-radius:12px}.delivery-panel-heading{display:block}.delivery-panel-heading>div{display:flex;align-items:baseline;gap:8px}.delivery-panel-heading .eyebrow{font-size:10px}.delivery-panel-heading h2{margin:0;font-family:inherit;font-size:16px;line-height:1.2}.delivery-heading-long,.delivery-panel-heading>p{display:none}.delivery-heading-short{display:inline}.delivery-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.delivery-option{align-items:center;gap:7px;min-height:58px;padding:7px 8px}.delivery-option>svg{display:none}.delivery-option>span{min-width:0;gap:2px}.delivery-option strong{font-size:13px;line-height:1.15}.delivery-option small{font-size:10.5px;line-height:1.2}.delivery-radio{width:18px;height:18px}.delivery-school-note{display:none}.coupon-stack{margin-top:8px}.cart-total{min-height:44px;margin:4px 0;padding-top:4px}.cart-total-value{gap:6px}.checkout-email{display:block;margin:6px 0 8px;font-size:11px;font-weight:600;line-height:1.35}.cart-actions{gap:8px}.cart-actions .primary-action,.cart-actions .secondary-action{min-height:44px;padding:8px 12px}.cart-ordering-actions .secondary-action{gap:5px;padding-inline:5px;font-size:12px}.cart-ordering-actions .secondary-action svg{width:16px;height:16px;flex-shrink:0}.cart-card>.inline-note:last-child{margin:8px 0 0;font-size:12px}}.address-choice-note{margin:-4px 0 0;color:var(--muted);font-size:13px;text-align:center}.order-address-warning{margin-top:4px;color:var(--coral);font-size:12px;font-weight:700}.proof-protected img{pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}.proof-watermark{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;gap:10px;padding:16px;overflow:hidden;text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none}.proof-watermark--center{align-items:center;justify-content:center}.proof-watermark--top{align-items:center;justify-content:flex-start}.proof-watermark--bottom{align-items:center;justify-content:flex-end}.proof-watermark--top-left{align-items:flex-start;justify-content:flex-start}.proof-watermark--top-right{align-items:flex-end;justify-content:flex-start}.proof-watermark--bottom-left{align-items:flex-start;justify-content:flex-end}.proof-watermark--bottom-right{align-items:flex-end;justify-content:flex-end}.proof-watermark-mark{display:flex;align-items:center;gap:7px;max-width:100%}.proof-watermark--center .proof-watermark-mark{flex-direction:column;gap:10px;max-width:86%}.proof-watermark--top-left .proof-watermark-mark,.proof-watermark--top-right .proof-watermark-mark,.proof-watermark--bottom-left .proof-watermark-mark,.proof-watermark--bottom-right .proof-watermark-mark{max-width:66%}.proof-watermark--top-left .proof-watermark-mark,.proof-watermark--bottom-left .proof-watermark-mark{text-align:left}.proof-watermark--top-right .proof-watermark-mark,.proof-watermark--bottom-right .proof-watermark-mark{text-align:right}.proof-watermark-lock{width:clamp(40px,22%,92px);height:auto;color:#ffffff9e;filter:drop-shadow(0 1px 6px rgba(18,17,15,.5))}.proof-watermark-text{max-width:100%;color:#ffffffb8;font-size:clamp(13px,2.6vw,19px);font-weight:800;letter-spacing:.04em;text-shadow:0 1px 5px rgba(18,17,15,.55)}.proof-watermark:not(.proof-watermark--center):not(.proof-watermark--tiled) .proof-watermark-lock{width:clamp(15px,4%,22px);flex-shrink:0}.proof-watermark-tiles{display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:18px 26px;width:215%;height:215%;margin:auto;transform:rotate(-24deg)}.proof-watermark--tiled .proof-watermark-mark{gap:5px;max-width:none;white-space:nowrap}.proof-watermark--tiled .proof-watermark-lock{width:clamp(11px,1.6vw,15px);flex-shrink:0}.proof-watermark--tiled .proof-watermark-text{max-width:none;font-size:clamp(10px,1.5vw,14px);color:#ffffff94}.watermark-editor{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,420px);align-items:start;gap:20px}.watermark-controls{display:grid;gap:14px}.watermark-controls>label:not(.watermark-lock-toggle){display:grid;gap:7px}.watermark-controls>label:not(.watermark-lock-toggle) span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.watermark-controls input[type=text],.watermark-controls select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);background:#fff}.watermark-hint,.watermark-saved-state{margin:0;color:var(--muted);font-size:13px}.watermark-preview{display:grid;gap:8px;margin:0}.watermark-preview figcaption{color:var(--muted);font-size:13px}@media(max-width:860px){.watermark-editor{grid-template-columns:1fr}}.watermark-preview-stage{position:relative;aspect-ratio:3 / 4;border:1px solid var(--line);border-radius:8px;background:#d8d2c7}.watermark-lock-toggle{display:flex;align-items:center;gap:9px}.watermark-lock-toggle input{width:18px;height:18px;accent-color:var(--teal)}.watermark-lock-toggle span{color:var(--ink);font-size:13px;font-weight:600}.analytics-lock{gap:18px}.analytics-lock h2{margin:0;font-size:18px}.analytics-lock-form{display:grid;gap:12px;max-width:360px}.analytics-lock-form input{width:100%}.analytics-lock-hint{margin:0;max-width:42ch;color:var(--muted);font-size:13px}.analytics-lock .inline-note{margin:0}.analytics-console{gap:22px}.analytics-view-tabs,.gallery-detail-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line)}.analytics-view-tabs button,.gallery-detail-tabs button{min-height:44px;margin-bottom:-1px;border:0;border-bottom:3px solid transparent;padding:10px 14px 11px;color:var(--muted);background:transparent;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.analytics-view-tabs button:hover,.gallery-detail-tabs button:hover{color:var(--ink)}.analytics-view-tabs button:focus-visible,.gallery-detail-tabs button:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}.analytics-view-tabs button.active,.gallery-detail-tabs button[aria-selected=true]{border-bottom-color:var(--teal);color:var(--teal-dark)}.analytics-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(150px,220px);gap:12px;align-items:end}.analytics-toolbar label{display:grid;gap:7px}.analytics-toolbar label span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.analytics-toolbar select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);background:#fff}.analytics-toolbar .gallery-picker{gap:7px}.analytics-toolbar .gallery-picker input[type=search]{width:100%;min-width:0;min-height:44px;padding:10px 12px;background:#fff}.analytics-toolbar-range{grid-template-columns:minmax(200px,240px);justify-content:end}.analytics-dashboard{display:grid;gap:18px}.admin-health-banner{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:12px 28px;border-bottom:1px solid rgba(185,58,44,.36);background:#fbe3df;color:#7f251b;font-size:14px;line-height:1.45}.admin-health-banner[data-status=low]{border-bottom-color:#d69e2e80;background:#fbf0d2;color:#6b4a08}.admin-health-banner span{overflow-wrap:anywhere}@media screen and (max-width:620px){.admin-health-banner{padding:10px 14px;font-size:13px}}.health-group{display:grid;gap:8px}.health-group h4{margin:0;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.health-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.health-row{display:grid;gap:3px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-left:4px solid rgba(17,33,29,.18);border-radius:8px;background:var(--surface)}.health-row[data-status=ok]{border-left-color:var(--teal)}.health-row[data-status=watch]{border-left-color:#d19a3a}.health-row[data-status=down]{border-left-color:#c4483a;background:#b93a2c0d}.health-row-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}.health-status{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.health-row[data-status=ok] .health-status{color:var(--teal-dark)}.health-row[data-status=watch] .health-status{color:#8a5a0b}.health-row[data-status=down] .health-status{color:#9b2f23}.health-title{color:var(--ink);font-weight:700}.health-message{color:var(--ink);font-size:13px;line-height:1.45;overflow-wrap:anywhere}.health-since,.health-footnote{color:var(--muted);font-size:12px}.health-footnote{margin:0;line-height:1.45}.health-group-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.health-toggle{justify-self:start;margin-top:2px;padding:0;border:0;background:none;color:var(--teal-dark);font-size:13px;font-weight:700;text-decoration:underline;cursor:pointer}.health-rows{display:grid;gap:6px;margin-top:6px}.health-row-item{display:grid;gap:2px;min-width:0;padding:8px 10px;border-radius:6px;background:#11211d0a}.health-row-item>button{justify-self:start;margin-top:4px}.health-acknowledge,.health-settings{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;margin-top:4px}.health-acknowledge label,.health-settings label{display:grid;flex:1 1 200px;gap:3px;color:var(--muted);font-size:12px}.health-acknowledge input,.health-settings input{min-width:0}.health-acknowledged summary{color:var(--muted);font-size:13px;cursor:pointer}.analytics-metric-grid.health-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.health-instance-cells{display:flex;gap:2px;height:12px;margin:4px 0 2px}.health-instance-cells>span{flex:1;border-radius:2px;background:#2f6f5e29}.health-instance-cells>[data-zone=watch]{background:#b97a1252}.health-instance-cells>[data-zone=down]{background:#b93a2c52}.health-instance-cells>[data-busy=true]{background:var(--teal)}.health-instance-cells>[data-zone=watch][data-busy=true]{background:#b97a12}.health-instance-cells>[data-zone=down][data-busy=true]{background:#b93a2c}.analytics-error{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border:1px solid rgba(185,58,44,.36);border-radius:10px;padding:16px 18px;color:#7f251b;background:#dc513e14}.analytics-error strong,.analytics-error p{margin:0}.analytics-error p{margin-top:5px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.analytics-error button{flex:none}.analytics-dashboard-heading,.analytics-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.analytics-dashboard-heading h2,.analytics-dashboard-heading p,.analytics-card-heading h3,.analytics-card-heading p{margin:0}.analytics-dashboard-heading p,.analytics-card-heading p{margin-top:4px;color:var(--muted);font-size:13px}.analytics-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.analytics-metric,.analytics-card{border:1px solid var(--line);border-radius:10px;background:#fff}.analytics-metric{display:grid;gap:5px;min-width:0;padding:16px}.analytics-metric>span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.analytics-metric strong{color:var(--teal-dark);font-size:clamp(22px,3vw,32px);font-variant-numeric:tabular-nums}.analytics-metric small{color:var(--muted);line-height:1.35}.analytics-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.analytics-card{display:grid;gap:16px;min-width:0;padding:18px}.analytics-week-card{gap:18px}.daily-sales-heading{flex-wrap:wrap;align-items:center}.daily-sales-ranges{display:flex;gap:3px;border:1px solid var(--line);border-radius:9px;padding:3px;background:var(--paper)}.daily-sales-ranges button{min-height:36px;border:0;border-radius:6px;padding:7px 14px;color:var(--muted);background:transparent;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.daily-sales-ranges button[aria-pressed=true]{color:#fff;background:var(--teal)}.daily-sales-ranges button:focus-visible,.daily-sales-column:focus-visible{outline:2px solid var(--teal-dark);outline-offset:2px}.daily-sales-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}.daily-sales-summary>strong{color:var(--teal-dark);font-size:clamp(26px,3vw,34px);font-variant-numeric:tabular-nums}.daily-sales-summary>div{display:grid;gap:4px;color:var(--muted);font-size:13px}.daily-sales-chart{--sales-plot-height: 220px;--sales-axis-width: 78px;position:relative;min-width:0;margin-top:14px;padding-left:var(--sales-axis-width)}.daily-sales-scale{position:absolute;top:0;right:0;left:var(--sales-axis-width);height:var(--sales-plot-height);pointer-events:none}.daily-sales-tick{position:absolute;right:0;left:0;border-top:1px dashed var(--line)}.daily-sales-tick:first-child{border-top-style:solid}.daily-sales-tick>span{position:absolute;right:calc(100% + 10px);transform:translateY(-50%);color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.daily-sales-bars{position:relative;display:grid;gap:clamp(2px,.6vw,8px)}.daily-sales-day{display:grid;grid-template-rows:var(--sales-plot-height) 28px;min-width:0}.daily-sales-column{display:flex;align-items:flex-end;justify-content:center;width:100%;min-width:0;height:100%;border:0;border-radius:5px 5px 0 0;padding:0;background:transparent;cursor:pointer;touch-action:manipulation}.daily-sales-column:hover,.daily-sales-column:focus-visible{background:#2f6f5e0f}.daily-sales-fill{width:78%;max-width:64px;min-height:2px;border-radius:4px 4px 0 0;background:var(--teal)}.daily-sales-column[aria-pressed=true] .daily-sales-fill{background:var(--teal-dark)}.daily-sales-fill[data-empty=true]{background:var(--line)}.daily-sales-column[aria-pressed=true] .daily-sales-fill[data-empty=true]{background:var(--muted)}.daily-sales-date{align-self:end;justify-self:center;color:var(--muted);font-size:11px;white-space:nowrap}.daily-sales-detail{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;border-radius:8px;padding:12px 14px;color:var(--muted);background:var(--paper);font-size:13px}.daily-sales-detail strong{color:var(--teal-dark);font-size:18px;font-variant-numeric:tabular-nums}@media screen and (max-width:620px){.daily-sales-chart{--sales-plot-height: 180px;--sales-axis-width: 68px}.daily-sales-date,.daily-sales-tick>span{font-size:9px}.daily-sales-fill{width:90%}}.analytics-change{flex:none;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;white-space:nowrap}.analytics-change-positive{color:#17624d;background:#2f6f5e1f}.analytics-change-negative{color:#8d2f22;background:#b93a2c1a}.analytics-change-neutral{color:var(--muted);background:var(--paper)}.analytics-period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.analytics-period{display:grid;gap:14px;min-width:0;border:1px solid var(--line);border-radius:9px;padding:15px;background:var(--paper)}.analytics-period.emphasized{border-color:#2f6f5e5c;background:#2f6f5e0e}.analytics-period-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.analytics-period-heading>div{display:grid;gap:3px}.analytics-period-heading span{color:var(--ink);font-size:13px;font-weight:800}.analytics-period-heading small{color:var(--muted);font-size:11px}.analytics-period-heading>strong{color:var(--teal-dark);font-size:clamp(22px,3vw,28px);font-variant-numeric:tabular-nums;white-space:nowrap}.analytics-revenue-track{overflow:hidden;height:8px;border-radius:999px;background:#2f6f5e1c}.analytics-revenue-track span{display:block;height:100%;border-radius:inherit;background:var(--teal)}.analytics-period-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.analytics-period-facts>div{display:grid;gap:3px;min-width:0}.analytics-period-facts dt{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.analytics-period-facts dd{margin:0;color:var(--ink);font-size:15px;font-weight:800;font-variant-numeric:tabular-nums}.analytics-activity{display:grid;gap:13px}.analytics-activity-row{display:grid;gap:6px}.analytics-activity-row>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:13px}.analytics-activity-row strong{font-variant-numeric:tabular-nums}.analytics-activity-track,.analytics-progress{overflow:hidden;height:10px;border-radius:999px;background:#2f6f5e1c}.analytics-activity-track span,.analytics-progress span{display:block;height:100%;border-radius:inherit;background:var(--teal)}.analytics-footnote{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.analytics-progress[data-tone=low],.analytics-progress[data-tone=busy]{background:#b97a1229}.analytics-progress[data-tone=low] span,.analytics-progress[data-tone=busy] span{background:#b97a12}.analytics-progress[data-tone=empty],.analytics-progress[data-tone=pressure]{background:#b93a2c29}.analytics-progress[data-tone=empty] span,.analytics-progress[data-tone=pressure] span{background:#b93a2c}.analytics-db-verdict{display:grid;gap:8px;border:1px solid rgba(47,111,94,.36);border-radius:10px;padding:12px 14px;background:#2f6f5e12}.analytics-db-verdict>div{display:grid;gap:3px}.analytics-db-verdict strong{color:var(--teal-dark);font-size:15px}.analytics-db-verdict span{color:var(--muted);font-size:12px;line-height:1.45}.analytics-db-verdict ul{margin:0;padding-left:18px;color:var(--ink);font-size:13px;line-height:1.5}.analytics-db-verdict[data-status=busy]{border-color:#b97a1273;background:#b97a1217}.analytics-db-verdict[data-status=busy] strong{color:#8a5a0b}.analytics-db-verdict[data-status=pressure]{border-color:#b93a2c73;background:#b93a2c14}.analytics-db-verdict[data-status=pressure] strong{color:#9b2f23}.analytics-db-meters{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px 28px}.analytics-db-meter{display:grid;gap:10px;min-width:0}.analytics-db-meter .analytics-period-heading small{line-height:1.45}.admin-shell .analytics-db-meter .analytics-period-heading{display:flex;flex-wrap:nowrap}.analytics-db-meter .analytics-period-heading>div{min-width:0}.analytics-db-meter[data-status=busy] .analytics-period-heading>strong{color:#8a5a0b}.analytics-db-meter[data-status=pressure] .analytics-period-heading>strong{color:#9b2f23}.analytics-db-schemas{display:grid;gap:10px;margin-top:22px}.analytics-db-schemas ol{display:grid;gap:12px;margin:0;padding:0;list-style:none}.analytics-db-schemas li{display:grid;gap:4px;min-width:0}.analytics-db-schemas li>span{overflow-wrap:anywhere}.analytics-db-schemas li>small{color:var(--muted)}.analytics-db-schemas .analytics-progress{height:6px}.analytics-db-history{display:grid;gap:18px}.analytics-db-strip{display:grid;gap:8px}.analytics-db-strip>.analytics-footnote{font-size:11px}.analytics-db-blocks{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:2px}.analytics-db-blocks span{position:relative;display:block;min-width:0;height:26px;border-radius:3px;background:#2f6f5e9e}.analytics-db-blocks span[data-status=busy]{background:#d19a3a}.analytics-db-blocks span[data-status=pressure]{background:#c4483a}.analytics-db-blocks span[data-status=none]{background:#11211d17}.analytics-db-blocks span small{position:absolute;top:100%;left:0;margin-top:4px;color:var(--muted);font-size:10px;font-weight:700;white-space:nowrap}.analytics-db-blocks{margin-bottom:16px}.analytics-db-queries-summary{margin:0 0 14px;color:var(--muted);font-size:13px;line-height:1.5}.analytics-db-queries-summary strong{color:var(--ink)}.analytics-db-queries{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:query}.analytics-db-queries>li{position:relative;isolation:isolate;overflow:hidden;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.analytics-db-query-share{position:absolute;inset:0 auto 0 0;z-index:-1;background:#2f6f5e1a;border-right:1px solid rgba(47,111,94,.22)}.analytics-db-queries>li>code{display:block;max-height:4.8em;overflow:hidden;margin-bottom:8px;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Cascadia Mono,Menlo,monospace;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.analytics-db-query-facts{display:flex;flex-wrap:wrap;gap:4px 16px;color:var(--muted);font-size:12px}.analytics-db-query-facts b{color:var(--ink);font-variant-numeric:tabular-nums}.analytics-hosting-sites{display:grid;gap:14px;margin:0;padding:0;list-style:none}.analytics-hosting-sites>li{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.analytics-hosting-site{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;justify-content:space-between}.analytics-hosting-site strong{font-size:14px;overflow-wrap:anywhere}.analytics-hosting-site span{color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.analytics-hosting-meter{height:8px;border-radius:999px;background:#11211d17;overflow:hidden}.analytics-hosting-meter>div{height:100%;border-radius:inherit;background:var(--teal)}.analytics-hosting-meter[data-status=busy]>div{background:var(--gold)}.analytics-hosting-meter[data-status=pressure]>div{background:var(--coral)}.analytics-email-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px 32px;align-items:end}.analytics-email-allowance{display:grid;gap:10px}.analytics-email-days-block{display:grid;gap:8px;max-width:400px}.analytics-email-days-heading{display:flex;justify-content:space-between;gap:12px;color:var(--ink);font-size:13px;font-weight:800}.analytics-email-days-heading small{color:var(--muted);font-size:11px;font-weight:700}.analytics-email-days{display:flex;align-items:flex-end;gap:4px;height:56px;border-bottom:1px solid var(--line)}.analytics-email-days span{flex:1 1 0;max-width:24px;min-height:2px;border-radius:3px 3px 0 0;background:#2f6f5e61}.analytics-email-days span.current{background:var(--teal)}.analytics-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.analytics-facts-three{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-facts-auto{grid-template-columns:repeat(auto-fit,minmax(104px,1fr))}.analytics-facts>div,.analytics-facts>button{display:grid;gap:3px;border-radius:8px;padding:11px 12px;background:var(--paper)}.analytics-fact-pick{border:1px solid transparent;color:inherit;font:inherit;text-align:left}.analytics-fact-pick>span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.analytics-fact-pick>strong{color:var(--ink);font-size:18px;font-weight:800;font-variant-numeric:tabular-nums}.analytics-fact-pick:hover:not(:disabled){border-color:var(--line)}.analytics-fact-pick:disabled{opacity:1;cursor:default}.analytics-fact-pick[aria-pressed=true]{border-color:var(--teal);background:#2f6f5e1a}.analytics-fact-pick[aria-pressed=true]>span,.analytics-fact-pick[aria-pressed=true]>strong{color:var(--teal-dark)}.analytics-drilldown{display:grid;gap:10px;margin-top:14px;border-top:1px solid var(--line);padding-top:14px}.analytics-drilldown-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.analytics-drilldown-heading>strong{color:var(--ink);font-size:13px}.analytics-drilldown-list{display:grid;gap:6px;max-height:420px;overflow-y:auto;margin:0;padding:0;list-style:none}.analytics-drilldown-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;color:inherit;background:#fff;font:inherit;text-align:left}button.analytics-drilldown-row{cursor:pointer}.analytics-drilldown-row-action{display:inline-flex;align-items:center;gap:5px;margin:4px 0 2px 12px;border:0;padding:2px 0;color:var(--teal-dark);background:none;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.analytics-drilldown-row-action:hover{text-decoration:underline}button.analytics-drilldown-row:hover{border-color:var(--teal);background:var(--paper)}.analytics-drilldown-row>span{display:grid;gap:2px;min-width:0}.analytics-drilldown-row>span:last-child{flex:none;text-align:right}.analytics-drilldown-list strong{color:var(--ink);font-size:13px;font-weight:700}.analytics-drilldown-list small{color:var(--muted);font-size:11px}.analytics-drilldown-list [data-overdue=true] strong,.analytics-drilldown-list [data-overdue=true] small{color:var(--coral)}.analytics-facts dt{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.analytics-facts dd{margin:0;color:var(--ink);font-size:18px;font-weight:800;font-variant-numeric:tabular-nums}.analytics-card-heading>strong{color:var(--teal-dark);font-size:22px;font-variant-numeric:tabular-nums}.analytics-table-wrap{overflow-x:auto}.analytics-table{width:100%;border-collapse:collapse;font-size:13px}.analytics-table th,.analytics-table td{padding:11px 10px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.analytics-table th{color:var(--muted);font-size:11px;text-transform:uppercase}.analytics-table th:first-child,.analytics-table td:first-child{text-align:left}.analytics-table tbody tr:last-child td{border-bottom:0}.analytics-device{font-weight:800;text-transform:capitalize}.analytics-product-name{display:block;margin-top:2px;color:var(--muted);font-size:11px}.analytics-gallery-link{border:0;padding:0;color:var(--teal-dark);background:transparent;font:inherit;font-weight:800;text-align:left;cursor:pointer}.analytics-gallery-link:hover{text-decoration:underline}.analytics-gallery-bar{overflow:hidden;width:140px;height:4px;margin-top:6px;border-radius:999px;background:#2f6f5e1a}.analytics-gallery-bar span{display:block;height:100%;border-radius:inherit;background:var(--teal)}.analytics-gallery-table td:first-child{min-width:170px}.analytics-empty{margin:0;border:1px dashed var(--line);border-radius:10px;padding:30px 18px;color:var(--muted);text-align:center}@media(max-width:820px){.analytics-metric-grid,.analytics-section-grid,.analytics-period-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.analytics-toolbar,.analytics-metric-grid,.analytics-section-grid,.analytics-period-grid{grid-template-columns:1fr}.analytics-toolbar-range{justify-content:stretch}.analytics-error{display:grid}.analytics-facts-three{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-drilldown-row{display:grid;gap:6px}.analytics-drilldown-row>span:last-child{text-align:left}.analytics-period-heading{display:grid}}.activity-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:16px;margin:18px 0 4px}.activity-filters>label,.activity-groups-filter label,.gallery-picker{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.activity-filters select,.activity-filters input[type=search],.activity-groups-filter input[type=search],.gallery-picker input[type=search]{min-height:40px;min-width:220px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-size:14px;font-weight:500;text-transform:none}.activity-search input[type=search]{min-width:280px}.parent-emails-toggle,.gallery-missing-toggle{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:600;text-transform:none}.gallery-picker{position:relative}.gallery-picker-options{position:absolute;top:100%;z-index:20;width:100%;max-height:280px;margin:4px 0 0;padding:4px;overflow-y:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);list-style:none}.gallery-picker-options button{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 10px;border:0;border-radius:7px;background:none;color:var(--ink);text-align:left;text-transform:none;cursor:pointer}.gallery-picker-options button:hover,.gallery-picker-options button.active{background:var(--paper)}.gallery-picker-options span{color:var(--muted);font-size:12px;font-weight:600}.activity-heading{margin:20px 0 0;font-size:20px}.activity-groups-filter{margin:18px 0 0}.activity-groups-filter+.activity-groups{margin-top:8px}.activity-groups{display:flex;gap:10px;margin:18px 0 6px;padding-bottom:6px;overflow-x:auto}.activity-groups button{display:flex;flex:0 0 auto;flex-direction:column;gap:3px;min-width:190px;max-width:260px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer}.activity-groups button.active{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.activity-groups strong{overflow-wrap:anywhere}.activity-groups span,.activity-groups time{color:var(--muted);font-size:12px;font-weight:600}.activity-feed{margin:16px 0 0;padding:0;list-style:none}.activity-row{display:flex;align-items:flex-start;gap:14px;padding:14px 4px;border-bottom:1px solid var(--line)}.activity-row p{margin:0 0 4px;font-size:14px}.activity-icon{display:grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--paper);color:var(--muted)}.activity-row time,.activity-gallery,.activity-device{margin-right:10px;color:var(--muted);font-size:12px;font-weight:600}.access-badges{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.access-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;background:var(--paper);color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.access-badge.ordered{background:#2f6f5e1f;color:var(--teal-dark)}.parent-emails-all{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:18px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.parent-emails-all>div{display:flex;flex:1;flex-direction:column}.parent-emails-all span{color:var(--muted);font-size:12px;font-weight:600}.parent-emails-list{display:block;max-width:460px;overflow-wrap:anywhere;font-size:13px}.outreach-campaign-list{display:grid;gap:8px;margin-top:16px}.outreach-campaign{border:1px solid var(--line);border-radius:9px;overflow:hidden}.outreach-campaign-summary{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;border:0;background:#fff;text-align:left}.outreach-campaign-name{display:grid;font-weight:800}.outreach-campaign-name small{margin-top:2px;color:var(--muted);font-size:11px;font-weight:500}.outreach-badge{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:800}.outreach-badge.is-quiet{background:#0000000d;color:var(--muted)}.outreach-badge.is-bad{background:#d65a461f;color:var(--coral)}.outreach-campaign-counts{margin-left:auto;color:var(--muted);font-size:12px}.outreach-campaign-detail{display:grid;gap:10px;border-top:1px solid var(--line);padding:12px;background:#00000004}.outreach-search{max-width:320px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;background:#fff}.outreach-recipient-table{width:100%;border-collapse:collapse;font-size:12px}.outreach-recipient-table th,.outreach-recipient-table td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.outreach-recipient-table th{color:var(--muted);font-size:11px}.outreach-recipient-table td.is-bad-text{color:var(--coral);font-weight:700}@media(max-width:620px){.outreach-campaign-summary{flex-wrap:wrap}.outreach-campaign-counts{margin-left:0}.outreach-recipient-table{display:block;overflow-x:auto}}.db-backup-environment{margin:0 0 12px;color:var(--muted);font-size:12px}.db-backup-environment.is-bad{color:var(--coral);font-weight:700}.db-backup-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:10px;align-items:end;margin-bottom:14px}.db-backup-form label{display:grid;gap:4px;min-width:0}.db-backup-form label span{color:var(--muted);font-size:11px;font-weight:700}.db-backup-form input{width:100%}.db-backup-form .primary-action{display:inline-flex;align-items:center;gap:6px}.db-backup-list{display:grid;gap:10px}.db-backup-row{display:grid;gap:8px;border:1px solid var(--line);border-radius:9px;padding:12px}.db-backup-summary{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.db-backup-name{font-weight:800;word-break:break-word}.db-backup-status{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:800}.db-backup-status.is-complete{background:#2f6f5e1f;color:var(--teal-dark)}.db-backup-status.is-running{background:#0000000d;color:var(--muted)}.db-backup-status.is-failed{background:#d65a461f;color:var(--coral)}.db-backup-badge{border-radius:999px;padding:2px 9px;background:#0000000d;color:var(--muted);font-size:11px;font-weight:700}.db-backup-comment{margin:0;color:var(--muted);font-size:13px}.db-backup-facts{display:flex;flex-wrap:wrap;gap:6px 18px}.db-backup-facts>span{display:grid;gap:1px;font-size:13px}.db-backup-facts small{color:var(--muted);font-size:11px}.db-backup-actions{display:flex;flex-wrap:wrap;gap:8px}.db-backup-actions .secondary-action{display:inline-flex;align-items:center;gap:6px}.db-backup-error{display:flex;align-items:center;gap:6px;color:var(--coral)}.db-restore-dialog{display:grid;gap:10px;margin:14px 0;border:2px solid var(--coral);border-radius:10px;padding:14px;background:#d65a460a}.db-restore-dialog h3,.db-restore-dialog p{margin:0}.db-restore-refusals{margin:0;padding-left:18px;color:var(--coral);font-size:13px}.db-restore-confirm{display:grid;gap:4px;max-width:420px}.db-restore-confirm span{color:var(--muted);font-size:12px}.db-restore-log{margin-top:20px;display:grid;gap:10px}.db-restore-log h3{margin:0}@media screen and (max-width:620px){.topbar:has(.admin-crumbs){position:relative;display:block;height:auto;min-height:0;padding:10px 12px}.topbar:has(.admin-crumbs) .topnav{justify-content:flex-start;gap:4px;margin-top:8px}.topbar:has(.admin-crumbs) .tab-link{padding:7px 10px;font-size:13px}.admin-crumbs .brand,.admin-crumbs>span{display:none}.admin-crumbs h1{font-size:18px}.topbar:has(.admin-crumbs) .nav-group{position:static}.topbar:has(.admin-crumbs) .nav-menu{right:0;left:0;min-width:0}.topbar:has(.admin-crumbs) .nav-menu-link{white-space:normal}.admin-shell{padding:16px 12px}.booking-detail-header{top:0}.booking-detail-summary{padding:8px 10px}.booking-detail-header :is(.primary-action,.secondary-action),.booking-detail-back{min-height:40px}.admin-shell :is(h1,h2,h3,td,dd,.inline-note){overflow-wrap:anywhere}.admin-shell :is(.coupon-browser,.email-template-layout,.watermark-editor,.catalog-image-upload){grid-template-columns:minmax(0,1fr)}.admin-shell :is(.coupon-list,.email-template-list,.watermark-preview){position:static;max-height:none}.admin-shell .email-template-console{gap:16px;padding:12px}.admin-shell .email-template-picker,.admin-shell .email-template-intro{display:grid;gap:8px}.admin-shell .email-template-picker select{max-width:none;font-size:16px}.admin-shell .email-template-count{display:none}.admin-shell .email-template-intro>span{justify-self:start}.admin-shell :is(.email-template-editor,.email-template-preview,.email-template-data,.email-sender-editor){padding:14px}.admin-shell .email-sender-editor .email-template-fields{grid-template-columns:minmax(0,1fr)}.admin-shell .email-template-fields input{font-size:16px}.admin-shell .email-settings-panel summary{padding:14px}.admin-shell .email-template-table-wrap{overflow:visible;border:0}.admin-shell .email-template-data table,.admin-shell .email-template-data :is(tbody,tr,td){display:block}.admin-shell .email-template-data thead{display:none}.admin-shell .email-template-data tr{padding:8px 0;border-bottom:1px solid var(--line)}.admin-shell .email-template-data tr:last-child{border-bottom:0}.admin-shell .email-template-data td{padding:5px 0;border-bottom:0}.admin-shell .email-template-data td:before{content:attr(data-label);display:block;margin-bottom:3px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase}.admin-shell :is(.gallery-settings-grid,.preorder-link-result,.coupon-detail-facts,.catalog-search){grid-template-columns:minmax(0,1fr)}.admin-shell :is(.analytics-metric-grid,.analytics-section-grid,.analytics-period-grid,.analytics-period-facts,.analytics-facts){grid-template-columns:repeat(2,minmax(0,1fr))}.admin-shell .analytics-toolbar{grid-template-columns:minmax(0,1fr)}.admin-shell .analytics-view-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.admin-shell .gallery-detail-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.admin-shell .analytics-view-tabs button,.admin-shell .gallery-detail-tabs button{min-width:0;padding-inline:4px;font-size:13px}.admin-shell .yearbook-totals small{margin-left:0}.admin-shell .yearbook-meter{flex-basis:100%}.admin-shell :is(.yearbooks-row,.yearbook-section){padding:12px}.admin-shell .yearbook-student-body{padding:0 10px 12px}.admin-shell .yearbook-section .school-duplicate-school a{display:inline-flex;align-items:center;min-height:32px}.admin-shell :is(.upload-console,[class*=-console]){grid-template-columns:minmax(0,1fr)}.admin-shell [class*=-filter]{flex:1 1 100%;min-width:0}.admin-shell select,.admin-shell :is([class*=-filter],[class*=-search]) select{flex:1 1 auto;min-width:0;max-width:100%}.admin-shell :is([class*=-toolbar],[class*=-actions],[class*=-filters],[class*=-heading],[class*=-savebar]){flex-wrap:wrap}.admin-shell .proof-group summary{flex-wrap:wrap}.admin-shell :not([class*=table-wrap])>table{display:block;width:100%;overflow-x:auto}.admin-shell :is(.gallery-table-wrap,.orders-table-wrap){overflow:visible;border:0;background:none}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table),.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) :is(thead,tbody,tr,th,td){display:block}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table){min-width:0}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) td{max-width:none}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) thead tr{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) th{position:static;border:1px solid var(--line);border-radius:999px;padding:6px 11px;background:#fff}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) th:not(:has(button)){display:none}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) tbody tr{margin-bottom:10px;border:1px solid var(--line);border-radius:10px;padding:5px 0;background:#fff}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) tbody tr:last-child{margin-bottom:0}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) td{position:relative;display:block;border-bottom:0;padding:7px 13px 7px 122px;text-align:left;white-space:normal}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) td:before{content:attr(data-label);position:absolute;top:8px;left:13px;width:100px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.02em;line-height:1.3;text-align:left;text-transform:uppercase}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) td:not([data-label]){display:block;padding:9px 13px}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) td:not([data-label]):before{content:none}.admin-shell :is(.gallery-table,.orders-table,.analytics-table,.booking-table) td:first-child{font-size:15px}.admin-shell :is(.orders-table,.booking-table) td :is(.orders-table-secondary,.orders-table-contact,.orders-table-primary,small){display:block;max-width:none;text-align:inherit}.admin-shell .gallery-code-cell{justify-content:flex-end}.admin-shell .gallery-table .gallery-comment-row{display:none}.admin-shell .gallery-table tbody tr:not(.gallery-comment-row) .gallery-latest-comment{display:flex}.admin-shell .booking-table td.school-actions-cell,.admin-shell .school-actions{width:auto}.admin-shell .school-actions .secondary-action{min-height:38px;padding:7px 11px;font-size:12px}.admin-shell .booking-table td[colspan]{display:block;padding:0;text-align:left}.admin-shell .booking-table td[colspan]:before{content:none}.admin-shell .booking-table :is(.school-history-row,.school-duplicates-row){margin-top:-10px;border-top:0;border-radius:0 0 10px 10px}.admin-shell :is(.booking-weekday-row,.booking-month-grid){min-width:0}.admin-shell .booking-month-grid{grid-auto-rows:minmax(74px,auto)}.admin-shell .booking-weekday-row span{padding:6px 2px;font-size:10px}.admin-shell .booking-month-day{gap:3px;padding:4px 3px}.admin-shell .booking-month-day>header strong{font-size:12px}.admin-shell .booking-month-day .booking-appointment-card{grid-template-columns:minmax(0,1fr);border-left-width:3px;border-radius:5px;padding:2px 3px;font-size:9px;line-height:1.3}.admin-shell .booking-month-day .booking-appointment-card :is(span,small){display:none}.admin-shell .booking-month-day .booking-appointment-card .booking-detail-mark{display:block;grid-column:1 / -1;grid-row:auto;justify-self:start;width:7px;height:7px;padding:0;background:currentColor}.admin-shell .booking-month-day .booking-appointment-card .booking-detail-mark :is(svg,b){display:none}.admin-shell .booking-month-day .booking-appointment-card strong{display:block;overflow:hidden;font-size:8.5px;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}.admin-shell .booking-month-book span{display:none}.admin-shell :is(button,select,input,textarea){min-height:40px}.admin-shell :is(input[type=checkbox],input[type=radio]){min-height:0}.admin-shell .db-backup-form{grid-template-columns:1fr}}
