@font-face {
  font-family: "Quattrocento Sans";
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url("//www.ateliermosaics.com/cdn/fonts/quattrocento_sans/quattrocentosans_n4.ce5e9bf514e68f53bdd875976847cf755c702eaa.woff2") format("woff2"),
       url("//www.ateliermosaics.com/cdn/fonts/quattrocento_sans/quattrocentosans_n4.44bbfb57d228eb8bb083d1f98e7d96e16137abce.woff") format("woff");
}
@font-face {
  font-family: "Quattrocento Sans";
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  src: url("//www.ateliermosaics.com/cdn/fonts/quattrocento_sans/quattrocentosans_n7.bdda9092621b2e3b4284b12e8f0c092969b176c1.woff2") format("woff2"),
       url("//www.ateliermosaics.com/cdn/fonts/quattrocento_sans/quattrocentosans_n7.3f8ab2a91343269966c4aa4831bcd588e7ce07b9.woff") format("woff");
}
@font-face {
  font-family: "Quattrocento Sans";
  font-weight: 400;
  font-style: italic;
  font-display: swap;
  src: url("//www.ateliermosaics.com/cdn/fonts/quattrocento_sans/quattrocentosans_i4.4f70b1e78f59fa1468e3436ab863ff0bf71e71bb.woff2") format("woff2"),
       url("//www.ateliermosaics.com/cdn/fonts/quattrocento_sans/quattrocentosans_i4.b695efef5d957af404945574b7239740f79b899f.woff") format("woff");
}
@font-face {
  font-family: "Quattrocento Sans";
  font-weight: 700;
  font-style: italic;
  font-display: swap;
  src: url("//www.ateliermosaics.com/cdn/fonts/quattrocento_sans/quattrocentosans_i7.49d754c8032546c24062cf385f8660abbb11ef1e.woff2") format("woff2"),
       url("//www.ateliermosaics.com/cdn/fonts/quattrocento_sans/quattrocentosans_i7.567b0b818999022d5a9ccb99542d8ff8cdb497df.woff") format("woff");
}
@font-face {
  font-family: Trirong;
  font-weight: 300;
  font-style: normal;
  font-display: swap;
  src: url("//www.ateliermosaics.com/cdn/fonts/trirong/trirong_n3.20e715e45e9574a31fa3f43d52c7c395e835e6b5.woff2") format("woff2"),
       url("//www.ateliermosaics.com/cdn/fonts/trirong/trirong_n3.9ba8bc43584d6c50663c6d5a2c45330db835e987.woff") format("woff");
}:root{--ink:#252525;--paper:#efecec;--forest:#2c332f;--muted:#716a56;--line:#dcd8d0}body:not(.workshop){background:#efecec;color:#252525;font-family:'Quattrocento Sans',sans-serif;font-size:17px}body:not(.workshop) h1,body:not(.workshop) h2{font-family:Trirong,Georgia,serif;font-weight:300}body:not(.workshop) button,body:not(.workshop) input,body:not(.workshop) select{font-family:inherit}body:not(.workshop) .primary{background:#2c332f;color:#fff;border-radius:8px;min-height:50px;padding:14px 24px;font-size:17px}.atelier-client-header{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:24px max(24px,calc((100vw - 1240px)/2));background:#fff;border-bottom:1px solid #dedbd5}.atelier-client-nav{display:flex;gap:22px;align-items:center;font-size:16px}.atelier-client-nav button{border:0;background:none;padding:10px 0;color:inherit;text-decoration:underline;text-underline-offset:5px}.atelier-client-nav a{text-decoration:none}.atelier-client-footer{background:#2c332f;color:#efecec;padding:48px max(24px,calc((100vw - 1240px)/2));margin-top:64px;display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap}.atelier-client-footer strong{letter-spacing:.14em}.atelier-client-footer p{margin:12px 0;color:#d5d5cc}.atelier-client-footer nav{display:flex;gap:20px;flex-wrap:wrap}.atelier-client-footer small{width:100%;opacity:.7}.studio-target{outline:3px solid #9c8862!important;outline-offset:5px}.studio-tip{position:fixed;z-index:1000;background:#2c332f;color:#fff;border-radius:14px;padding:20px;box-shadow:0 10px 40px #0003;font-size:16px}.studio-tip::before{content:'';position:absolute;top:-9px;left:28px;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:10px solid #2c332f}.studio-tip.above::before{top:auto;bottom:-9px;transform:rotate(180deg)}.studio-tip p{margin:8px 0 14px;line-height:1.55}.studio-tip button{background:#fff;color:#2c332f;border:0;border-radius:6px;padding:9px 18px}.studio-wait-dialog{max-width:560px;width:calc(100% - 32px);border:0;border-radius:24px;padding:38px;background:#fff;color:#252525;box-shadow:0 20px 100px #0004}.studio-wait-dialog::backdrop{background:#1e2824aa;backdrop-filter:blur(3px)}.studio-dialog-close{position:absolute;right:18px;top:12px;font-size:30px;background:none;border:0;padding:6px 12px}.studio-check{width:56px;height:56px;border-radius:50%;background:#edf2eb;color:#3f5147;display:grid;place-items:center;font-size:30px;margin-bottom:18px}.studio-wait-dialog h2{font-size:31px;line-height:1.35;margin:12px 0}.studio-safe{background:#f1f3ed;border-left:4px solid #3f5147;padding:20px;border-radius:10px;margin:24px 0}.studio-safe strong{font-size:22px}.studio-safe p{line-height:1.6;margin-bottom:0}.studio-dialog-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.studio-email{overflow-wrap:anywhere}@media(max-width:600px){.atelier-client-header{padding:18px;gap:14px}.atelier-client-nav{width:100%;justify-content:space-between;gap:12px}.studio-wait-dialog{padding:28px 22px}.studio-wait-dialog h2{font-size:26px}.studio-dialog-actions>*{width:100%;text-align:center}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Storefront palette: warm grey, charcoal and muted antique gold. */
body:not(.workshop){--ink:#252525;--paper:#efecec;--forest:#2c332f;--green:#2c332f;--gold:#b49350;--accent:#b49350;--muted:#686463;--line:#d2cecb}
body:not(.workshop) .eyebrow{color:#a78340;letter-spacing:2px}
body:not(.workshop) :is(.button-primary,.primary,#confirmPhotos,#downloadResult){background:#2c332f;color:#fff;border:1px solid #2c332f;border-radius:6px;min-height:56px;padding:15px 24px;font-family:inherit;font-size:16px;font-weight:700;box-shadow:none;transform:none;text-decoration:none}
body:not(.workshop) :is(.button-primary,.primary,#confirmPhotos):hover:not(:disabled){background:#404842;box-shadow:none;transform:none}
body:not(.workshop) :is(.button-secondary,.completion-card .button-secondary){background:transparent;border:1px solid #c9c5c2;color:#2c332f;border-radius:6px;box-shadow:none;min-height:50px}
body:not(.workshop) .button-secondary:hover{background:#e8e3de;border-color:#b49350}
body:not(.workshop) :is(.orientation-buttons button,.choice){background:transparent;border:1px solid #cbc7c4;color:#252525;border-radius:999px;font-size:13px;padding:12px 18px}
body:not(.workshop) :is(.orientation-buttons button[aria-pressed=true],.choice.selected){background:#b49350;border-color:#b49350;color:#fff}
body:not(.workshop) :is(.workspace-card,.panel,.project-card,.auth-layout){background:#fff;border-color:#d2cecb;border-radius:20px;box-shadow:0 12px 36px #302a2310}
body:not(.workshop) :is(.project-toolbar,.retention-card,.auth-story,.segmented,.file-drop,.dropzone,.upload-panel,.studio-safe){background:#f3efea;border-color:#d2cecb;color:#504a43}
body:not(.workshop) :is(.project-toolbar>#saveState,.auth-story p,.back-link,#resultDescription,.dashboard-strip,.complete-label){color:#686463}
body:not(.workshop) :is(.status-pill,.status-pill.ready,.studio-check,.checkmark){background:#eee7db;color:#79602f}
body:not(.workshop) :is(input:not([type=range]):not([type=file]):not([type=checkbox]),select){border:1px solid #cbc7c4;border-radius:12px;background:#faf8f6;color:#252525}
body:not(.workshop) :is(input[type=range],input[type=checkbox]){accent-color:#b49350}
body:not(.workshop) :is(.project-cover,.canvas-shell,#mainCanvas){background:#eeebe7}
body:not(.workshop) .project-cover.no-photo{background:#eee8df;color:#b49350}
body:not(.workshop) :is(.tile-art i,.completion-art i){background:#2c332f}
body:not(.workshop) :is(.tile-art i:nth-child(2n),.completion-art i:nth-child(2n)){background:#b49350}
body:not(.workshop) :is(.tile-art i:nth-child(3n),.completion-art i:nth-child(3n)){background:#d6cbb8}
body:not(.workshop) .completion-card{background:#fff}
body:not(.workshop) .creation-steps li{color:#686463}
body:not(.workshop) .creation-steps li.done:before{background:#eee7db;color:#79602f}
body:not(.workshop) .atelier-client-header{background:#efecec;border-color:#d2cecb;max-width:none;margin:0}
body:not(.workshop) .studio-safe{border-left-color:#b49350}
body:not(.workshop) .studio-target{outline-color:#b49350!important}
body:not(.workshop) :focus-visible{outline:3px solid #b49350;outline-offset:4px}
body:not(.workshop) .collection-summary{display:flex;gap:18px;align-items:center;background:#f5f1ea;border:1px solid #ded3bf;border-radius:14px;padding:24px;margin:24px 0}
.collection-summary-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;background:#b49350;color:white;border-radius:50%;font-size:24px}
.collection-summary strong{display:block;font-size:22px;font-weight:700;color:#2c332f}
.collection-summary p{margin:6px 0 0;font-size:16px;line-height:1.6}
.collection-files{margin:20px 0}.collection-files summary{cursor:pointer;padding:12px 0;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.collection-file-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:12px 0;border-top:1px solid #dedad5}
.collection-file-row>span{overflow-wrap:anywhere;font-size:14px}.collection-file-row small{color:#686463}
@media(max-width:600px){.collection-summary{align-items:flex-start!important;padding:20px!important}.collection-file-row{grid-template-columns:minmax(0,1fr) auto}.collection-file-row small{grid-column:1;grid-row:2}.collection-file-row button{grid-column:2;grid-row:1 / 3}.orientation-buttons{flex-wrap:wrap}}
:root:not([data-notice-color]),:root[data-notice-color=forest]{--notice:#b49350;--notice-soft:#f3eee5;--notice-ink:#504534}
/* Readable guidance and explicit shape / output-size controls. */
body:not(.workshop) .studio-tip p{color:#f5f2eb;font-size:18px;line-height:1.65}
body:not(.workshop) .studio-tip strong{color:#fff;font-size:19px}
body:not(.workshop) .studio-tip button{font-size:16px;min-height:44px}
body:not(.workshop) :is(.fine,.hint,.file-drop small,.collection-files summary,.project-toolbar>#saveState){font-size:15px;line-height:1.65}
body:not(.workshop) :is(.field-row label,.project-details>label,.auth-card label){font-size:16px}
body:not(.workshop) :is(.field-row select,.field-row input,.orientation-buttons button){font-size:17px;min-height:50px}
body:not(.workshop) .eyebrow{font-size:12px}
.ratio-control{margin:24px 0 18px}.ratio-control>label{display:block;font-size:17px;font-weight:700;margin-bottom:10px}
body:not(.workshop) .ratio-control select{width:100%;padding:15px;font-size:19px;min-height:56px}
.ratio-control p{margin:10px 0 0}.ratio-examples{background:#f5f1ea;border:1px solid #ded3bf;border-radius:12px;padding:22px;margin:20px 0}
.ratio-examples h3{font-size:20px;margin:0 0 8px;color:#2c332f}.ratio-examples p{font-size:16px;margin:0 0 14px}
.ratio-examples table{width:100%;border-collapse:collapse;text-align:left;font-size:17px;font-variant-numeric:tabular-nums}
.ratio-examples th{font-size:15px;color:#625744;font-weight:700}.ratio-examples :is(th,td){padding:10px 8px;border-bottom:1px solid #ded3bf}.ratio-examples tr:last-child td{border-bottom:0}
@media(max-width:650px){.project-page .field-row{flex-direction:column;gap:0}.ratio-examples{padding:16px}.ratio-examples table{font-size:16px}}
.client-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}
.client-steps button{display:flex;align-items:center;gap:12px;text-align:left;background:#fff;border:1px solid #d2cecb;border-radius:10px;padding:16px;font-size:17px;color:#504a43}
.client-steps b{display:grid;place-items:center;min-width:34px;height:34px;border-radius:50%;background:#eee7db;color:#79602f}
.client-steps button[aria-current=step]{border:2px solid #b49350;background:#f5f1ea;font-weight:700}.client-steps .is-done b{background:#2c332f;color:#fff}.client-steps button:disabled{opacity:.75;cursor:default}
body:not(.workshop) .collection-heading{align-items:flex-start;flex-direction:column;gap:18px}
body:not(.workshop) .file-button{background:#2c332f;color:#fff;border-color:#2c332f;font-size:18px;min-height:56px}
body:not(.workshop) .collection-bottom{flex-direction:column-reverse;align-items:flex-start;gap:16px}
body:not(.workshop) .review-decision{background:#f5f1ea;border:1px solid #ded3bf;padding:26px;border-radius:16px;align-items:flex-start;flex-direction:column}
body:not(.workshop) .review-decision h3{font-family:Trirong,Georgia,serif;font-size:28px;margin:8px 0 12px}
body:not(.workshop) .review-decision .eyebrow{font-size:15px;font-weight:700;margin:0}
body:not(.workshop) .review-decision #confirmReason{font-size:18px}
body:not(.workshop) :is(#preparePhotos,#confirmPhotos){font-size:18px;min-height:58px}
body:not(.workshop) #reviewStep{display:none}
body:not(.workshop) .creation-steps{grid-template-columns:repeat(3,1fr)}
body:not(.workshop) :is(.creation-steps li,.progress-caption,#photoStatus,#cropETA,.progress-heading span){font-size:16px}
body:not(.workshop) .studio-tip::before{display:none}.studio-tip{max-height:calc(100vh - 24px);overflow:auto}
@media(max-width:700px){.client-steps{grid-template-columns:repeat(2,1fr)}.client-steps button{font-size:15px;padding:12px;gap:8px}.studio-dialog-actions>*{width:100%}}
/* Final client readability rules: keep these after component themes. */
body:not(.workshop){font-family:Arial,'Segoe UI',sans-serif;font-size:18px;line-height:1.65;color:#292b29}
body:not(.workshop) p{color:#454844}
body:not(.workshop) :is(.fine,.hint,.muted,small,.status-pill,.back-link,.project-toolbar>#saveState,.collection-file-row small,.collection-files summary,.auth-card small,.project-card-body p,.header-tools a,.open-project){font-size:16px;line-height:1.65;color:#454844}
body:not(.workshop) :is(.button-primary,.button-secondary,.primary,.atelier-client-nav button,.atelier-client-nav a,#confirmPhotos,#preparePhotos){display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:54px;padding:14px 22px;border-radius:8px;font:700 18px/1.4 Arial,'Segoe UI',sans-serif;text-decoration:none;white-space:normal;box-sizing:border-box;cursor:pointer}
body:not(.workshop) :is(.button-secondary,.atelier-client-nav button,.atelier-client-nav a){border:1px solid #9b9b91;background:#fff;color:#2c332f}
body:not(.workshop) :is(.button-secondary,.atelier-client-nav button,.atelier-client-nav a):hover{background:#eee8de;border-color:#79602f}
body:not(.workshop) :is(.button-primary,.primary,#confirmPhotos,#preparePhotos){background:#2c332f;color:#fff;border:1px solid #2c332f}
body:not(.workshop) .atelier-client-nav{gap:10px;flex-wrap:wrap}
body:not(.workshop) .eyebrow{font-size:14px;letter-spacing:1.4px;color:#79602f}
body:not(.workshop) .collection-files summary{display:inline-flex;padding:12px 20px;border:1px solid #9b9b91;border-radius:8px;background:#fff;font-size:17px;font-weight:700;text-decoration:none;list-style:none}
body:not(.workshop) .collection-files summary::-webkit-details-marker{display:none}
.collection-files summary:after{content:'Show';margin-left:18px}.collection-files[open] summary:after{content:'Hide'}
body:not(.workshop) :is(.field-row label,.ratio-control>label,.project-details>label){font-size:18px}
body:not(.workshop) :is(.field-row select,.ratio-control select,.orientation-buttons button){font-size:18px}
body:not(.workshop) :is(.studio-tip p,.studio-tip strong){color:#fff;font-size:19px;line-height:1.65}
body:not(.workshop) .studio-tip{padding:24px;border:1px solid #69736a}
body:not(.workshop) .studio-tip button{font-size:17px;min-height:48px;padding:12px 16px;margin-top:8px;color:#2c332f;background:#fff}
body:not(.workshop) :is(.studio-safe p,.studio-wait-state,.leave-notice p,#resultDescription){font-size:18px;color:#393e38}
body:not(.workshop) .atelier-client-footer p,body:not(.workshop) .atelier-client-footer small{color:#f1eee8}
body:not(.workshop) .project-toolbar{padding:18px;gap:16px}
body:not(.workshop) .review-decision h3{font-size:30px;color:#252825}
body:not(.workshop) .review-decision #confirmReason{font-size:19px;color:#393e38}
body:not(.workshop) :is(.collection-bottom,.studio-dialog-actions,.review-decision){justify-content:flex-start}
@media(max-width:700px){.atelier-client-nav>*{flex:1}.project-toolbar>.button-secondary{flex:1}.project-heading{flex-wrap:wrap}.studio-dialog-actions>*{width:100%}.client-steps button{font-size:16px}}

.print-recommendation{padding:18px 20px;background:#eee7d9;border-left:4px solid #a5874d;color:#30352e!important;font-size:18px!important;line-height:1.6}.print-recommendation strong{display:block;margin-bottom:6px}.project-page label[hidden]{display:none!important}
