@font-face{font-family:Roboto;src:url('../fonts/roboto/roboto-v50-latin-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Roboto;src:url('../fonts/roboto/roboto-v50-latin-300.woff2') format('woff2');font-style:normal;font-weight:300;font-display:swap}

/* Shared printmedia experts identity. */
:root{
    --brand:#210f37;--brand-hover:#39234f;--accent:#ffda62;--mint:var(--accent);
    --sidebar:#210f37;--bg:#f7f6f9;--paper:#fff;--ink:#251e30;
    --muted:#706579;--line:#e8e4ed;--soft:#f1edf6;--radius:14px;
    --font:Roboto,"Segoe UI",Arial,sans-serif;--danger:#a43b40;--warning:#8a621e;
}
body{font-family:var(--font);font-size:16px;line-height:1.6;background:var(--bg);color:var(--ink)}
h1{font-size:36px;font-weight:300;line-height:1.18;letter-spacing:-1px}
h2{font-size:19px;font-weight:600;letter-spacing:-.35px}
h3{font-size:16px;font-weight:600}strong{font-weight:600}
address{line-height:1.45}
small,.small,.small-link{font-size:14px}table{font-size:14px}.field small,.field p{font-size:13px}
.pagination,.section-label,.info-list dt{font-size:13px}.selected-file small{font-size:12px}
a{color:var(--brand)}a:hover{color:#67428b}
:focus-visible{outline:3px solid #9678b6;outline-offset:3px}
.icon{width:20px;height:20px;flex-shrink:0;display:inline-block;vertical-align:middle}
.eyebrow{font-size:12px;letter-spacing:1.6px;color:#85768f;font-weight:600}
.button{border-radius:8px;min-height:44px;padding:11px 19px;font-weight:600;font-size:15px;gap:10px;transition:background .12s,border-color .12s}
.button:hover{background:var(--brand-hover);border-color:var(--brand-hover)}
.button-secondary{background:#fff;color:var(--brand);border-color:#ddd5e7}
.button-secondary:hover{background:var(--soft);border-color:#c3b3d2;color:var(--brand)}
.button-accent{background:var(--accent);border-color:var(--accent);color:var(--brand)}
.button-accent:hover{background:#f4ca42;border-color:#f4ca42;color:var(--brand)}
.button-danger{background:var(--danger);border-color:var(--danger)}
.button-small{min-height:36px;padding:7px 12px;font-size:14px}
.button-quiet{background:transparent;border-color:transparent;color:var(--muted);font-weight:400}
.button-quiet:hover{background:#f9edef;border-color:transparent;color:var(--danger)}
.button:disabled{opacity:.4}
.panel{border-color:var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 3px 16px #210f3703}
.panel-table,.product-card{padding:0}.stack{gap:24px}
.badge{border-radius:5px;background:var(--soft);color:var(--muted);font-size:12px;letter-spacing:.15px;padding:5px 9px}
.badge-success,.badge-paid,.badge-shipped{background:#eaf4ed;color:#356a4b}
.badge-pending,.badge-received,.badge-data_check{background:#fff3cb;color:#805f18}
.badge-needs_clarification,.badge-failed{background:#fff0de;color:#965b24}
.badge-production,.badge-ready{background:#ede5f7;color:#684290}
.badge-cancelled,.badge-expired{background:#f6e9ec;color:#96535b}
.alert{background:#f3eff8;border-color:#e2d8ed;color:#665275}
.alert-info{background:#f3eff8;border-color:#e2d8ed;color:#665275}
.alert-success{background:#edf7ef;color:#346740;border-color:#d2e8d6}
.alert-warning{background:#fff8e1;color:#80591d;border-color:#f1dfaa}
.alert-error{background:#fff0ef;color:#963e38;border-color:#edcfcb}
.field label{color:#4d405c;font-size:14px}
.field input,.field select,.field textarea,table input{border-color:#ded8e5;border-radius:7px;min-height:45px;padding:11px 13px}
.field input:hover,.field select:hover,.field textarea:hover{border-color:#b8a5cb}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #ece4f6;border-color:#82649e}
.field input::placeholder{color:#9b93a4}.field input[readonly]{background:#f5f2f8}
.field input[type=file]::file-selector-button{background:var(--soft);color:var(--brand)}
.checkbox{color:#6e6379;font-size:14px}.field small{color:var(--muted)}
th{background:#f7f5fa;color:#84758e;font-size:12px;letter-spacing:.8px}
tbody tr:hover{background:#faf8fc}th,td{border-color:var(--line)}
.table-wrap{position:relative}
.back-link{font-size:14px;color:#83758e;margin-bottom:19px}.back-link:hover{color:var(--brand)}
.page-heading{align-items:flex-end;margin-bottom:32px}.page-heading h1{margin-bottom:10px}
.page-heading .muted{font-size:15px;max-width:650px}
.empty-icon{color:#937caa}.section-label{color:#84758e}

/* Navigation and application frame. */
.sidebar{width:240px;background:var(--sidebar);color:white}
.sidebar>.brand{padding:39px 31px 29px;align-items:flex-start}
.brand-wordmark{font-size:25px;line-height:1.08;letter-spacing:-.9px;font-weight:400}
.brand-wordmark>span{font-weight:300}.brand-period{color:var(--accent);font-weight:600}
.brand-subtitle{font-size:10px;letter-spacing:2.4px;color:#a99bb7;margin-top:16px;font-weight:400}
.primary-navigation{padding:27px 17px}.nav-caption{color:#9887aa;font-size:11px;letter-spacing:1.4px;margin-bottom:17px}
.nav-link{font-size:15px;color:#cabfd6;min-height:46px;margin-bottom:6px;gap:13px;border-radius:8px;padding:12px 15px;font-weight:400}
.nav-link .icon{color:#a999bc;width:18px;height:18px}
.nav-link.active{background:var(--accent);color:var(--brand);font-weight:600}
.nav-link.active .icon{color:var(--brand)}.nav-link:hover{background:#352147;color:#fff}
.nav-link.active:hover{background:#f4d15e;color:var(--brand)}
.sidebar-footer{margin: auto 23px 0;border-color:#3e2a50;padding:24px 0}
.avatar{width:36px;height:36px;background:#432d58;color:#e7ddef;border-radius:10px;font-weight:400}
.account-info>span{color:#9e8bae;font-size:12px}.account-info strong{font-weight:400;font-size:14px}
.logout-button{color:#b8a6c7;padding:7px}.logout-button:hover{color:var(--accent)}
.app-content{margin-left:240px}.topbar{height:72px;background:#fff;border-color:var(--line);font-size:14px;padding:0 44px}
.environment-badge{border:1px solid var(--line);padding:5px 10px;border-radius:30px;color:#83748e;font-size:12px}
.environment-badge:before{background:#9c81b4;width:5px;height:5px}
.main-content{padding:36px 44px 52px;max-width:1540px}
.app-footer{color:#998da3;margin:0 44px;font-size:12px;border-color:var(--line)}
.mobile-account{color:#c9bdd4}.mobile-account .button{border-color:#594267;color:#eee5f6;background:transparent}
.brand-logo{display:block;width:168px;max-width:100%;height:auto}.brand-lockup{display:block}
.guest-header .brand-logo-surface{background:var(--brand);padding:17px 21px;border-radius:9px}

/* Product selection: restrained print samples and clearer actions. */
.catalog-filter{border-color:var(--line);border-radius:10px;padding:15px 18px;box-shadow:0 2px 8px #210f3702}
.product-grid{gap:24px}.product-card{border-radius:13px;transition:border-color .15s,box-shadow .15s}
.product-card:hover{border-color:#cbb9dc;box-shadow:0 7px 22px #210f3707}
.product-visual{height:240px;background:#eee8f5;color:#512d74;padding:30px}
.visual-1{background:#f8efce;color:#735e27}.visual-2{background:#e8e3ed;color:#4b315e}.visual-3{background:#eee7e6;color:#765255}
.product-visual.has-image{padding:0;background:#f7f6fb}
.product-visual.has-image .visual-caption{padding:4px 9px;border-radius:5px;background:#ffffffeb;color:var(--muted)}
.product-paper{box-shadow:5px 8px 0 #210f3710,8px 13px 22px #210f3712;background:#fff;border:0;border-top:5px solid currentColor;width:134px;height:175px;transform:rotate(-6deg)}
.product-paper strong{font-weight:400;letter-spacing:-.3px}.paper-kicker{font-size:7px;letter-spacing:1.4px}
.visual-1 .product-paper{border:0;border-top:5px solid currentColor;transform:rotate(6deg)}
.visual-2 .product-paper{background:#fff}.visual-caption{color:#8c7d98;bottom:16px;left:20px;font-size:11px;letter-spacing:1.5px}
.product-card-content{padding:24px 24px 0}.product-card h2{font-size:20px;font-weight:400;line-height:1.3}
.product-card .eyebrow{font-size:11px;color:#9276a7}.product-specification{font-size:14px;line-height:1.8;margin-top:12px;color:#81758b}
.product-meta{font-size:12px;color:#8c7b99;margin:17px 0 21px}.product-card-footer{padding:18px 0}
.price-start{font-size:20px;font-weight:400;color:var(--brand)}.product-card-footer small{font-size:11px}
.round-link{width:37px;height:37px;border-radius:8px;background:var(--accent);color:var(--brand)}
.round-link:hover{background:#f0c842;color:var(--brand)}
.quiet-note{border-color:var(--line);color:#8a7c95;font-size:13px;margin-top:30px}

/* Order workspace. */
.order-steps{gap:32px;border-color:var(--line);padding:0 0 25px;margin-bottom:28px;color:#a093ac;font-size:14px}
.order-steps li>span{background:#ece6f2;color:#8d779e;width:26px;height:26px;font-size:13px}
.order-steps .current{color:var(--brand)}.order-steps .current>span{background:var(--accent);color:var(--brand)}
.order-layout{grid-template-columns:minmax(0,1fr) 300px;gap:26px}
.product-spec-details{border:0;border-bottom:1px solid var(--line);padding:0 0 20px;border-radius:0;background:transparent;box-shadow:none}
.product-spec-details>summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;font-size:14px;color:#766084}
.product-spec-details>summary::-webkit-details-marker{display:none}.product-spec-details>summary:after{content:"";margin-left:auto;width:18px;height:18px;background:currentColor;mask:url('/assets/icons/plus.svg') center/contain no-repeat}
.product-spec-details[open]>summary:after{mask-image:url('/assets/icons/minus.svg')}.product-spec-details>p{padding:14px 0 0;font-size:14px;color:var(--muted)}
.step-heading{display:flex;align-items:center;gap:13px}.step-number{display:grid;place-items:center;width:32px;height:32px;background:var(--soft);color:#8a6b9f;border-radius:8px;font-size:13px;font-weight:400;flex-shrink:0}
.step-heading h2{font-size:19px}.step-description{font-size:14px;color:var(--muted);margin-top:3px}
.artwork-panel{padding:27px}.print-requirements{display:flex;flex-wrap:wrap;gap:7px 17px;align-items:center;padding:0;background:none;border:0;font-size:13px;color:#8a7b96;margin-top:-8px;line-height:1.8}
.print-requirements strong{font-weight:400;color:#665073}.print-requirements>span+span{border-left:1px solid var(--line);padding-left:17px}
.upload-zone{padding:0;background:transparent;border:0;border-radius:0;align-items:stretch;gap:15px}
.upload-picker{position:relative;display:flex;align-items:center;gap:20px;padding:25px;min-height:142px;border:1.5px dashed #c6b3d6;border-radius:10px;background:#fbf9fd;cursor:pointer;transition:border-color .1s,background .1s;overflow:hidden}
.upload-picker:hover,.upload-picker.is-dragover{background:#f5effb;border-color:#765190}
.upload-picker:focus-within{outline:3px solid #82649e;outline-offset:2px}
.upload-picker .upload-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:1}
.upload-picker-icon{width:51px;height:57px;border:1px solid #e0d4eb;background:#fff;display:grid;place-items:center;border-radius:8px;flex:0 0 auto;box-shadow:3px 3px 0 #ece3f4;color:#795294}
.upload-picker-icon .icon{width:25px;height:25px}.upload-picker-copy{min-width:0;display:flex;flex-direction:column;gap:5px}
.upload-picker-copy strong{font-size:16px;font-weight:400;overflow-wrap:anywhere}.upload-picker-copy small{font-size:13px;color:#95849f}
.upload-picker-copy em{font-style:normal;color:#67417f;text-decoration:underline;text-underline-offset:3px}
.upload-picker.has-file{min-height:110px;background:#f8f5fc;border-style:solid}
.upload-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.upload-actions>.actions{gap:9px}.upload-status{font-size:14px;line-height:1.7}.upload-progress{height:7px;accent-color:var(--brand)}
.selected-file{border-color:#e6ddee;background:#f9f6fc;border-radius:8px;padding:13px 15px;gap:12px}
.selected-file>.icon{color:#826198}.selected-file strong{font-size:14px;font-weight:400}.selected-file small{color:#9b88a8}
.preview-note{border-top:1px solid var(--line);padding-top:15px;font-size:13px;color:#94829f}
.preview-note>summary{cursor:pointer;display:inline-flex;align-items:center;gap:7px;list-style:none;color:#847090}
.preview-note>summary:before{content:"";background:currentColor;width:16px;height:16px;mask:url('/assets/icons/info.svg') center/contain no-repeat}
.preview-note>p{margin-top:10px;line-height:1.8;max-width:650px}.preview-disclaimer{color:#94859f}
.price-sidebar{top:25px}.price-panel{border:1px solid #dbd0e5;background:#fff;padding:25px;position:relative;overflow:hidden}
.price-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--accent)}
.price-panel .eyebrow{color:#9376a8;font-size:11px;letter-spacing:1.6px;margin-top:4px}.price-panel h2{font-size:22px;font-weight:300}
.price-panel>p{margin:7px 0 19px;font-size:13px}.price-breakdown{font-size:14px;gap:13px;margin:21px 0}
.price-breakdown dt{color:#8b7d97}.price-breakdown dd{font-weight:400;color:#4c365e}
.price-total{margin-left:-25px;margin-right:-25px;padding:20px 25px;margin-bottom:0;background:#f6f1fb;border:0}
.price-total dt{font-size:14px;color:var(--brand)}.price-total dd{font-size:28px;font-weight:400;letter-spacing:-.8px}
.payment-note{color:#9a84a9;border-color:var(--line);align-items:center;font-size:12px}.payment-note .icon{width:15px;height:15px}
.tier-table caption{font-size:13px;color:#9b88a8}.tier-table th{font-size:12px}.tier-table td{font-size:14px}
.status-timeline li{border-color:#e0d5e9}.timeline-dot{background:#9671b3}.document-row{font-size:15px}

/* The document remains the focus; inspection detail stays secondary. */
.pdf-preview{background:#f1eef5;border-color:#e8e1ee;border-radius:10px;padding:20px;min-height:0;overflow:hidden}
.pdf-preview[data-pdf-state="empty"],.pdf-preview:not([data-pdf-state])[data-pdf-url=""]{display:none}
.pdf-toolbar{justify-content:space-between;gap:10px;margin:18px 0 0}
.pdf-toolbar button{min-height:33px;font-size:13px;color:#725584;border-color:#e2d7eb;border-radius:6px;padding:6px 11px;background:#fff}
.pdf-toolbar button:hover:enabled{background:#f8f3fc;border-color:#bfa8d1}.pdf-page-label{font-size:13px;color:#83708f}
.pdf-canvas-wrap canvas,.pdf-layout-stage{box-shadow:0 4px 18px #210f3714}.pdf-layout-stage canvas{box-shadow:none}
.pdf-preview .pdf-status{font-size:12px;color:#9a8ba5;margin:13px 0 0;padding:0;line-height:1.7}
.pdf-preview .pdf-status.error{color:var(--danger);font-size:14px}
.pdf-guide-toggle{font-size:13px;color:#8a729b;margin:12px 0;gap:7px}.pdf-guide-toggle input{height:15px;width:15px}
.pdf-layout-summary{margin:18px 0 0;background:#fff;border:1px solid #e4dceb;border-radius:8px;padding:13px 15px;font-size:13px;line-height:1.65}
.pdf-layout-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.pdf-layout-format-name{font-weight:600;color:var(--brand);font-size:14px}
.pdf-layout-status{font-weight:400;font-size:13px;color:var(--muted)}
.pdf-layout-summary .pdf-layout-status:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;margin-right:6px;vertical-align:middle}
[data-layout-state="match"] .pdf-layout-summary,[data-layout-state="warning"] .pdf-layout-summary,[data-layout-state="error"] .pdf-layout-summary{background:#fff;border-color:#e4dceb}
[data-layout-severity="notice"] .pdf-layout-summary{border-color:#ecdbab;background:#fffdf5}
[data-layout-severity="warning"] .pdf-layout-summary,[data-layout-state="error"] .pdf-layout-summary{border-color:#e4b8b8;background:#fff9f8}
[data-layout-format-state="match"] .pdf-layout-status{color:#547358}
[data-layout-format-state="warning"] .pdf-layout-status,[data-layout-state="error"] .pdf-layout-status{color:var(--danger)}
.pdf-layout-details-label{display:inline-block;font-size:13px;text-decoration:none;font-weight:400;color:#826495;cursor:pointer;padding:9px 0 0}
.pdf-layout-details-label:hover{text-decoration:underline}.pdf-layout-pages{font-size:12px;max-height:200px;color:#8b7e96;margin-top:10px}
.pdf-layout-pages li{border-color:#ece5f2}.pdf-layout-pages li[data-layout-issues]:not([data-layout-issues=""]){color:#937540}
.pdf-preview .pdf-layout-current{font-size:12px;color:#897593;margin:10px 0;line-height:1.8}
.pdf-layout-explanation{font-size:12px;color:#9b8aa6;line-height:1.8}.pdf-layout-heading{font-size:14px}
.pdf-layout-page-count{font-size:13px;color:#9a7839}.pdf-layout-page-count.error{color:#9a7839;font-weight:400}
.pdf-guide-legend{font-size:11px;gap:7px 14px;color:#9a8ba4;margin:12px 0 0}
.pdf-layout-comparison{color:#a193ab}.pdf-layout-method>summary{font-size:12px;color:#9b88a8}

/* Sign-in, in the same identity. */
.guest-body{background:#f6f3f9}.guest-header{max-width:1320px;padding:36px 52px;color:var(--brand)}
.guest-header .brand-wordmark{font-size:27px}.guest-header .brand-period{color:#bb9027}
.guest-header>.muted{font-size:13px;letter-spacing:.2px;color:#9a88aa}
.guest-content{max-width:1150px;grid-template-columns:1fr 425px;gap:105px;padding-top:28px;padding-bottom:75px}
.auth-intro h1{font-size:58px;line-height:1.1;letter-spacing:-2px;font-weight:300;color:var(--brand)}
.auth-intro h1>span{color:#9076a5}.auth-intro>p{font-size:15px;color:#97869f;max-width:330px;margin-top:24px}
.auth-intro .eyebrow{color:#9880aa;font-size:11px}.auth-panel{box-shadow:0 15px 50px #210f3707;border-color:#e5dced;padding:38px}
.auth-panel h2{font-size:29px;font-weight:300}.auth-help{color:#a392ae;border-color:var(--line)}
.auth-illustration{height:245px;margin-top:42px}.sample-sheet{border:0;width:164px;height:215px}
.sheet-back{background:var(--accent);transform:rotate(-12deg);left:35px;top:7px;box-shadow:5px 8px 14px #210f3710}
.sheet-front{background:var(--brand);transform:rotate(6deg);left:115px;padding:27px 24px;box-shadow:7px 12px 22px #210f3720}
.sheet-front>span{color:var(--accent);font-size:31px;letter-spacing:-1px;line-height:1.03;font-weight:300}.sheet-front>small{color:#a897b8;font-size:6px;left:24px;bottom:20px}
.print-dot{display:none}.guest-footer{color:#ac9ab6;font-size:12px}

/* Keep small helper text legible on the white and lilac surfaces. */
.eyebrow,.field input::placeholder,th,.back-link,.section-label,.environment-badge,.app-footer,
.visual-caption,.product-card .eyebrow,.product-specification,.product-meta,.quiet-note,
.order-steps,.order-steps li>span,.step-number,.print-requirements,.upload-picker-copy small,
.selected-file small,.preview-note,.preview-note>summary,.preview-disclaimer,.price-panel .eyebrow,
.price-breakdown dt,.payment-note,.tier-table caption,.pdf-page-label,.pdf-preview .pdf-status,
.pdf-guide-toggle,.pdf-layout-pages,.pdf-preview .pdf-layout-current,.pdf-layout-explanation,
.pdf-guide-legend,.pdf-layout-comparison,.pdf-layout-method>summary,.guest-header>.muted,
.auth-intro>p,.auth-intro .eyebrow,.auth-help,.guest-footer{color:var(--muted)}
.order-steps .current,.order-steps .current>span,.price-total dt{color:var(--brand)}
.pdf-preview .pdf-status.error{color:var(--danger)}
.pdf-layout-page-count,.pdf-layout-page-count.error,.pdf-layout-bleed-notice,
.pdf-layout-pages li[data-layout-issues]:not([data-layout-issues=""]){color:#806022}
.pdf-guide-legend[data-bleed-only="true"] .pdf-legend-missing:before{background:repeating-linear-gradient(135deg,#fff7df 0 3px,#b77b09 3px 4px);border-color:#b77b09}

@media(min-width:1600px){.main-content{padding-top:43px}.product-visual{height:270px}}
@media(max-width:1250px){
    .sidebar{width:214px}.sidebar>.brand{padding:32px 25px}.app-content{margin-left:214px}
    .main-content{padding:32px 28px 42px}.topbar{padding:0 28px}.app-footer{margin:0 28px}
    .order-layout{grid-template-columns:minmax(0,1fr) 270px;gap:21px}.panel{padding:23px}.panel-table,.product-card{padding:0}
    .price-total{margin-left:-23px;margin-right:-23px;padding:18px 23px}.product-card-content{padding:23px 20px 0}
    .product-visual{height:205px}.guest-content{gap:65px}.brand-wordmark{font-size:23px}
}
@media(max-width:1050px){
    .order-layout{display:flex;flex-direction:column}.order-layout>div,.order-layout>aside{width:100%}.price-sidebar{position:static;order:0}
    .price-panel .price-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:12px 30px}.price-panel .price-total{grid-column:1/-1;margin-bottom:0}
    .price-panel .price-divider{border:0;padding-top:0;margin:0}.guest-content{gap:40px;grid-template-columns:1fr 400px}.auth-intro h1{font-size:49px}
}
@media(max-width:800px){
    .sidebar{position:relative;width:100%;display:block}.sidebar>.brand{padding:21px 24px}.brand-wordmark{font-size:20px}
    .sidebar .brand-subtitle{display:none}.menu-toggle{right:24px;top:25px;min-height:36px;background:transparent;color:#f2eaf8;border-color:#5a416e;border-radius:6px}
    .primary-navigation{padding:5px 17px 18px}.nav-caption{display:none}.primary-navigation.is-open{display:grid;gap:4px}
    .nav-link{font-size:14px;min-height:41px;padding:10px 12px}.app-content{margin-left:0}.sidebar-footer{display:none}
    .topbar{height:54px;padding:0 24px;font-size:13px}.environment-badge{font-size:11px}.main-content{padding:28px 24px 40px}
    .app-footer{margin:0 24px}.page-heading h1{font-size:31px}.page-heading .muted{font-size:14px}.product-visual{height:220px}
    .guest-header{padding:28px 28px}.guest-content{max-width:490px;display:block;padding:25px 24px 45px}.auth-intro{display:none}
    .guest-header .brand-wordmark{font-size:22px}.guest-header>.muted{display:none}.auth-panel{padding:33px}
}
@media(max-width:550px){
    .main-content{padding:25px 16px 32px}.topbar{padding:0 16px}.page-heading{align-items:flex-start;gap:15px;margin-bottom:26px}
    .page-heading h1{font-size:30px}.panel{padding:21px}.panel-table,.product-card{padding:0}.artwork-panel{padding:19px}
    .order-steps{gap:13px;font-size:12px;margin-bottom:23px}.order-steps li>span{width:22px;height:22px}
    .step-heading h2{font-size:17px}.step-number{width:29px;height:29px}.section-heading{gap:10px}
    .upload-picker{padding:20px 16px;gap:15px;min-height:138px}.upload-picker-icon{width:42px;height:48px}
    .upload-picker-copy strong{font-size:15px}.upload-actions{align-items:flex-start}.upload-actions .button{font-size:14px;padding:9px 13px}
    .print-requirements{gap:4px 11px;font-size:12px}.print-requirements>span+span{padding-left:11px}
    .selected-file{flex-wrap:wrap}.selected-file a{margin-left:32px}.pdf-preview{padding:13px}
    .pdf-toolbar{gap:8px}.pdf-toolbar button{padding:5px 8px;font-size:12px}.pdf-page-label{font-size:12px}
    .pdf-layout-status-row{gap:4px 12px}.pdf-layout-summary{padding:11px 12px}.pdf-layout-format-name{font-size:13px}
    .pdf-guide-legend{font-size:11px}.price-panel .price-breakdown{display:flex;flex-direction:column}
    .price-total{margin-left:-21px;margin-right:-21px;padding:18px 21px}.price-panel .price-divider{border-top:1px solid var(--line);padding-top:12px}
    .product-card-content{padding:24px 23px 0}.product-visual{height:242px}.product-card h2{font-size:22px}.app-footer{margin:0 16px}
    .catalog-filter{padding:12px}.form-grid{gap:19px}.guest-header{padding:25px 24px}.auth-panel{padding:29px 25px}
}
/* One decision at a time, with the price overview in the final step. */
.checkout-navigation{margin:0 0 25px}.checkout-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.checkout-steps li{min-width:0;position:relative}.checkout-steps li+li{border-left:1px solid var(--line)}
.checkout-steps button{display:flex;align-items:center;gap:12px;width:100%;min-height:76px;padding:18px;border:0;background:transparent;color:var(--muted);font-size:15px;text-align:left}
.checkout-steps button:hover{background:#f7f3fb;color:var(--brand)}.checkout-steps button[aria-current=step]{background:var(--brand);color:#fff}
.checkout-step-number{display:grid;place-items:center;width:29px;height:29px;flex-shrink:0;border:1px solid #d8ccdf;border-radius:50%;font-size:14px}
[aria-current=step] .checkout-step-number{color:var(--brand);background:var(--accent);border-color:var(--accent)}
.checkout-steps button:disabled{cursor:not-allowed;opacity:.65}.checkout-steps button:focus-visible{outline-offset:-4px;outline-color:#9d7ac1}
.wizard-status{font-size:15px;color:var(--muted);margin:0 0 19px}.wizard-status:empty{display:none}.wizard-status.error{color:var(--danger)}
.wizard-status:not(.error){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.wizard-main{min-width:0}.wizard-main>.product-spec-details{margin-bottom:22px}.wizard-panel{margin:0!important;padding:30px}
.wizard-panel h2{font-size:25px;font-weight:400;line-height:1.3;letter-spacing:-.6px}.wizard-panel h2:focus{outline:none}
.wizard-panel .eyebrow{margin-bottom:8px;font-size:11px}.wizard-panel .step-description{margin-top:9px;font-size:15px}
.wizard-panel .quantity-field input{font-size:25px;max-width:280px;padding:13px 16px;min-height:62px;letter-spacing:-.6px}
.wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:24px;margin-top:5px}
.wizard-actions .button{min-height:46px}.wizard-actions .button-accent{margin-left:auto}
.artwork-source-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:0;padding:0;margin:0;min-width:0}
.artwork-source-options legend{font-size:14px;padding:0;margin-bottom:12px;color:var(--muted)}
.source-option{position:relative;display:flex;align-items:flex-start;gap:12px;border:1px solid #ddd3e6;border-radius:9px;padding:17px;cursor:pointer;min-width:0;background:#fff}
.source-option:has(input:checked){border-color:#76518d;background:#f7f2fb;box-shadow:inset 0 0 0 1px #76518d}
.source-option:focus-within{outline:3px solid #82649e;outline-offset:2px}.source-option input{accent-color:var(--brand);margin:4px 0 0;width:16px;height:16px;flex-shrink:0}
.source-option>span{display:grid;grid-template-columns:19px minmax(0,1fr);gap:5px 8px;min-width:0}.source-option .icon{width:18px;height:18px;margin-top:2px;color:#6e4b87}
.source-option strong{font-size:14px;font-weight:600;line-height:1.6}.source-option small{grid-column:2;font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.address-form-section>h3,.address-form-section>.section-heading{margin-bottom:21px}.address-form-section+.address-form-section{padding-top:26px;border-top:1px solid var(--line)}
[data-wizard-current-step="4"] .wizard-layout{grid-template-columns:minmax(0,1fr)}
[data-wizard-current-step="4"] .price-sidebar{display:none}[data-wizard-current-step="4"] .product-spec-details{display:none}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.review-card{padding:21px;background:#faf8fc;border:1px solid var(--line);border-radius:9px;min-width:0;overflow-wrap:anywhere}
.review-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:17px}.review-card-heading h3{font-size:14px;color:var(--muted);font-weight:400}
.review-edit{background:none;border:0;padding:0;color:#654180;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:13px;line-height:1.8;text-align:right}
.review-card>strong{font-size:16px;font-weight:400}.review-card>p{margin-top:9px}.review-card address{font-size:15px;white-space:pre-line}.review-quantity{font-size:16px;color:var(--brand)}
.review-file{display:flex;align-items:flex-start;gap:9px;font-size:15px}.review-file strong{font-weight:400;overflow-wrap:anywhere}.review-file .icon{color:#7b5696}
.review-totals{max-width:540px;width:100%;margin-left:auto;border:1px solid var(--line);border-radius:10px;overflow:hidden;padding:22px 24px 0}.review-totals h3{font-size:15px}
.review-totals .price-breakdown{margin-bottom:0}.review-totals .price-total{margin:0 -24px;padding:20px 24px;background:#fff4ca}.review-totals .price-total dd{font-size:27px}
.artwork-approval{padding:20px 22px;border:1px solid #ddd2e7;background:#faf7fd;border-radius:9px;font-size:14px;color:#665572;gap:13px}.artwork-approval input{width:19px;height:19px}.artwork-approval strong{display:block;font-size:16px;color:var(--brand);margin-bottom:5px}
.wizard-panel+.wizard-panel{margin-top:0}.wizard-layout .price-panel h2{font-size:21px;line-height:1.35}
@media(max-width:1050px){.wizard-layout .price-panel .price-breakdown{display:grid;grid-template-columns:1fr 1fr}.wizard-layout .price-panel .price-total{grid-column:1/-1}}
@media(max-width:650px){
    .checkout-steps button{flex-direction:column;gap:7px;justify-content:center;padding:13px 4px;min-height:88px;font-size:13px;text-align:center}.checkout-step-number{width:25px;height:25px;font-size:13px}
    .checkout-navigation{margin-bottom:20px}.wizard-panel{padding:21px}.wizard-panel h2{font-size:23px}.wizard-panel .step-description{font-size:14px}
    .wizard-actions{flex-wrap:wrap;padding-top:20px;gap:10px}.wizard-actions .button{font-size:14px;padding:11px 13px}.wizard-actions .button-accent{gap:7px}
    .artwork-source-options{grid-template-columns:1fr}.source-option{padding:15px}.review-grid{grid-template-columns:1fr;gap:13px}.review-card{padding:18px}
    .review-totals{padding:20px 18px 0}.review-totals .price-total{margin:0 -18px;padding:19px 18px}.artwork-approval{padding:17px 16px;font-size:13px}
    .address-form-section .section-heading{flex-direction:column;align-items:flex-start;gap:12px}.wizard-layout .price-panel .price-breakdown{display:flex}
    .sidebar>.brand .brand-logo{width:150px}.guest-header .brand-logo-surface{padding:14px 17px}
}
/* Compact order workspace: the active task starts above the fold. */
.app-content:has([data-order-wizard]) .topbar{height:52px}
.main-content:has([data-order-wizard]){padding-top:18px}
.order-product-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;position:relative}
.order-product-heading .back-link{margin:0 0 5px;font-size:13px}.order-product-heading h1{font-size:26px;line-height:1.25;font-weight:400;letter-spacing:-.6px;margin:0}
.order-product-info{font-size:13px;flex-shrink:0}.order-product-info>summary{cursor:pointer;color:var(--muted);text-decoration:underline;text-underline-offset:3px;padding:9px 0}
.order-product-info>div{position:absolute;right:0;top:100%;width:min(480px,100%);background:#fff;border:1px solid var(--line);border-radius:10px;padding:19px;z-index:15;box-shadow:0 8px 22px #210f3712;font-size:14px;line-height:1.8}
.order-product-info p{margin-top:10px}.checkout-navigation{margin-bottom:16px}.checkout-steps button{min-height:57px;padding:13px 17px;font-size:14px}
.wizard-panel{padding:22px;gap:17px;scroll-margin-top:16px}.wizard-panel .step-description{font-size:14px;margin-top:5px}.wizard-panel h2{font-size:22px}
.wizard-panel .print-requirements{margin-top:0;font-size:12px}
.wizard-panel .upload-picker{min-height:98px;padding:20px;gap:16px}.wizard-panel .upload-picker.has-file{min-height:88px}.wizard-panel .upload-picker-icon{width:43px;height:48px}
.wizard-panel .source-option{padding:13px 15px}.wizard-panel .artwork-source-options legend{margin-bottom:9px}.wizard-panel .upload-zone{gap:11px}
.upload-actions>.actions:not(:has(>button:not([hidden]))){display:none}.upload-actions>[data-remove-upload]{margin-left:auto}.upload-actions:not(:has(button:not([hidden]))){display:none}
.upload-status:empty{display:none}.upload-status{margin:0}.upload-actions [data-remove-upload]{padding:7px 10px;min-height:36px;font-size:13px;gap:7px}.upload-actions [data-remove-upload] .icon{width:16px;height:16px}
.reuse-picker{margin-top:13px;border-top:1px solid var(--line);padding-top:12px}.reuse-picker>summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--brand);list-style:none}
.reuse-picker>summary:after{content:"";margin-left:auto;color:var(--muted);width:18px;height:18px;background:currentColor;mask:url('/assets/icons/plus.svg') center/contain no-repeat}.reuse-picker[open]>summary:after{mask-image:url('/assets/icons/minus.svg')}.reuse-picker>summary::-webkit-details-marker{display:none}.reuse-picker>summary .icon{width:17px;height:17px}
.reuse-content{display:grid;gap:12px;padding-top:15px}.reuse-search{display:flex;gap:10px}.reuse-search input,.reuse-content>select{font:inherit;font-size:14px;color:var(--ink);width:100%;min-width:0;border:1px solid #ded8e5;border-radius:7px;padding:10px 12px;background:#fff}
.reuse-search input:focus-visible,.reuse-content>select:focus-visible{outline-color:#82649e}.reuse-actions,.reuse-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px}.reuse-pagination{justify-content:flex-start}
.library-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:0;padding:22px 24px}.library-toolbar .field{flex:1 1 140px}.library-toolbar .search-field{flex:1.4 1 210px}.library-toolbar input,.library-toolbar select{min-width:0}.library-toolbar>.button,.library-toolbar>.small-link{flex-shrink:0}.library-toolbar>.small-link{align-self:center}.uploads-table td:first-child{min-width:180px;max-width:350px;overflow-wrap:anywhere}.uploads-table .actions{flex-wrap:nowrap}
.upload-library-card{min-width:0}.upload-library-card .pdf-preview{margin-top:10px}.library-filename{overflow-wrap:anywhere}.library-meta{display:flex;gap:8px 18px;flex-wrap:wrap;color:var(--muted);font-size:14px}
.library-use-form{display:flex;flex-direction:column;gap:15px}.library-delete-button{color:var(--danger)}.library-delete-button .icon{width:17px;height:17px}.library-empty{padding:55px 25px;text-align:center}.library-empty .icon{width:36px;height:36px;color:#8a6a9e;margin:0 auto 15px}.library-empty h2{margin-bottom:9px}
@media(max-width:800px){.app-content:has([data-order-wizard]) .topbar{height:42px}.main-content:has([data-order-wizard]){padding-top:14px}.order-product-heading h1{font-size:23px}.order-product-heading{margin-bottom:14px;gap:12px}.order-product-info{font-size:12px}}
@media(max-width:650px){
    .checkout-steps button{min-height:68px;padding:10px 3px;font-size:12px;gap:5px}.checkout-navigation{margin-bottom:13px}.checkout-step-number{width:23px;height:23px}
    .order-product-heading{align-items:flex-start}.order-product-heading h1{font-size:21px}.order-product-info>summary{padding-top:3px;white-space:nowrap}.order-product-heading .back-link{font-size:12px;margin-bottom:4px}
    .wizard-panel{padding:17px;gap:15px}.wizard-panel h2{font-size:20px}.wizard-panel .upload-picker{padding:17px 13px;gap:11px;min-height:100px}
    .wizard-panel .source-option{padding:12px}.artwork-source-options{gap:9px}.wizard-panel .upload-picker-copy strong{font-size:14px}.upload-picker-copy small{font-size:12px}
    .reuse-actions{gap:8px;flex-wrap:wrap}.library-toolbar{padding:17px}.library-toolbar .search-field{flex-basis:100%}.uploads-table .actions{flex-wrap:wrap}.uploads-table .button{font-size:13px;padding:8px 10px}
    .uploads-table,.uploads-table tbody{display:block;width:100%}.uploads-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
    .uploads-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px 15px;padding:20px 17px;border-top:1px solid var(--line)}
    .uploads-table td{display:block;border:0;padding:0;min-width:0;text-align:left}.uploads-table td:first-child,.uploads-table td:last-child{grid-column:1/-1;min-width:0;max-width:none}
    .uploads-table td:first-child{padding-bottom:3px}.uploads-table td[data-label]:before{content:attr(data-label);display:block;font-size:12px;color:var(--muted);margin-bottom:4px}
    .uploads-table td:last-child{padding-top:8px}.uploads-table .empty-state{padding:20px 0}.upload-library-card+.muted{margin-top:16px}
}
/* Preview first; file choices share its workspace, controls follow the document. */
.wizard-layout{display:block}.wizard-layout>.wizard-main{width:100%}
.artwork-workspace.wizard-panel{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:24px;padding:0;align-items:start}
.artwork-preview-column{min-width:0}.artwork-preview-column .pdf-preview{--pdf-preview-max-height:640px;margin:0;padding:20px;min-height:clamp(520px,calc(100svh - 370px),680px)}
.artwork-preview-column .pdf-preview[data-pdf-state="empty"],.artwork-preview-column .pdf-preview:not([data-pdf-state])[data-pdf-url=""]{display:grid;place-content:center}
.artwork-preview-column .preview-note{margin-top:16px;padding-top:12px}
.artwork-upload-column.panel{padding:23px;gap:20px;margin:0}.artwork-upload-column .artwork-source-options{grid-template-columns:1fr;gap:10px}
.artwork-upload-column .print-requirements{display:grid;gap:3px;font-size:13px}.artwork-upload-column .print-requirements>span+span{border:0;padding:0}
.artwork-upload-column .upload-picker{flex-direction:column;align-items:flex-start;padding:18px;gap:13px;min-height:150px}
.artwork-upload-column .upload-picker-copy strong{font-size:15px}.artwork-upload-column .upload-picker-copy small{font-size:13px}
.artwork-upload-column .selected-file{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;padding:13px;gap:8px}.artwork-upload-column .selected-file>div{min-width:0}
.artwork-upload-column .selected-file a{grid-column:2;margin:0;font-size:13px}.artwork-upload-column .selected-file strong{font-size:14px}
.artwork-upload-column .reuse-search{flex-wrap:wrap}.artwork-upload-column .reuse-search input{flex:1 1 160px}.artwork-upload-column .reuse-actions{flex-wrap:wrap}
.artwork-upload-column .reuse-content>select{min-width:0;max-width:100%;text-overflow:ellipsis}.artwork-upload-column .upload-actions{gap:8px}
.artwork-upload-column .upload-actions>[data-remove-upload]{margin-left:0}.artwork-upload-column .upload-status{overflow-wrap:anywhere}
.artwork-step-actions{grid-column:1/-1;margin:0;padding:18px 0 0}.artwork-step-actions .button{margin-left:auto}
[data-order-wizard]>.checkout-navigation{margin:20px 0 0}.checkout-steps button{min-height:64px}
.review-card address{font-size:15px}.review-card>strong{font-size:18px}.review-card .review-quantity{font-size:16px}
@media(max-width:1250px){.artwork-workspace.wizard-panel{grid-template-columns:minmax(0,1fr) 320px;gap:20px}.artwork-upload-column.panel{padding:20px}}
@media(max-width:1000px){.artwork-workspace.wizard-panel{grid-template-columns:minmax(0,1fr)}.artwork-upload-column.panel{padding:22px}.artwork-upload-column .upload-picker{flex-direction:row;align-items:center;min-height:110px}.artwork-upload-column .artwork-source-options{grid-template-columns:repeat(2,minmax(0,1fr))}.artwork-upload-column .print-requirements{display:flex;flex-wrap:wrap;gap:5px 18px}.artwork-upload-column .reuse-search{flex-wrap:nowrap}}
@media(max-width:650px){.artwork-workspace.wizard-panel{gap:18px}.artwork-preview-column .pdf-preview{padding:15px;min-height:clamp(300px,45svh,440px)}.artwork-upload-column.panel{padding:19px}.artwork-upload-column .artwork-source-options{grid-template-columns:1fr}.artwork-upload-column .upload-picker{padding:16px}.artwork-upload-column .reuse-search{flex-wrap:wrap}.checkout-steps button{font-size:12px;padding:11px 3px;min-height:79px}.checkout-step-number{width:25px;height:25px}.pdf-toolbar{gap:10px}.pdf-guide-toggle{margin:4px 0}.artwork-step-actions{padding-top:17px}.review-card address{font-size:15px}}
.stock-availability{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border:1px solid #d6e4d9;background:#f5faf6;border-radius:8px;color:#2a603d}.stock-availability strong{font-size:14px}.stock-availability p{font-size:14px;margin:4px 0 0}.stock-availability[data-orderable="false"]{background:#fff6e8;border-color:#ead5b5;color:#81560d}.stock-availability>.button{flex-shrink:0}.product-stock{font-size:13px;color:#2a603d;margin:12px 0 0}.product-stock.stock-empty{color:#81560d}
@media(max-width:650px){.stock-availability{align-items:flex-start;flex-direction:column;gap:12px}.stock-availability>.button{align-self:flex-start}}
/* Address editing and the final review keep related decisions together. */
.checkout-addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.address-card{min-width:0;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}
.address-editor>summary{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px;cursor:pointer;list-style:none}
.address-editor>summary::-webkit-details-marker{display:none}.address-editor>summary>span:first-child{min-width:0}
.address-editor>summary strong,.billing-address-card>h3{font-size:16px;font-weight:500;color:var(--ink)}
.address-summary{display:block;white-space:pre-line;font-size:15px;line-height:1.65;font-style:normal;overflow-wrap:anywhere;margin-top:13px;color:var(--ink)}
.address-edit-label,.address-close-label{font-size:13px;color:#654180;text-decoration:underline;text-underline-offset:3px;flex-shrink:0}
.address-close-label,.address-editor[open] .address-edit-label,.address-editor[open]>summary .address-summary{display:none}
.address-editor[open] .address-close-label{display:inline}.address-editor[open]>summary{padding-bottom:16px}
.address-fields{padding:0 22px 22px}.address-fields>.button{margin-top:18px}.address-fields .form-grid{gap:15px}
.address-fields .field{gap:6px}.address-fields .field label{font-size:13px}.address-fields .field input,.address-fields .field select{padding:11px 12px;font-size:15px;min-width:0;width:100%}
.billing-address-card>h3{margin:22px 22px 15px}.same-address-option{margin:0 22px 20px;padding:13px;background:#f7f4fa;border:1px solid #e6deed;border-radius:7px;font-size:15px;line-height:1.5;color:var(--ink)}
.same-address-option small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.billing-same-summary{margin:0 22px 22px}
.billing-address-card .address-editor{border-top:1px solid var(--line)}.billing-address-card .address-editor>summary strong{font-size:14px}
.checkout-review-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:28px;align-items:start}
.review-details{min-width:0;display:grid;gap:18px}.review-details .review-card{padding:20px;background:#fff}
.review-details .review-card-heading{margin-bottom:12px}.review-details .review-card-heading h3{font-size:13px;font-weight:500}
.review-details .review-product>strong{font-size:21px}.review-details .review-quantity{margin-top:15px}
.review-addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.review-addresses .review-card{border:0;border-top:1px solid var(--line);border-radius:0;padding:18px 0 0}
.review-addresses address{font-size:14px;line-height:1.65}.review-addresses [data-review-same-address]{margin-bottom:7px;font-size:12px}
.review-back{justify-self:start;margin-top:8px}.review-preflight{font-size:13px;line-height:1.5;padding:10px 12px;border-radius:6px;background:#f5f2f8;color:#63506e}
.review-preflight[data-state="passed"]{background:#edf7ef;color:#27613b}.review-preflight[data-state="warning"]{background:#fff4de;color:#81560d}.review-preflight[data-state="error"]{background:#fff0f0;color:#a32b35}
.checkout-review-layout .review-totals{position:sticky;top:20px;width:auto;max-width:none;margin:0;background:#faf8fc;padding:22px 22px 0}
.review-totals>[data-quote-status]{font-size:12px;margin-top:4px;line-height:1.5}.review-totals h3{font-size:17px}
.price-calculation{margin-top:20px;font-size:13px}.price-calculation>summary{cursor:pointer;color:#654180}.price-calculation .price-breakdown{margin:10px 0 0}
.checkout-review-layout .price-breakdown{font-size:13px;gap:0;margin-top:14px}.checkout-review-layout .price-breakdown>div{padding:9px 0}
.checkout-review-layout .price-breakdown .price-total{margin:12px -22px 0;padding:18px 22px;background:#fff3c2;align-items:center}
.checkout-review-layout .price-total dd{font-size:26px;white-space:nowrap}.checkout-review-layout .price-total dt{font-size:14px}
.review-payment-action{padding:20px 0;display:grid;gap:15px}.review-payment-action .artwork-approval{padding:0;border:0;background:none;font-size:12px;line-height:1.6;gap:10px}
.back-link{display:inline-flex;align-items:center;gap:7px}.back-link .icon{width:16px;height:16px}
.order-product-info>summary{display:flex;align-items:center;gap:7px;list-style:none}.order-product-info>summary::-webkit-details-marker{display:none}.order-product-info>summary .icon{width:15px;height:15px}.order-product-info[open]>summary .icon{transform:rotate(180deg)}
.selected-file .small-link{display:inline-flex;align-items:center;gap:6px}.selected-file .small-link .icon{width:15px;height:15px}
.price-calculation>summary,.payment-order-details>summary{display:flex;align-items:center;gap:8px;list-style:none}.price-calculation>summary::-webkit-details-marker,.payment-order-details>summary::-webkit-details-marker{display:none}
.price-calculation>summary:after,.payment-order-details>summary:after{content:"";width:16px;height:16px;background:currentColor;mask:url('/assets/icons/chevron-down.svg') center/contain no-repeat}
.price-calculation[open]>summary:after,.payment-order-details[open]>summary:after{transform:rotate(180deg)}
.review-totals>[data-quote-status]:empty,.upload-status:empty{display:none}
.review-payment-action .artwork-approval strong{font-size:14px;font-weight:400;margin-bottom:5px}.review-payment-action>.button{justify-content:center;width:100%;min-height:48px}.review-payment-action>p{font-size:12px;text-align:center;margin:0}
@media(max-width:1200px){.checkout-review-layout{grid-template-columns:minmax(0,1fr) 330px;gap:20px}.checkout-addresses{gap:16px}.address-fields .form-grid{grid-template-columns:1fr}.address-fields .form-grid>.full-width{grid-column:auto}.address-fields .field:has([name$="[postal_code]"]),.address-fields .field:has([name$="[city]"]){grid-column:auto}}
@media(max-width:1000px){.checkout-review-layout{grid-template-columns:minmax(0,1fr)}.checkout-review-layout .review-totals{position:static}.review-details{gap:16px}.address-fields .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.address-fields .form-grid>.full-width{grid-column:1/-1}.checkout-addresses{grid-template-columns:1fr}.review-back{margin-bottom:4px}}
@media(max-width:650px){.review-addresses{grid-template-columns:1fr;gap:17px}.review-details .review-card{padding:17px}.review-addresses .review-card{padding:17px 0 0}.review-details .review-product>strong{font-size:19px}.address-editor>summary{padding:18px;gap:12px}.address-fields{padding:0 18px 18px}.address-fields .form-grid{grid-template-columns:1fr}.address-fields .form-grid>.full-width{grid-column:auto}.billing-address-card>h3{margin:18px 18px 14px}.same-address-option{margin:0 18px 18px}.billing-same-summary{margin:0 18px 18px}.checkout-review-layout .review-totals{padding:19px 18px 0}.checkout-review-layout .price-breakdown .price-total{margin-left:-18px;margin-right:-18px;padding:18px}.checkout-review-layout .review-back{font-size:13px}.review-payment-action .artwork-approval{font-size:13px}}
.payment-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:24px;align-items:start;max-width:1180px}
.payment-layout>.panel{margin:0}
.payment-status-card{padding:34px;min-width:0}.payment-status-card h2{font-size:27px;line-height:1.3;max-width:540px;margin:10px 0 18px}
.payment-state-symbol{display:grid;place-items:center;width:52px;height:52px;background:#f0eaf7;color:#5f3b7a;border-radius:50%;font-size:28px;margin-bottom:25px}
.payment-state-symbol[data-state="paid"]{background:#e8f5ec;color:#27613b}.payment-state-symbol[data-state="cancelled"]{background:#f1eff3;color:var(--muted)}
.payment-status-copy{font-size:15px;line-height:1.75;color:var(--muted);max-width:540px;margin-bottom:25px}.payment-status-copy p+p{margin-top:12px}
.payment-status-card [data-payment-checkout] .button{min-width:230px;justify-content:center;gap:18px;min-height:48px}
.payment-method-note{font-size:12px;line-height:1.6;margin:12px 0 0;max-width:390px}
.payment-refresh{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:25px;line-height:1.6}.payment-refresh a{font-size:13px}
.payment-sandbox-note{display:flex;flex-wrap:wrap;align-items:center;gap:5px 12px;border-top:1px solid var(--line);padding-top:20px;margin-top:30px;font-size:12px;line-height:1.6;color:var(--muted)}
.payment-sandbox-note strong{font-weight:500;color:#79580c;background:#fff3c2;padding:3px 9px;border-radius:5px}
.payment-order-card{padding:24px;min-width:0}.payment-order-card .review-card-heading{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center;margin-bottom:22px}.payment-order-card h2{font-size:16px}
.payment-order-item{margin:16px 0}.payment-order-item strong{display:block;font-size:19px;font-weight:500;margin-bottom:6px}.payment-order-item p{margin-top:7px;line-height:1.6;overflow-wrap:anywhere}
.payment-order-card .price-breakdown{border-top:1px solid var(--line);padding-top:14px;margin-top:20px;font-size:13px;gap:13px}.payment-order-card .price-breakdown>div{gap:12px}.payment-order-card .price-breakdown dd{white-space:nowrap}
.payment-order-card .price-total{margin:7px -24px 0;padding:20px 24px;background:#fff3c2;align-items:center}.payment-order-card .price-total dd{font-size:26px}
.payment-order-details{font-size:13px;margin-top:24px;overflow-wrap:anywhere}.payment-order-details>summary{cursor:pointer;color:#654180}.payment-order-details p{margin-top:18px}.payment-order-details h3{font-size:13px;margin:20px 0 8px}.payment-order-details address{font-style:normal;line-height:1.7}
@media(max-width:1100px){.payment-layout{grid-template-columns:minmax(0,1fr) 320px;gap:18px}.payment-status-card{padding:26px}.payment-status-card h2{font-size:24px}}
@media(max-width:850px){.payment-layout{grid-template-columns:1fr}.payment-status-card h2{max-width:none}.payment-status-copy{max-width:none}}
@media(max-width:500px){.payment-status-card{padding:22px}.payment-status-card h2{font-size:23px}.payment-status-card [data-payment-checkout] .button{width:100%;min-width:0}.payment-order-card{padding:22px}.payment-order-card .price-total{margin-left:-22px;margin-right:-22px;padding:20px 22px}.payment-refresh{align-items:flex-start;flex-direction:column}}
.portal-order-shortcuts{margin-bottom:20px}
.portal-orders-filter{flex-wrap:wrap;align-items:flex-end}
.portal-orders-filter .field{flex:1 1 170px;min-width:0}
.portal-orders-filter .search-field{flex:1.3 1 210px}
.portal-orders-filter input,.portal-orders-filter select{width:100%;min-width:0}
.portal-orders-filter>.small-link{align-self:center}
.portal-orders-table td{overflow-wrap:anywhere}
@media(max-width:650px){
    .portal-orders-table,.portal-orders-table tbody{display:block;width:100%}
    .portal-orders-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
    .portal-orders-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:20px 17px;border-top:1px solid var(--line)}
    .portal-orders-table td{display:block;border:0;padding:0;min-width:0;text-align:left}
    .portal-orders-table td:first-child,.portal-orders-table td:last-child{grid-column:1/-1}
    .portal-orders-table td[data-label]:before{content:attr(data-label);display:block;font-size:12px;color:var(--muted);margin-bottom:5px}
    .portal-orders-table td:last-child>.button{width:100%;min-height:44px}
    .portal-orders-table .empty-state{padding:20px 0}
    .portal-orders-filter .search-field{flex-basis:100%}
}
.field-error{display:block;color:var(--danger);font-size:13px;line-height:1.5;margin-top:5px;overflow-wrap:anywhere}
input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}
[data-validation-errors] a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.menu-toggle{min-height:44px}.primary-navigation .nav-link{min-height:44px}}
@media print{.app-content{margin:0}.main-content{padding:0}.sidebar,.topbar,.app-footer,.button,.pdf-preview{display:none!important}.panel{box-shadow:none;background:white}}
