@import "https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap";:root{--ink:#12110f;--ink-soft:#2a2723;--paper:#f3efe8;--paper-deep:#e4ddd2;--brass:#9a7b45;--brass-soft:#c4a46a;--mist:#f3efe814;--line:#12110f1f;--font-display:"Instrument Serif", Georgia, "Times New Roman", serif;--font-body:"Instrument Sans", "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased;background:#fff;font-size:1rem;line-height:1.5}.page{max-width:40rem;color:var(--ink,#1a1a1a);margin:0 auto;padding:3rem 1.5rem}button,input,select,textarea{font-family:inherit}.brand-mark-link{line-height:0;text-decoration:none;display:inline-flex}.brand-mark{object-fit:contain;background:#fff;display:block}.brand-mark-hero{aspect-ratio:1;width:min(42vw,11.5rem);height:auto}.brand-mark-auth{aspect-ratio:1;width:5.5rem;height:auto;margin-bottom:1.1rem}.brand-mark-header{aspect-ratio:1;width:2.75rem;height:auto;box-shadow:none}.landing{color:#000;background:#fff;place-items:center;min-height:100dvh;padding:2rem 1.25rem 3rem;font-family:Instrument Sans,Segoe UI,sans-serif;display:grid}.landing-inner{text-align:center;justify-items:center;gap:.45rem;width:min(100%,24rem);display:grid}.landing-title{letter-spacing:-.02em;color:#000;margin:.85rem 0 0;font-family:Instrument Sans,Segoe UI,sans-serif;font-size:clamp(1.85rem,5vw,2.35rem);font-weight:700;line-height:1.15}.landing-lede{color:#000;max-width:22rem;margin:.35rem 0 0;font-size:.98rem;font-weight:600;line-height:1.45}.landing-login{text-align:left;gap:.85rem;width:100%;margin-top:1.35rem;display:grid}.landing-login label{color:#000;gap:.3rem;font-size:.9rem;font-weight:700;display:grid}.landing-login input{font:inherit;color:#000;background:#fff;border:1.5px solid #000;padding:.7rem .75rem;font-weight:500}.landing-login input:focus{outline-offset:1px;outline:2px solid #000}.landing-login button[type=submit]{color:#fff;background:#000;border:1.5px solid #000;width:100%;margin-top:.15rem;font-weight:700}.landing-login button[type=submit]:hover:not(:disabled){background:#222}.landing-create,.landing-forgot{text-align:center;margin:0;font-size:.92rem;font-weight:700}.landing-create a,.landing-forgot a{color:#000;text-underline-offset:.15em;text-decoration:underline}.landing-forgot{font-weight:600}.landing-forgot a{color:#333}.auth-shell{color:#000;background:#fff;place-items:center;min-height:100dvh;padding:2rem 1.25rem 3rem;font-family:Instrument Sans,Segoe UI,sans-serif;display:grid;position:relative;overflow:hidden}.auth-shell-atmosphere{display:none}.auth-panel{z-index:1;width:min(100%,24rem);box-shadow:none;text-align:center;background:0 0;border:none;padding:0;animation:.65s cubic-bezier(.22,1,.36,1) both brand-rise;position:relative}.auth-panel .brand-mark-auth{margin-left:auto;margin-right:auto}.auth-title{letter-spacing:-.02em;color:#000;margin:.85rem 0 .35rem;font-family:Instrument Sans,Segoe UI,sans-serif;font-size:clamp(1.85rem,5vw,2.35rem);font-weight:700;line-height:1.15}.auth-lede{color:#000;margin:0 0 1.35rem;font-size:.98rem;font-weight:600;line-height:1.45}@keyframes brand-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:#5c5c5c;margin:0 0 .5rem;font-size:.8rem}h1{font-family:var(--font-display,Georgia, serif);letter-spacing:-.015em;margin:0 0 .75rem;font-size:clamp(1.85rem,4vw,2.4rem);font-weight:400;line-height:1.2}h2{font-weight:600;line-height:1.3}.lede{color:#333;margin:0 0 1.75rem;font-size:1rem;line-height:1.5}button{border:1px solid var(--ink,#1a1a1a);background:var(--ink,#1a1a1a);color:#fff;cursor:pointer;padding:.7rem 1.1rem;font-size:1rem;transition:background-color .16s,border-color .16s,transform .16s}button:disabled{opacity:.6;cursor:not-allowed}button:disabled.is-busy{cursor:wait}button:hover:not(:disabled){background:#333}.result{background:#f6f6f4;border-left:3px solid #1a1a1a;margin-top:1.5rem;padding:1rem 1.1rem;font-size:.95rem;line-height:1.45}.result.success{border-left-color:#2f6b3a}.result.warn{background:#faf7ef;border-left-color:#8a6d1b}.result.error{background:#faf3f3;border-left-color:#8b2e2e}.result pre{background:#fff;border:1px solid #ddd;margin:.75rem 0;padding:.75rem;font-size:.85rem;overflow-x:auto}.hint{color:#444;margin:.75rem 0 0}code{background:#eee;padding:.1em .35em;font-family:ui-monospace,Consolas,monospace;font-size:.9em}.auth-form{text-align:left;gap:.85rem;display:grid}.auth-shell .auth-form label{color:#000;gap:.3rem;font-size:.9rem;font-weight:700;display:grid}.auth-shell .auth-form input,.auth-shell .auth-form select{font:inherit;color:#000;background:#fff;border:1.5px solid #000;padding:.7rem .75rem;font-weight:500}.auth-shell .auth-form input:focus,.auth-shell .auth-form select:focus{outline-offset:1px;outline:2px solid #000}.auth-shell .auth-form button[type=submit]{color:#fff;background:#000;border:1.5px solid #000;width:100%;margin-top:.15rem;font-weight:700}.auth-shell .auth-form button[type=submit]:hover:not(:disabled){background:#222}.auth-form label{color:#333;gap:.35rem;font-size:.95rem;display:grid}.auth-form input,.auth-form select{font:inherit;color:#1a1a1a;background:#fff;border:1px solid #b8b8b8;padding:.65rem .75rem}.auth-form input:focus{outline-offset:1px;outline:2px solid #1a1a1a}.field-hint{color:#666;margin:-.35rem 0 0;font-size:.85rem}.form-error{color:#8b2e2e;margin:0}.form-success{color:#2f6b3a;margin:0}.auth-links{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1.35rem;font-size:.92rem;font-weight:700;display:flex}.auth-links a,.text-link{color:#000;text-underline-offset:.15em;text-decoration:underline}.button-row{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.button-link{color:#fff;background:#1a1a1a;border:1px solid #1a1a1a;padding:.7rem 1.1rem;font-size:1rem;text-decoration:none;display:inline-block}.button-link.secondary{color:#1a1a1a;background:0 0}.health-section{border-top:1px solid #cfd6dd;margin-top:1rem;padding-top:1.5rem}.health-section h2{margin:0 0 1rem;font-size:1.15rem;font-weight:600}.page-wide{max-width:52rem}.page-header{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-bottom:.5rem;display:flex}.panel{border-top:1px solid #cfd6dd;margin:1.75rem 0;padding-top:1.25rem}.panel h2{margin:0 0 .75rem;font-size:1.2rem;font-weight:600}.project-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.project-row{color:inherit;background:#fafaf8;border:1px solid #d5d5d0;grid-template-columns:1fr auto auto;align-items:center;gap:.75rem;padding:.85rem .9rem;text-decoration:none;display:grid}.project-row:hover{border-color:#1a1a1a}.project-name{font-weight:600}.project-company{color:#666;font-weight:400}.static-row{cursor:default}.static-row:hover{border-color:#d5d5d0}.customer-mode{border:1px solid #d5d5d0;flex-wrap:wrap;gap:1rem 1.5rem;margin:0;padding:.75rem .9rem;display:flex}.customer-mode legend{padding:0 .35rem;font-weight:600}.customer-mode-option{cursor:pointer;align-items:center;gap:.4rem;font-weight:500;display:inline-flex}.customer-mode-option input{width:auto;margin:0}.company-block{gap:.5rem;display:grid}.company-block .project-row{grid-template-columns:1fr auto auto auto}.company-invites{margin:0 .25rem}.company-project-list{gap:.35rem;margin:0;padding:0 0 0 .5rem;list-style:none;display:grid}.company-project-link{color:inherit;background:#fff;border:1px solid #e4e4de;flex-wrap:wrap;justify-content:space-between;gap:.35rem 1rem;padding:.45rem .65rem;font-size:.9rem;text-decoration:none;display:flex}.company-project-link:hover{border-color:#1a1a1a}.admin-shell .lede{margin-bottom:1.25rem}.admin-home-title{font:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0}.admin-home-title:hover:not(:disabled){color:#1a1a1a;text-underline-offset:.15em;background:0 0;text-decoration:underline}.text-back{font:inherit;color:#5c5c5c;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.text-back:hover:not(:disabled){color:#1a1a1a;background:0 0}.admin-step-title{margin:0 0 1rem;font-size:1.35rem;font-weight:600}.customer-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem 1.25rem;margin-bottom:.5rem;display:flex}.customer-page-title{margin-bottom:.35rem}.customer-page-actions{flex-wrap:wrap;gap:.65rem;display:flex}.admin-header-btn{white-space:nowrap;border-radius:.75rem;padding:.7rem 1rem;font-size:.95rem}.admin-header-btn:disabled{opacity:.45;cursor:not-allowed}.admin-subhead{margin:1.5rem 0 .75rem;font-size:.95rem;font-weight:600}.admin-tiles{gap:1rem;display:grid}.admin-tiles-list{gap:.65rem}.admin-tile{text-align:left;color:#1a1a1a;width:100%;box-shadow:none;background:#f7f6f2;border:1px solid #c8c8c0;border-radius:1rem;gap:.4rem;padding:1.35rem 1.4rem;display:grid}.admin-tile:hover:not(:disabled){background:#efece4;border-color:#1a1a1a}.admin-tile:disabled{opacity:.45;cursor:not-allowed}.admin-tile-compact{border-radius:.85rem;padding:1rem 1.15rem}.admin-tile-selected{background:#e8e4da;border-color:#1a1a1a}.admin-tile-link{text-decoration:none}.admin-tile-title{font-size:1.15rem;font-weight:600;line-height:1.25}.admin-tile-compact .admin-tile-title{font-size:1.05rem}.admin-tile-desc{color:#4a4a4a;font-size:.95rem;font-weight:400;line-height:1.4}.admin-search{gap:.35rem;margin-bottom:1rem;display:grid}.admin-search input{font:inherit;background:#fff;border:1px solid #b8b8b8;border-radius:.75rem;padding:.75rem .9rem}.admin-notifications{margin-top:1.75rem;padding-top:.25rem}.admin-notice-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.admin-notice{text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;background:#f7f6f2;border:1px solid #c8c8c0;border-radius:.85rem;gap:.25rem;padding:.95rem 1.1rem;text-decoration:none;display:grid}.admin-notice:hover{background:#efece4;border-color:#1a1a1a}.admin-notice-changes{border-left:4px solid #a35b12}.admin-notice-approved{border-left:4px solid #2f6b3a}.admin-notice-status{text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:700}.admin-notice-changes .admin-notice-status{color:#a35b12}.admin-notice-approved .admin-notice-status{color:#2f6b3a}.admin-notice-title{font-size:1.05rem;font-weight:600}.admin-notice-note{color:#333;font-size:.95rem;line-height:1.4}.admin-notice-note.muted{color:#777}.admin-shell.page-wide{max-width:min(96rem,100%)}.admin-project-board{grid-auto-columns:minmax(14rem,16rem);grid-auto-flow:column;gap:1rem;margin-top:.5rem;padding-bottom:.75rem;display:grid;overflow-x:auto}.admin-project-column{background:#f7f6f2;border:1px solid #c8c8c0;border-radius:1rem;flex-direction:column;gap:.75rem;min-height:12rem;padding:.9rem;display:flex}.admin-project-column-head{gap:.3rem;display:grid}.admin-project-column-date{color:#666;margin:0;font-size:.8rem}.admin-project-column-title{color:#1a1a1a;font-size:1.05rem;font-weight:600;text-decoration:none}.admin-project-column-title:hover{text-decoration:underline}.admin-project-column-meta{color:#555;margin:0;font-size:.85rem}.admin-project-column-note{color:#3a3a3a;margin:0;font-size:.85rem;line-height:1.35}.admin-delete-project{justify-self:start;margin-top:.25rem;font-size:.85rem}.danger-btn,.secondary-btn.danger-btn{color:#fff;background:#8b2e2e;border-color:#8b2e2e}.danger-btn:hover:not(:disabled),.secondary-btn.danger-btn:hover:not(:disabled){color:#fff;background:#6f2424;border-color:#6f2424}.admin-board-thumbs{flex-wrap:wrap;gap:.35rem;display:flex}.board-thumb-link{width:25%;min-width:3.25rem;max-width:4rem;color:inherit;text-decoration:none;display:block}.board-thumb{background:#fff;border:1px solid #d5d5d0;border-radius:.35rem;margin:0;overflow:hidden}.board-thumb img,.board-thumb .asset-placeholder{aspect-ratio:3/4;object-fit:cover;width:100%}.board-thumb figcaption{display:none}.invite-form{background:#fff;border:1px dashed #c8c8c0;margin:0;padding:.75rem .9rem}.invite-link{word-break:break-all;margin:.75rem 0;font-family:ui-monospace,Consolas,monospace;font-size:.85rem}.project-meta{color:#666;font-size:.85rem}.status-pill{letter-spacing:.03em;text-transform:uppercase;color:#333;background:#fff;border:1px solid #bbb;padding:.2rem .45rem;font-size:.75rem;display:inline-block}.status-approved{color:#2f6b3a;border-color:#2f6b3a}.status-changes_requested{color:#8b5a2e;border-color:#8b5a2e}.status-in_review{color:#2f4f6b;border-color:#2f4f6b}.upload-form{margin:1rem 0 1.5rem}.auth-form textarea{font:inherit;color:#1a1a1a;resize:vertical;background:#fff;border:1px solid #b8b8b8;padding:.65rem .75rem}.asset-grid{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:1rem;margin-top:1rem;display:grid}.asset-card{background:#fff;border:1px solid #d5d5d0;margin:0}.asset-card img,.asset-placeholder{aspect-ratio:1;object-fit:cover;background:#eee;width:100%;display:block}.asset-placeholder{color:#666;place-items:center;font-size:.85rem;display:grid}.asset-card figcaption{justify-content:space-between;gap:.5rem;padding:.5rem .6rem;font-size:.8rem;display:flex}.secondary-btn{color:#1a1a1a;background:0 0}.secondary-btn:hover:not(:disabled){background:#f0f0ee}button.linkish,label.linkish{color:#8b2e2e;font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}button.linkish:hover:not(:disabled){background:0 0}@media (width<=640px){.project-row{grid-template-columns:1fr;gap:.35rem}}.portal-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem;display:grid}.portal-choice{color:inherit;background:linear-gradient(160deg,#f7f4ef 0%,#ebe6dc 55%,#e2ddd2 100%);border:1px solid #cfcfc8;flex-direction:column;gap:.5rem;min-height:9rem;padding:1.5rem 1.25rem;text-decoration:none;transition:transform .16s,border-color .16s;display:flex}.portal-choice:hover{border-color:#1a1a1a;transform:translateY(-2px)}.portal-choice-label{font-size:1.35rem;font-weight:600}.portal-choice-copy{color:#444;font-size:.95rem;line-height:1.4}.project-card-grid{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1.5rem;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.project-card{color:inherit;background:#fafaf8;border:1px solid #d5d5d0;flex-direction:column;gap:.65rem;padding:.55rem .55rem 1rem;text-decoration:none;transition:border-color .16s,transform .16s;display:flex;overflow:visible}.project-card:hover{border-color:#1a1a1a;transform:translateY(-2px)}.project-card-body{gap:.35rem;padding:0 .35rem;display:grid}.design-fan,.design-mosaic{aspect-ratio:1;background:#ecece8;width:100%;margin:0;position:relative;overflow:hidden}.design-fan{place-items:center;display:grid}.design-fan-empty{color:#777;border:1px dashed #ccc;width:100%;font-size:.9rem}.design-mosaic{border:1px solid #d5d5d0;gap:2px;display:grid}.design-mosaic-1{grid-template-rows:1fr;grid-template-columns:1fr}.design-mosaic-2{grid-template-rows:1fr;grid-template-columns:1fr 1fr}.design-mosaic-4{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.design-mosaic-6{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr 1fr}.design-mosaic-9{grid-template-rows:1fr 1fr 1fr;grid-template-columns:1fr 1fr 1fr}.design-mosaic-cell{background:#e8e8e4;min-width:0;min-height:0;position:relative;overflow:hidden}.design-mosaic-cell img,.design-fan-placeholder{object-fit:cover;object-position:center top;background:#e8e8e4;width:100%;height:100%;display:block}.design-mosaic-more{color:#fff;letter-spacing:.02em;background:#1a1a1a8c;place-items:center;font-size:1.1rem;font-weight:600;display:grid;position:absolute;inset:0}.wizard-page{box-sizing:border-box;flex-direction:column;max-width:min(96rem,100%);min-height:100vh;padding-top:.4rem;padding-bottom:.65rem;display:flex}.wizard-thanks{max-width:36rem}.admin-customer-pick{background:#f7f4f1;border:1px solid #e4e4df;padding:.75rem .85rem}.admin-customer-pick h2{margin:0 0 .45rem;font-size:.95rem}.admin-customer-pick p{color:#333;margin:.35rem 0 0;font-size:.9rem;line-height:1.4}.admin-review-wizard .button-link.secondary{padding:.35rem .7rem;font-size:.8rem}.wizard-thanks .lede{margin-bottom:1.25rem}.wizard-thanks .wizard-actions{border-top:none;padding-top:0}.wizard-page .page-header{flex-shrink:0;align-items:center;gap:.4rem 1rem;margin-bottom:.1rem}.wizard-page .page-header h1.wizard-title-line{letter-spacing:0;text-transform:none;color:#555;flex-wrap:wrap;flex:1;align-items:baseline;gap:.2rem .35rem;min-width:0;margin:0;font-size:.82rem;font-weight:500;line-height:1.25;display:flex}.wizard-page .page-header h1.wizard-title-line a{color:inherit;text-underline-offset:.12em;text-decoration:underline}.wizard-title-main{color:#1a1a1a;font-weight:600}.wizard-title-sep{color:#999}.wizard-page .button-row{margin-bottom:0}.wizard-page .button-row button{padding:.35rem .7rem;font-size:.8rem}.wizard-progress{font-size:inherit;font-weight:400;line-height:inherit;color:#666;margin:0}.wizard-banner{flex-shrink:0;margin:.35rem 0 0}.wizard-banner.result{margin-top:.35rem;padding:.55rem .75rem}.wizard{flex-direction:column;flex:1;gap:.65rem;min-height:0;display:flex}.wizard-stage{flex:1;grid-template-columns:minmax(18rem,34vw) minmax(20rem,1fr);align-items:stretch;gap:1rem 1.5rem;min-height:0;margin-top:.15rem;display:grid}.wizard-image{background:#fff;border:1px solid #d5d5d0;flex-direction:column;min-height:0;max-height:100%;margin:0;display:flex;position:relative;overflow:hidden}.wizard-version-bar{background:#f7f4f1;border-top:1px solid #e4e4df;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.45rem;padding:.55rem .65rem;display:flex}.wizard-version-bar .secondary-btn,.wizard-version-bar button{padding:.35rem .65rem;font-size:.82rem}.wizard-version-label{color:#333;text-align:center;flex:auto;font-size:.82rem;font-weight:600}.wizard-image-zoom-btn{cursor:zoom-in;width:100%;min-height:0;max-height:calc(100vh - 10.5rem);text-align:inherit;color:inherit;font:inherit;background:#f0f0ee;border:none;flex:1;margin:0;padding:0;display:block;position:relative}.wizard-image-zoom-btn:hover:not(:disabled){background:#ebebe8}.wizard-image-zoom-hint{color:#333;pointer-events:none;background:#ffffffeb;border:1px solid #1a1a1a33;padding:.3rem .55rem;font-size:.75rem;font-weight:600;position:absolute;bottom:.65rem;right:.65rem}.wizard-image img,.wizard-image .asset-placeholder,.wizard-image-zoom-btn img{aspect-ratio:auto;object-fit:contain;pointer-events:none;background:#f0f0ee;width:100%;height:100%;max-height:calc(100vh - 10.5rem);display:block}.wizard-image .asset-placeholder{flex:1;min-height:0}.design-lightbox{z-index:80;background:#141412b8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.design-lightbox-panel{background:#f7f4f1;border:1px solid #2a2a28;flex-direction:column;width:min(96vw,72rem);max-height:94vh;display:flex;overflow:hidden;box-shadow:0 18px 50px #00000059}.design-lightbox-header{border-bottom:1px solid #d5d5d0;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.65rem;padding:.65rem .85rem;display:flex}.design-lightbox-caption{color:#222;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:.9rem;font-weight:600;overflow:hidden}.design-lightbox-stage{background:#1f1f1c;flex:auto;justify-content:center;align-items:center;min-height:0;padding:.75rem;display:flex;overflow:auto}.design-lightbox-stage img{object-fit:contain;background:#fff;width:auto;max-width:100%;height:auto;max-height:min(100%,94vh - 7rem);display:block}.design-lightbox-hint{color:#555;flex-shrink:0;margin:0;padding:.45rem .85rem .55rem;font-size:.78rem}.wizard-image-declined img{filter:grayscale()brightness(.72);opacity:.55}.wizard-declined-badge,.wizard-forward-badge{color:#f5f5f5;letter-spacing:.02em;background:#282828c7;padding:.35rem .55rem;font-size:.78rem;position:absolute;top:.75rem;left:.75rem}.wizard-forward-badge{background:#1c4830d9}.wizard-fields-muted{opacity:.55}.wizard-image-note{color:#3a3a36;background:#f7f7f4;border-top:1px solid #e4e4df;flex-shrink:0;max-height:3.6rem;margin:0;padding:.45rem .7rem;font-size:.8rem;line-height:1.35;overflow:auto}.wizard-image figcaption,.wizard-image-caption{color:#555;border-top:1px solid #e4e4df;flex-direction:column;flex-shrink:0;align-items:stretch;gap:.45rem;padding:.4rem .7rem;font-size:.8rem;display:flex}.wizard-image-caption-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem .75rem;display:flex}.wizard-image-filename{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.execution-notes-under-file{background:#f7f4f1;border-top:none;border-left:3px solid #8b2e2e;margin:0;padding:.5rem .6rem}.execution-notes-under-file p{white-space:pre-wrap;margin:.2rem 0 0}.export-menus{flex-wrap:wrap;gap:.4rem;display:flex;position:relative}.export-menu{position:relative}.export-trigger{padding:.35rem .65rem!important;font-size:.8rem!important}.export-menu-panel{z-index:5;background:#fff;border:1px solid #1a1a1a;min-width:13rem;display:grid;position:absolute;bottom:calc(100% + .3rem);right:0;box-shadow:0 6px 18px #0000001f}.export-menu-panel button{color:#1a1a1a;width:100%;font:inherit;text-align:left;cursor:pointer;background:#fff;border:none;border-bottom:1px solid #e4e4df;margin:0;padding:.6rem .75rem;font-size:.85rem;display:block}.export-menu-panel button:last-child{border-bottom:none}.export-menu-panel button:hover:not(:disabled){background:#f3f3f0}.export-menu-panel button:disabled{opacity:.55;cursor:not-allowed}.wizard-side{flex-direction:column;gap:.35rem;min-height:0;max-height:calc(100vh - 4.5rem);display:flex}.wizard-fields{flex:1;align-content:start;gap:.55rem;min-height:0;padding-right:.15rem;display:grid;overflow:auto}.wizard-field{color:#333;gap:.45rem;margin:0;font-size:.95rem;display:grid}.wizard-field-label{color:#1a1a1a;font-weight:600}.wizard-field input,.wizard-field textarea{font:inherit;box-sizing:border-box;color:#1a1a1a;background:#fff;border:1px solid #b8b8b8;width:100%;padding:.7rem .8rem}.wizard-field input:focus,.wizard-field textarea:focus{outline-offset:1px;outline:2px solid #1a1a1a}.wizard-field textarea{resize:vertical;min-height:7.25rem;max-height:12rem;line-height:1.4}.design-attachments{border-top:1px solid #e0e0da;gap:.55rem;margin-top:.85rem;padding-top:.75rem;display:grid}.design-attachments-head{gap:.2rem;display:grid}.design-attachments-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.design-attachments-row{background:#fff;border:1px solid #d5d5d0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem .75rem;padding:.45rem .55rem;display:flex}.design-attachments-meta{gap:.1rem;min-width:0;display:grid}.design-attachments-name{word-break:break-word;font-size:.88rem;font-weight:600}.design-attachments-actions{flex-wrap:wrap;gap:.35rem;display:flex}.design-attachments-add{justify-items:start;gap:.35rem;display:grid}.wizard-field-qty{max-width:11rem}.product-fieldset{border:none;min-width:0;margin:0;padding:0}.product-fieldset legend{color:#1a1a1a;padding:0;font-size:.95rem;font-weight:600}.fieldset-hint{color:#5c5c56;margin:.2rem 0 .5rem;font-size:.82rem;line-height:1.35}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;display:grid}.product-option{color:#1a1a1a;background:#fff;border:1px solid #d5d5d0;grid-template-columns:1fr auto;align-items:center;gap:.35rem;margin:0;padding:.35rem .45rem;font-size:.82rem;line-height:1.25;transition:border-color .14s,background-color .14s;display:grid}.product-option:hover{border-color:#1a1a1a}.product-option-selected{background:#f3f3f0;border-color:#1a1a1a}.product-option-main{cursor:pointer;align-items:center;gap:.55rem;min-width:0;margin:0;display:flex}.product-option-main input{accent-color:#1a1a1a;flex-shrink:0;width:1rem;height:1rem;margin:0}.product-option-main span{min-width:0}.product-qty{align-items:center;gap:.35rem;margin:0;display:flex}.product-qty-label{color:#555;letter-spacing:.02em;text-transform:uppercase;font-size:.78rem;font-weight:600}.product-qty input{width:3.5rem;font:inherit;color:#1a1a1a;background:#fff;border:1px solid #b8b8b8;padding:.25rem .35rem}.product-qty input:focus{outline-offset:1px;outline:2px solid #1a1a1a}.wizard-actions{background:#fff;border-top:1px solid #d5d5d0;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.45rem;margin-top:0;padding-top:.55rem;display:flex}.wizard-actions button{padding:.5rem .8rem;font-size:.88rem}.proof-summary{gap:.85rem;display:grid}.proof-product-label{margin:0;font-size:1.05rem}.review-kind-toggle{flex-wrap:wrap;gap:.65rem;margin-top:.75rem;display:flex}.review-kind-active{color:#fff!important;background:#1a1a1a!important}.proof-assign{border-top:1px solid #e4e4df;grid-template-columns:1fr 4.5rem auto;align-items:end;gap:.45rem;padding:.55rem .65rem .75rem;display:grid}.proof-assign label{color:#555;gap:.25rem;font-size:.8rem;display:grid}.proof-assign select,.proof-assign input{font:inherit;color:#1a1a1a;background:#fff;border:1px solid #b8b8b8;padding:.4rem .45rem}.proof-upload-fields{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=720px){.proof-assign,.proof-upload-fields{grid-template-columns:1fr}}.asset-card-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.asset-version-badge{color:#666;font-weight:500}.version-history{border-top:1px solid #e4e4df;padding:.55rem .65rem .75rem}.version-history-list{gap:.65rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.version-history-item{grid-template-columns:4.5rem 1fr;align-items:start;gap:.65rem;display:grid}.version-history-item img,.version-history-item .asset-placeholder{aspect-ratio:1;object-fit:cover;background:#eee;width:4.5rem}.version-history-item.active{outline-offset:2px;outline:1px solid #8b2e2e}.version-history-meta{color:#555;gap:.2rem;font-size:.78rem;display:grid}.version-history-meta strong{color:#1a1a1a}.execution-notes{border-top:1px solid #e4e4df;gap:.45rem;padding:.55rem .65rem .75rem;display:grid}.execution-notes label{color:#555;gap:.25rem;font-size:.8rem;display:grid}.execution-notes textarea{font:inherit;color:#1a1a1a;resize:vertical;background:#fff;border:1px solid #b8b8b8;min-height:3.2rem;padding:.45rem .5rem}.execution-notes-readonly{background:#f7f4f1;border-left:3px solid #8b2e2e;margin:.75rem 0 0;padding:.65rem .75rem;font-size:.9rem}.project-name-date-btn{white-space:nowrap;justify-self:start;width:auto;max-width:max-content;margin:-.35rem 0 .35rem;padding:.4rem .75rem;font-size:.9rem}.upload-progress{gap:.35rem;display:grid}.upload-progress-track{background:#efece4;border:1px solid #c8c8c0;height:.55rem;overflow:hidden}.upload-progress-fill{background:#8b2e2e;height:100%;transition:width .2s}.upload-progress-label{color:#444;margin:0;font-size:.85rem;line-height:1.35}.upload-progress-pct{color:#666;white-space:nowrap}.upload-progress-detail{color:#666;margin:0;font-size:.8rem}.invite-ready-panel{gap:.75rem;display:grid}.invite-ready-form{margin:0}.invite-ready-link{gap:.5rem;display:grid}.delete-customer-confirm{gap:.75rem;margin:0 0 1.25rem;display:grid}.order-app-actions{border-top:1px solid #ddd;gap:.55rem;margin-top:1rem;padding-top:.85rem;display:grid}.order-app-actions .button-link{text-align:center}.setup-artwork-group{color:#333;gap:.25rem;margin-top:.45rem;font-size:.85rem;font-weight:600;display:grid}.setup-artwork-group select{font:inherit;background:#fff;border:1px solid #b8b8b8;max-width:16rem;padding:.35rem .45rem;font-weight:500}.dashboard-todo{margin:0 0 1.75rem}.dashboard-todo-title{margin:0 0 .65rem;font-size:1.15rem}.dashboard-todo-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.dashboard-todo-item{color:inherit;background:#f7f6f2;border:1px solid #c8c8c0;gap:.2rem;padding:.85rem 1rem;text-decoration:none;display:grid}.dashboard-todo-item:hover{background:#efece4;border-color:#1a1a1a}.dashboard-todo-action{letter-spacing:.03em;text-transform:uppercase;color:#8b2e2e;font-size:.78rem;font-weight:700}.dashboard-todo-name{font-size:1.05rem;font-weight:700}.dashboard-todo-meta{color:#555;font-size:.85rem}.material-fieldset{border:1px solid #d5d5d0;margin:.85rem 0 0;padding:.65rem .75rem}.material-fieldset legend{padding:0 .35rem;font-size:.9rem;font-weight:600}.material-options{flex-wrap:wrap;gap:.75rem 1.25rem;margin-top:.35rem;display:flex}.material-options label{align-items:center;gap:.4rem;font-size:.95rem;display:flex}.artwork-approval-form{gap:1rem;max-width:36rem;padding:1rem 0;display:grid}.artwork-approval-form .commitment-box{background:#f7f4f1;border-left:3px solid #8b2e2e;padding:.85rem 1rem;font-size:.95rem;line-height:1.45}.artwork-approval-form .checkout-name-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.setup-order-panel{max-width:52rem}.setup-preview-panel{max-width:64rem}.setup-preview-stage{grid-template-columns:minmax(16rem,1fr) minmax(14rem,18rem);align-items:start;gap:1rem 1.25rem;margin-top:.85rem;display:grid}.setup-preview-side{gap:.85rem;display:grid}.setup-preview-toc{gap:.35rem;max-height:min(50vh,22rem);margin:0;padding:0;list-style:none;display:grid;overflow:auto}.setup-preview-toc-btn{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #d5d5d0;grid-template-columns:1.5rem 1fr;gap:.35rem;margin:0;padding:.45rem .55rem;font-size:.82rem;display:grid}.setup-preview-toc-btn:hover:not(:disabled){background:#f7f4f1;border-color:#1a1a1a}.setup-preview-toc-btn-active{background:#faf3f3;border-color:#8b2e2e;font-weight:600}.setup-preview-toc-btn span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=720px){.setup-preview-stage{grid-template-columns:1fr}}.setup-order-list{gap:.65rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.setup-order-row{background:#fff;border:1px solid #d5d5d0;grid-template-columns:2rem 5.5rem minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.55rem .65rem;display:grid}.setup-order-index{color:#444;text-align:center;font-weight:700}.setup-order-thumb{background:#f0f0ee;border:1px solid #e4e4df;width:5.5rem;height:5.5rem;margin:0;overflow:hidden}.setup-order-thumb img,.setup-order-thumb .asset-placeholder{object-fit:contain;width:100%;height:100%;display:block}.setup-order-meta{gap:.2rem;min-width:0;display:grid}.setup-order-meta strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.setup-order-moves{flex-wrap:wrap;gap:.35rem;display:flex}.execution-notes-readonly strong{letter-spacing:.02em;text-transform:uppercase;color:#666;margin-bottom:.25rem;font-size:.78rem;display:block}.asset-review-meta{color:#555;margin:.35rem 0 0;font-size:.78rem;line-height:1.35}.reorder-grid{grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:1.25rem 1rem;margin-top:.5rem;display:grid}.reorder-tile{flex-direction:column;gap:.45rem;display:flex}.reorder-tile-meta{flex-direction:column;gap:.12rem;padding:.1rem .05rem .25rem;display:flex}.reorder-tile-date,.reorder-tile-qty{color:#5c5c56;font-size:.8rem;line-height:1.3}.reorder-tile-product{color:#1a1a1a;font-size:.95rem;font-weight:700;line-height:1.3}.reorder-tile-meta .reorder-tile-design{color:#5c5c56;font-size:.78rem;line-height:1.35}.reorder-tile-image{aspect-ratio:3/4;background:#f0f0ee;border:1px solid #d5d5d0;position:relative;overflow:hidden}.reorder-tile-image img{object-fit:contain;background:#f0f0ee;width:100%;height:100%;display:block}.reorder-tile-placeholder{color:#7a7a74;place-items:center;height:100%;min-height:10rem;font-size:.85rem;display:grid}.reorder-tile-design{color:#5c5c56;margin:0;font-size:.78rem;line-height:1.35}.reorder-tile-hit{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:0;display:block}.reorder-tile-hit:hover:not(:disabled){background:0 0}.reorder-tile-badge{color:#f5f5f5;background:#1c4830e6;padding:.3rem .45rem;font-size:.75rem;position:absolute;top:.5rem;left:.5rem}.reorder-tile.is-in-cart .reorder-tile-image{outline-offset:-2px;outline:2px solid #2f6b3a}.cart-list{gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.cart-line{border-bottom:1px solid #d5d5d0;grid-template-columns:7.5rem 1fr;gap:1rem;padding-bottom:1.25rem;display:grid}.cart-line-image{aspect-ratio:3/4;background:#f0f0ee;border:1px solid #d5d5d0;overflow:hidden}.cart-line-image img{object-fit:contain;width:100%;height:100%;display:block}.cart-line-body{align-content:start;gap:.55rem;display:grid}.cart-line-product{margin:0;font-weight:600}.cart-line-design,.cart-line-meta{color:#5c5c56;margin:0;font-size:.88rem}.cart-line-fields{grid-template-columns:repeat(auto-fit,minmax(9rem,12rem));gap:.75rem 1rem;display:grid}.checkout-summary{background:#f6f6f4;border-left:3px solid #1a1a1a;margin:0 0 1.5rem;padding:1rem 1.1rem}.checkout-summary h2{margin:0 0 .65rem;font-size:1.05rem}.checkout-summary-list{gap:.35rem;margin:0;padding-left:1.1rem;display:grid}.checkout-form{gap:1.25rem;display:grid}.commitment-box{background:#fff;border:1px solid #d5d5d0;padding:1rem 1.1rem;line-height:1.5}.commitment-box p{margin:0}.checkout-name-row{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1rem;display:grid}.signature-fieldset{border:none;margin:0;padding:0}.signature-fieldset legend{margin-bottom:.35rem;font-weight:600}.signature-pad{gap:.65rem;display:grid}.signature-canvas{touch-action:none;cursor:crosshair;background:#fff;border:1px solid #1a1a1a;width:100%;max-width:32rem;height:10rem}.signature-pad-actions{gap:.65rem;display:flex}@media (width<=1100px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=960px){.wizard-stage{grid-template-columns:minmax(16rem,32vw) minmax(16rem,1fr);gap:1rem}}@media (width<=720px){.portal-choices{grid-template-columns:1fr}.wizard-page{min-height:auto}.wizard-stage{flex:none;grid-template-columns:1fr}.wizard-side,.wizard-image img,.wizard-image .asset-placeholder,.wizard-image-zoom-btn,.wizard-image-zoom-btn img,.wizard-fields{max-height:none}.wizard-image img,.wizard-image .asset-placeholder,.wizard-image-zoom-btn,.wizard-image-zoom-btn img{max-height:55vh}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-option{grid-template-columns:1fr;gap:.3rem}.product-qty{justify-content:flex-start}.product-qty input{width:100%;max-width:4.5rem}.reorder-grid{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr))}.cart-line{grid-template-columns:5.5rem 1fr}}
