@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#22251f;background:#f7f5ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}.top{max-width:1500px;margin:auto;padding:24px 38px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #deded4}.brand{display:flex;align-items:center;gap:14px}.mark{display:inline-flex;justify-content:center;align-items:center;width:44px;height:44px;border-radius:50%;background:#1f3e34;color:#fff;font-size:19px;letter-spacing:-2px;font-weight:700}.markdot{color:#dfc680}.brandname{font-weight:700;letter-spacing:.09em;font-size:13px;line-height:1.4}.brandname small{display:block;font-size:9px;letter-spacing:.23em;color:#73786f}.ownerlink{font-size:12px;font-weight:600;border-bottom:1px solid #385b4e;padding:8px 0}.ownerlink span{padding-left:12px}main{max-width:1500px;padding:0 38px;margin:auto}.hero{padding:44px 0 42px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:700;color:#39594d}.green-dot{display:inline-block;width:8px;height:8px;background:#6d9d75;border-radius:50%;margin-right:7px}h1,h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400}h1{font-size:clamp(52px,5.4vw,86px);line-height:.97;letter-spacing:-.04em;margin:24px 0 20px}h1 em{color:#6d8b72;font-weight:400}.intro{max-width:480px;color:#697069;font-size:14px;line-height:1.7;margin:0}.hero-meta{display:flex;gap:20px;color:#8e938c;font-size:10px;letter-spacing:.13em;white-space:nowrap;padding-bottom:4px}.app-grid{display:grid;grid-template-columns:minmax(240px,280px) minmax(410px,1fr) minmax(240px,280px);gap:14px;align-items:start}.panel{background:#fff;border:1px solid #e4e6dd;border-radius:11px;min-width:0}.controls,.submit-panel{padding:23px}.panel-head{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.08em;gap:10px}.muted{color:#9b9f97;font-size:10px;letter-spacing:0;font-weight:500}.label{display:block;margin:29px 0 9px;color:#3e493f;font-size:11px;font-weight:700}.lengthrow{display:flex;gap:8px}select,.field,.position-row input{width:100%;background:#fff;border:1px solid #e0e4dc;border-radius:6px;padding:12px;color:#303b33;outline-color:#587862}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%236b796d' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.width-pill{background:#edf2ec;border-radius:6px;min-width:62px;text-align:center;padding:12px 8px;font-size:12px;font-weight:700;color:#385847}.helper{font-size:11px;color:#8b918a;line-height:1.65;margin:10px 0}.helper strong{color:#4c5f51}.divider{border-top:1px solid #eaede7;margin:24px 0}.upload{margin-top:18px;min-height:137px;border:1px dashed #9eb09d;background:#f8faf7;border-radius:7px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;cursor:pointer;color:#395b45}.upload:hover{background:#f0f6ef}.uploadplus{font-size:30px;font-weight:400;line-height:1}.upload strong{font-size:12px;margin:6px 0}.upload small{font-size:10px;color:#919c8d}.art-list{margin-top:17px;max-height:220px;overflow:auto}.empty-list{color:#aaa;font-size:11px;padding:12px 0}.art-row{width:100%;border:1px solid #e8ece5;background:#fff;border-radius:6px;margin-bottom:7px;display:flex;gap:9px;align-items:center;padding:7px;text-align:left}.art-row.active{border-color:#466a52;background:#f5faf4}.art-thumb{width:34px;height:34px;object-fit:contain;background:repeating-conic-gradient(#eee 0% 25%,#fff 0% 50%) 50%/9px 9px;border-radius:3px}.art-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.art-meta{display:block;color:#929b91;font-size:9px;margin-top:3px}.selected-controls{border-top:1px solid #eaede7;margin-top:18px;padding-top:17px}.selected-title,.size-line{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700}.text-button{border:0;background:none;padding:4px 0;color:#53735a;font-size:11px;font-weight:700}.size-line{margin-top:21px;font-weight:500}input[type=range]{width:100%;accent-color:#4f7358;margin:12px 0}.position-row{display:flex;gap:9px}.position-row label{width:50%;font-size:11px;color:#637164}.position-row input{margin-top:6px;padding:8px}.workspace{padding:20px}.status{padding:6px 10px;border-radius:20px;letter-spacing:0;font-size:10px}.status.good{color:#457654;background:#eef5ee}.status.bad{color:#a94234;background:#fff0ed}.canvasbar{display:flex;justify-content:space-between;margin:23px 2px 12px;font-size:10px;color:#707a70}.canvasbar i{font-style:normal;color:#bdc3ba}.sheet-wrap{height:min(670px,70vh);min-height:430px;overflow:auto;background:#f0f3ee;border:1px solid #e7ece4;border-radius:7px;padding:34px 38px 44px;display:flex;justify-content:center;align-items:flex-start}.sheet{position:relative;flex:none;width:420px;background-color:#fff;background-image:linear-gradient(45deg,#f5f6f3 25%,transparent 25%),linear-gradient(-45deg,#f5f6f3 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f5f6f3 75%),linear-gradient(-45deg,transparent 75%,#f5f6f3 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;box-shadow:0 10px 30px #1c332410;outline:1px solid #cfdacf}.sheet-watermark{position:absolute;top:40px;left:0;right:0;text-align:center;color:#c9d3c9;letter-spacing:.17em;font-size:12px;font-weight:700;pointer-events:none}.sheet-watermark small{font-size:9px;letter-spacing:.12em}.sheet-measure{position:absolute;color:#6c806e;font-size:10px;pointer-events:none}.topmeasure{top:-23px;left:50%;transform:translateX(-50%)}.sidemeasure{top:50%;right:-30px;transform:translateY(-50%) rotate(90deg)}.placed{position:absolute;object-fit:fill;user-select:none;touch-action:none;cursor:grab;border:1.5px solid transparent}.placed.active{border-color:#295d42;box-shadow:0 0 0 1px #fff}.placed.outside{border:2px dashed #d54b34;background:#f22a170f}.placed:active{cursor:grabbing}.workspace-note{font-size:11px;color:#798579;margin-top:15px;line-height:1.5}.workspace-note.warning{color:#ad4938;font-weight:600}.spec{display:flex;justify-content:space-between;border-bottom:1px solid #eff0ea;padding:15px 0;font-size:11px}.spec:first-of-type{margin-top:13px}.spec span{color:#929a91}.spec strong{font-weight:600}.submit-panel .label{margin:17px 0 8px}.required{color:#bf6858}.optional{color:#9ea59c;font-weight:400}.field{font-size:12px}.primary{width:100%;border:0;background:#254a37;color:white;border-radius:5px;padding:15px 17px;margin-top:22px;font-size:12px;font-weight:700;display:flex;justify-content:space-between;align-items:center}.primary:hover:not(:disabled){background:#346145}.primary:disabled{background:#aab8aa}.error{background:#fff0ed;color:#9c4638;border-radius:5px;padding:10px;margin-top:12px;font-size:11px;line-height:1.5}.success{background:#eff8ed;padding:14px;color:#305b3d;font-size:12px;line-height:1.6;border-radius:5px;margin-top:12px}.submit-panel>.helper{margin-top:14px}footer{display:flex;justify-content:space-between;border-top:1px solid #e0e4da;margin:52px 0 20px;padding-top:20px;font-size:10px;color:#8f958a;letter-spacing:.07em}.faded{color:#bdc5ba}.modal-bg{position:fixed;inset:0;background:#111b15a6;display:grid;place-items:center;padding:16px;z-index:10}.modal-bg[hidden],[hidden]{display:none!important}.modal{position:relative;background:#fff;max-width:660px;width:100%;max-height:85vh;overflow:auto;border-radius:12px;padding:30px}.modal h2{font-size:40px;letter-spacing:-.03em;margin:15px 0 0}.modal .primary{max-width:220px}.close{position:absolute;right:20px;top:18px;background:none;border:0;font-size:27px;color:#66736b}.submissions{margin-top:24px}.submission{border:1px solid #e4e9e1;border-radius:8px;padding:14px;margin:10px 0}.submission-head{display:flex;justify-content:space-between;gap:10px;font-size:12px}.submission-head small{color:#929b91}.submission-meta{color:#879187;font-size:11px;margin:7px 0 12px}.download{border:1px solid #315843;color:#315843;background:#f9fcf8;border-radius:5px;padding:9px 12px;font-weight:700;font-size:11px;margin-right:8px;margin-bottom:6px}.download:hover{background:#ecf5ea}.submissions .empty-list{padding:18px 0}@media(max-width:1120px){.app-grid{grid-template-columns:270px 1fr}.submit-panel{grid-column:1/-1}.hero-meta{display:none}}@media(max-width:720px){.top{padding:16px 20px}main{padding:0 20px}.hero{padding:30px 0}.app-grid{display:block}.panel{margin-bottom:12px}.sheet-wrap{justify-content:flex-start;min-height:420px}.sheet{width:360px}.submit-panel{grid-column:auto}footer{display:block;line-height:2}.brandname{font-size:11px}}
/* Editor controls */
.upload.drag-over{border:2px solid #2d6b48;background:#e9f4e9}.build-button{width:100%;margin-top:15px;border:1px solid #385f46;border-radius:6px;background:#eef5ee;color:#2a593c;padding:12px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:8px}.build-button span{font-weight:700;font-size:12px}.build-button small{font-size:10px;color:#628169;text-align:right}.build-button:disabled{opacity:.5}.build-button:hover:not(:disabled){background:#dceedd}.list-hint{font-size:10px;color:#8c988c;margin:17px 0 4px}.art-entry{border:1px solid #e8ece5;border-radius:7px;margin:8px 0;padding:7px}.art-entry.active{border-color:#4a7455;background:#f6faf5}.art-entry .art-row{border:0;margin:0;padding:2px;background:transparent}.art-row .art-name{flex:1}.art-entry-details{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:6px 2px 1px}.art-entry-details label{font-size:10px;color:#747e74;white-space:nowrap}.art-entry-details input{width:48px;border:1px solid #dbe4d9;border-radius:4px;padding:4px;font-size:11px;margin-left:5px}.dpi-button{border:0;border-radius:14px;padding:5px 7px;font-size:10px;font-weight:700;white-space:nowrap}.dpi-button.good{color:#276338;background:#e2f5df}.dpi-button.ok{color:#8b630a;background:#fff0c8}.dpi-button.poor{color:#a7352d;background:#fde4e0}.dpi-info{font-size:10px;color:#687569;background:#fff;padding:8px;border-radius:5px;margin-top:6px;line-height:1.5}.select-check{accent-color:#38674a;width:15px;height:15px;flex:none}.size-line input{width:72px;border:1px solid #dbe4d9;border-radius:4px;padding:5px 4px;font-size:11px}.size-line #heightValue{font-size:10px;color:#8a958a;font-weight:400}.align-title{font-size:11px;font-weight:700;margin:20px 0 9px}.align-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.align-grid button{border:1px solid #dbe5d9;border-radius:4px;background:#f8faf7;color:#3a6043;padding:8px 3px;font-size:10px;font-weight:700}.align-grid button:hover{background:#e5f1e3}.placed.multi-active{border-color:#315b3f;box-shadow:0 0 0 2px #a8d4b1}.placed.outside{border:2px dashed #d54b34}.sheet-wrap{overscroll-behavior:contain}.art-list{max-height:300px}
.build-button span{flex-shrink:0;white-space:nowrap}.build-button small{flex:1}.placed.overlap{border:2px dashed #d38929;background:#faba4912}
.owner-notice{margin-top:12px;color:#28633c;background:#eff8ed;border-radius:5px;padding:10px;font-size:12px}.delete-upload{display:block;border:1px solid #c35b4d;color:#9b3e33;background:#fff;border-radius:5px;padding:9px 12px;font-size:11px;font-weight:700;margin-top:5px}.delete-upload:hover:not(:disabled){background:#fff1ef}.delete-upload:disabled{opacity:.5}.load-more{display:block;margin:15px auto 0;border:1px solid #385f46;color:#315843;background:#f9fcf8;border-radius:5px;padding:10px 18px;font-weight:700;font-size:11px}
.workspace-heading{flex-wrap:wrap}.preview-heading{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.preview-heading>span{white-space:nowrap}.history-actions{display:flex;align-items:center;gap:6px}.history-actions .history-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:70px;padding:5px 8px;line-height:1.2}.workspace-heading .status{margin-left:auto;white-space:nowrap}@media(max-width:720px){.preview-heading{gap:9px}.history-actions .history-button{min-width:68px}.history-actions .history-button span{display:inline}}
.history-button{border:1px solid #d7e2d6;background:#f5faf4;border-radius:6px;color:#2c6040;font-size:17px;min-width:70px;padding:6px 9px;font-weight:700}.history-button span{font-size:11px}.history-button:hover:not(:disabled){background:#e4f2e5}.history-button:disabled{opacity:.42}.rotate-option{display:flex;align-items:flex-start;gap:8px;margin-top:12px;color:#49634c;font-size:11px;line-height:1.45;cursor:pointer}.rotate-option input{accent-color:#2c7242;margin:1px 0 0;flex:none}.rotate-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}.rotate-buttons button{border:1px solid #dbe5d9;border-radius:4px;background:#f8faf7;color:#3a6043;padding:8px 3px;font-size:10px;font-weight:700}.rotate-buttons button:hover{background:#e5f1e3}.placed{padding:0;overflow:visible}.placed-image{position:absolute;display:block;object-fit:fill;max-width:none;pointer-events:none;transform-origin:center center;user-select:none}.placed.active,.placed.multi-active{border:2px solid #139244;box-shadow:0 0 0 2px #fff,0 0 0 4px #139244}.placed.outside{border:2px dashed #d54b34}.placed.active.outside{box-shadow:0 0 0 2px #fff,0 0 0 4px #139244}.resize-handle{position:absolute;z-index:2;width:13px;height:13px;padding:0;border:2px solid #fff;background:#139244;border-radius:3px;box-shadow:0 0 0 1px #0d6332;touch-action:none}.resize-handle.nw{left:-8px;top:-8px;cursor:nwse-resize}.resize-handle.ne{right:-8px;top:-8px;cursor:nesw-resize}.resize-handle.sw{left:-8px;bottom:-8px;cursor:nesw-resize}.resize-handle.se{right:-8px;bottom:-8px;cursor:nwse-resize}@media(max-width:720px){.brand{gap:6px}}
.size-label-line{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin:14px 0 0;color:#3e493f;font-size:11px;font-weight:700}.size-label-line select{min-width:0;padding:9px 34px 9px 10px;font-size:11px}.size-label-help{margin:7px 0 13px}.placed-label{position:absolute;left:0;width:100%;color:#ffd400;text-align:center;font-weight:700;line-height:1;white-space:nowrap;overflow:hidden;pointer-events:none;user-select:none;text-shadow:0 1px 1px #594700}
.top-actions{display:flex;align-items:center;gap:24px}.order-banner{margin-top:24px;padding:14px 17px;border:1px solid #cfe0d0;background:#edf6ec;border-radius:8px;color:#315b3d;display:flex;align-items:center;gap:16px;font-size:12px}.order-banner strong{font-size:13px}.order-banner span{flex:1}.order-banner a{font-weight:700;border-bottom:1px solid currentColor}.order-banner.invalid{border-color:#f0c8c0;background:#fff1ef;color:#943f32}.inbox-heading{margin:28px 0 8px;font-family:'DM Serif Display',Georgia,serif;font-size:24px;font-weight:400}.order-card{background:#fbfcfa}.order-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.order-status-row select{max-width:190px;padding:9px 30px 9px 10px;font-size:11px}.order-art{font-size:10px;color:#a26b1f;background:#fff1d6;border-radius:20px;padding:6px 9px}.order-art.submitted{color:#2d6840;background:#e5f4e7}
.order-shell{padding-bottom:70px}.order-intro{padding:60px 0 46px;max-width:760px}.order-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.order-builder{padding:28px}.checkout-card{padding:25px;position:sticky;top:18px}.size-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:22px}.size-card{border:1px solid #dfe5dc;background:#fafcf9;border-radius:8px;padding:15px 10px;text-align:left;color:#304436}.size-card strong,.size-card span{display:block}.size-card strong{font-size:13px}.size-card span{font-size:11px;color:#7d887e;margin-top:7px}.size-card:hover:not(:disabled),.size-card.active{border-color:#326346;background:#eaf4ea;box-shadow:0 0 0 1px #326346}.size-card:disabled{opacity:.48}.order-options{display:grid;grid-template-columns:160px 1fr;gap:24px;margin-top:27px}.order-options label>span,.contact-grid label>span,.address-grid label>span,.order-options legend{display:block;margin-bottom:8px;color:#3e493f;font-size:11px;font-weight:700}.order-options fieldset{border:0;margin:0;padding:0}.choice{display:inline-flex;align-items:center;gap:7px;margin:10px 18px 0 0;font-size:12px}.choice input{accent-color:#315f43}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.phone-field{grid-column:1/-1}.delivery-fields{border-top:1px solid #e8ebe5;margin-top:28px;padding-top:24px}.address-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-top:20px}.address-wide{grid-column:1/-1}.address-grid small{color:#9ea59c;font-weight:400}.setup-notice{margin-top:18px;background:#fff7df;border:1px solid #ecd89c;color:#76571b;border-radius:8px;padding:13px;font-size:12px;line-height:1.55}.setup-notice strong,.setup-notice span{display:block}.summary-main{padding:22px 0 14px}.summary-main strong{font-family:'DM Serif Display',Georgia,serif;font-size:32px;font-weight:400;display:block}.summary-main span{font-size:12px;color:#879188}.checkout-card .spec.total{font-size:14px;border-top:1px solid #dfe4dc;border-bottom:0;margin-top:10px}.checkout-steps{display:grid;gap:7px;border-top:1px solid #eaede7;padding-top:17px;margin-top:18px;color:#68746a;font-size:11px}.checkout-steps span:before{content:'✓';color:#3c724e;margin-right:8px}.success-shell{max-width:820px;margin:0 auto;padding:70px 24px}.confirmation{padding:46px}.confirmation h1{font-size:clamp(48px,8vw,76px);margin:17px 0}.confirmation-check{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#315e43;color:#fff;font-size:23px;margin-bottom:28px}.confirm-details{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e2e6df;border:1px solid #e2e6df;border-radius:8px;overflow:hidden;margin:30px 0}.confirm-details>div{background:#fafbf8;padding:15px}.confirm-details span,.confirm-details strong{display:block}.confirm-details span{font-size:10px;color:#8b948b;margin-bottom:7px}.confirm-details strong{font-size:12px}.next-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action-card{border:1px solid #dce4da;border-radius:8px;padding:20px;color:#315540;background:#fafcf9}.action-card span,.action-card small{display:block}.action-card span{font-size:12px;font-weight:700}.action-card small{font-size:11px;color:#768178;line-height:1.5;margin-top:8px}.action-card.primary-action{background:#284e39;color:#fff;border-color:#284e39}.action-card.primary-action small{color:#d8e7dc}.finished-card{max-width:680px;margin:auto}.finished-drop{margin-top:24px}.file-check{border:1px solid #b8d5bd;background:#eef8ef;border-radius:7px;padding:13px;color:#315a3d}.file-check strong,.file-check span{display:block;font-size:12px}.file-check span{margin-top:5px;color:#6f7e72;font-size:10px}.approval-list{display:grid;gap:10px;margin:22px 0;color:#4e5d51;font-size:12px}.approval-list label{display:flex;gap:9px;align-items:flex-start}.approval-list input{accent-color:#316b45;margin-top:2px}.finished-card>.helper a{color:#315e43;font-weight:700;border-bottom:1px solid #315e43}
@media(max-width:900px){.order-layout{grid-template-columns:1fr}.checkout-card{position:static}.size-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.confirm-details{grid-template-columns:1fr 1fr}}@media(max-width:600px){.top-actions{gap:12px}.top-actions .ownerlink:first-child{display:none}.order-shell{padding:0 20px 50px}.order-intro{padding:38px 0 30px}.order-builder,.checkout-card,.confirmation{padding:22px}.order-options,.contact-grid,.address-grid,.next-actions{grid-template-columns:1fr}.phone-field,.address-wide{grid-column:auto}.confirm-details{grid-template-columns:1fr}.order-banner{align-items:flex-start;flex-direction:column;gap:6px}}
