@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--ink:#283d35;--muted:#728078;--green:#315e48;--cream:#f7f6f0;--line:#e1e5dc;--pink:#eed4ca;--light:#eef2e9}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}header{height:100px;max-width:1440px;margin:auto;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}a{color:inherit;text-decoration:none}.brand{display:flex;align-items:center;gap:12px;font-size:15px;letter-spacing:2px;font-weight:700;line-height:1.25}.brand-icon{font-size:47px;color:#c47f68}.brand-bottom{display:block;font-size:12px;letter-spacing:5px}nav{display:flex;gap:30px;height:100%;align-items:center}.nav{height:100%;background:none;border:0;color:#798179;padding:0 4px;position:relative}.nav.active{color:var(--green);font-weight:700}.nav.active:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--green)}.test-badge{padding:8px 13px;background:#e9eee4;border-radius:30px;font-size:11px;color:var(--green)}.test-badge i{display:inline-block;width:6px;height:6px;background:#64866b;border-radius:50%;margin-right:5px}main{max-width:1270px;margin:auto;padding:0 36px}.intro{display:flex;justify-content:space-between;align-items:center;padding:52px 0 37px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.4px;color:#858f7d;margin:0 0 18px}h1{font:500 48px/1.17 'Playfair Display',Georgia,serif;letter-spacing:-1.6px;margin:0 0 19px}h1 em{color:var(--green);font-weight:500}.intro-copy,.page-intro>p:last-child{color:var(--muted);line-height:1.8;margin:0;font-size:14px}.intro-note{font:italic 22px/1.4 'Playfair Display',Georgia,serif;transform:rotate(7deg);margin-right:92px;color:#859379}.intro-note>span{font-size:55px;display:block;color:#c89b58;line-height:1.3}.intro-note svg{width:100px;display:block;margin-left:60px}.workspace{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px;align-items:stretch}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:25px}.section-title{display:flex;align-items:center;gap:10px}.section-title h2{font-size:15px;font-weight:600;margin:0}.step{display:grid;place-items:center;width:25px;height:25px;background:var(--light);border-radius:50%;font-size:10px;font-weight:700;color:#6b7c61}.upload{margin-top:22px;background:#fafbf7;border:1.5px dashed #c5d0bf;border-radius:9px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 8px;cursor:pointer}.upload:hover,.upload.dragover{background:#eaf1e5;border-color:var(--green)}.upload-icon{font-size:27px;color:var(--green);margin-bottom:9px}.upload strong{font-size:12px}.upload>span:not(.upload-icon){color:#6c7f6a;font-size:11px;margin-top:5px}.upload small{font-size:9px;color:#959e91;margin-top:12px}.upload input{position:absolute;width:1px;height:1px;opacity:0}.upload:focus-within{outline:2px solid var(--green)}.privacy{color:#8c9687;font-size:9px;text-align:center;margin:13px 0}.divider{height:1px;background:var(--line);margin:22px 0}.label-row{display:flex;justify-content:space-between;align-items:center;font-size:12px}.label-row h3{font-size:12px;margin:0}.label-row span{color:#8b9588;font-size:10px}.size-inputs{display:flex;align-items:center;gap:10px;margin:13px 0}.size-inputs>span{margin-top:19px;color:#a0a69b}.size-inputs label{flex:1;color:#8a9386;font-size:10px}input[type=number],input[type=text],input:not([type]),input[type=search],select{width:100%;background:#fff;border:1px solid #dce2d6;border-radius:6px;padding:10px;color:var(--ink);margin-top:6px}.size-inputs input{font-size:13px}.check{display:flex;align-items:center;gap:5px;font-size:10px;color:#7a8672}.check input{accent-color:var(--green)}.range-label{margin:24px 0 10px}.range-label strong{font-size:10px;color:var(--green);background:#edf1e8;padding:4px 7px;border-radius:4px}input[type=range]{width:100%;accent-color:var(--green)}.range-ends{display:flex;justify-content:space-between;font-size:9px;color:#939c8d;margin-top:5px}.field{display:block;font-size:11px;color:#76816f;margin-top:18px}.primary,.secondary{width:100%;padding:13px 15px;border-radius:7px;font-size:12px;font-weight:600}.primary{background:var(--green);color:#fff;border:1px solid var(--green);margin-top:23px}.primary:hover{background:#244c38}.primary span{float:right}.secondary{background:white;color:var(--green);border:1px solid #d7dfd0;margin-top:10px}.secondary:hover{background:#f2f5ed}.hint{font-size:10px;line-height:1.6;color:#959d8d;text-align:center;margin-bottom:0}.preview{padding:23px 24px 0;overflow:hidden;display:flex;flex-direction:column}.preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.sample-pill{color:#8b8d78;background:#f5f3e9;border-radius:4px;padding:5px 8px;font-size:9px}.canvas-toolbar{display:flex;align-items:center;justify-content:space-between;margin:21px 0 13px}.segmented{background:#f2f3ed;padding:3px;border-radius:6px;display:flex}.segmented button{background:transparent;border:0;border-radius:4px;padding:7px 12px;color:#8a9481;font-size:10px}.segmented .selected{background:white;box-shadow:0 1px 4px #0000000b;color:var(--green)}.zoom{display:flex;align-items:center;gap:12px;color:#86917d;font-size:10px}.zoom button{border:0;background:none;font-size:18px;color:#86917d}.canvas-wrap{background-color:#eeeede;background-image:radial-gradient(#d7dbcf .7px,transparent .7px);background-size:10px 10px;border-radius:8px;display:flex;align-items:center;justify-content:flex-start;flex-direction:column;overflow:auto;height:445px;padding:28px;flex:1;min-height:360px}.canvas-wrap canvas{max-width:none;width:360px;height:360px;flex:none;box-shadow:0 6px 18px #43543815;border-radius:3px}.stats{display:flex;align-items:center;gap:38px;padding:20px 5px}.stats>div{display:flex;flex-direction:column;gap:5px}.stats strong{font-size:19px;font-weight:500}.stats span{font-size:9px;color:#8b9584}.stats .preview-tip{margin-left:auto;font:italic 13px/1.5 'Playfair Display',serif;color:#95a085}.bottom-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;margin-top:24px;margin-bottom:55px}.subtle{font-size:11px;line-height:1.7;color:#8b9585;max-width:510px;margin:12px 0 24px}#palette{display:grid;grid-template-columns:1fr 1fr;column-gap:28px}.color-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf0e8}.swatch{width:33px;height:33px;border-radius:50%;border:1px solid #00000012;display:grid;place-items:center;font-size:10px}.color-info{font-size:11px;line-height:1.6}.color-info small{font-size:9px;color:#909985;display:block}.color-row>strong{margin-left:auto;font-size:12px;font-weight:500}.color-row>strong small{display:block;color:#909985;font-size:8px;font-weight:400;text-align:right}.finish{text-align:center;background:#f0f2e8}.little-flower{font-size:35px;color:#b9925e}.finish h2{font:500 23px 'Playfair Display',serif;margin:8px 0}.finish>p{font-size:11px;color:#8b9581}.finish .primary{margin-top:13px}.finish .field{text-align:left}.text-button{border:0;background:none;color:#7b8974;text-decoration:underline;font-size:10px;padding:12px 0}.page-intro{padding:52px 0 35px}.page-intro h1{font-size:46px}.gallery-layout{display:grid;grid-template-columns:240px 1fr;gap:24px;align-items:start;margin-bottom:70px}.categories h2{font-size:15px}.categories input{font-size:12px}.categories button{display:block;background:none;border:0;text-align:left;width:100%;padding:13px 10px;border-radius:5px;color:#6a7b62;font-size:12px}.categories button.active{background:#edf2e8;color:var(--green);font-weight:700}#categories{margin-top:20px}.gallery-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.gallery-card{padding:14px;cursor:pointer;text-align:left;color:var(--ink)}.gallery-card:hover{border-color:#8caa82;transform:translateY(-2px)}.gallery-card img{display:block;width:100%;aspect-ratio:1;object-fit:contain;border-radius:8px;background:#f0f0e4}.gallery-card h3{margin:17px 0 7px;font:500 23px 'Playfair Display',serif}.gallery-card p{font-size:10px;color:#8a9581}.gallery-card .tag{font-size:9px;background:#edf2e8;border-radius:3px;padding:4px 7px}.notice{background:#eeefdf;border:1px solid #dce1cc;padding:18px 22px;border-radius:8px;line-height:1.6;color:#6f7d5d;margin-bottom:25px;font-size:12px}.supply-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:100px}.supply-grid article>span{font-size:50px;color:#9aa57b}.supply-grid h2{font:500 25px 'Playfair Display',serif}.supply-grid p{font-size:12px;line-height:1.8;color:#86917c}.supply-grid small{font-size:10px;color:#9a9c88}footer{border-top:1px solid var(--line);max-width:1198px;margin:auto;padding:28px 0;display:flex;justify-content:space-between;align-items:center;color:#8e9786;font-size:10px}.footer-brand{font:500 18px 'Playfair Display',serif;color:#5d7554}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#294e39;color:white;padding:14px 22px;border-radius:9px;box-shadow:0 6px 30px #0002;opacity:0;pointer-events:none;transition:opacity .2s;z-index:10;max-width:90%;font-size:12px}#toast.show{opacity:1}dialog{border:1px solid var(--line);border-radius:15px;padding:30px;max-width:620px;width:90%;max-height:90vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#243c3166;backdrop-filter:blur(3px)}.close{float:right;background:none;border:0;font-size:26px;color:#7c8973}.detail-img{width:100%;max-height:330px;object-fit:contain;background:#f2f1e7;border-radius:8px}.detail-title{font:500 30px 'Playfair Display',serif}.report-row{padding:20px 0;border-bottom:1px solid var(--line)}.report-row button{width:auto;margin-right:10px}#reports{margin-bottom:60px}.empty{padding:30px;color:var(--muted)}
@media(min-width:1300px){.canvas-wrap{height:435px}.canvas-wrap canvas{width:375px;height:375px}}@media(max-width:900px){header{padding:0 25px}nav{gap:15px}.workspace{grid-template-columns:270px 1fr}.preview-head{flex-wrap:wrap}.stats{gap:18px}.stats .preview-tip{display:none}.canvas-wrap{padding:20px}.intro-note{margin-right:20px}.bottom-grid{grid-template-columns:1fr 280px}.supply-grid{grid-template-columns:1fr 1fr}footer{margin:0 30px}.canvas-wrap canvas{width:300px;height:300px}}@media(max-width:650px){header{height:auto;min-height:90px;flex-wrap:wrap;gap:15px;padding:20px 22px 0}.brand{font-size:12px}.brand-bottom{font-size:9px}.brand-icon{font-size:32px}.test-badge{margin-left:auto}nav{order:3;width:100%;height:42px;justify-content:space-between}.nav{font-size:12px}main{padding:0 18px}.intro{padding:32px 0 25px}.intro-note{display:none}h1{font-size:37px}.intro-copy{font-size:12px}.eyebrow{font-size:8px;letter-spacing:1.8px}.workspace,.bottom-grid,.gallery-layout{grid-template-columns:1fr}.settings{padding:22px}.upload{padding:18px}.preview{padding:20px 15px 0}.preview .section-title h2{font-size:13px}.preview-head{gap:14px}.canvas-wrap{min-height:325px;max-height:420px;flex:none}.canvas-wrap canvas{width:290px;height:290px}.stats{justify-content:space-around}.bottom-grid{margin-bottom:35px}.gallery-cards{gap:12px}.gallery-card h3{font-size:20px}.page-intro h1{font-size:36px}.supply-grid{grid-template-columns:1fr}.supply-grid article{padding:25px}#categories{display:flex;flex-wrap:wrap}.categories button{width:auto}footer{flex-wrap:wrap;gap:15px;margin:0 20px}.footer-brand{font-size:15px}#palette{column-gap:15px}.card{border-radius:11px}.color-row{gap:7px}}

.grid-label{font-size:11px;color:#75836c}
/* Pastel craft palette; the artwork's bead colors remain faithful to the uploaded image. */
:root{--ink:#50495d;--muted:#776d7d;--green:#67577e;--cream:#fff7cc;--line:#e7dcc3;--pink:#f7dce6;--light:#eee4f6}
header{border-bottom-color:#e9deba}.brand-bottom{color:#827390}.nav{color:#7c7084}.test-badge{background:#e2f0e4;color:#526b5c}.test-badge i{background:#8caf9a}.eyebrow{color:#81718b}.intro-note{color:#9b7b9f}.card{background:#fffdf5;border-color:#eadfc8;box-shadow:0 4px 16px #a6957620}.settings{background:#fff7fa}.preview{background:#f8f6ff}.upload{background:#edf6f2;border-color:#b4d2c1}.upload:hover,.upload.dragover{background:#e1f0e7;border-color:#8caf9a}.upload>span:not(.upload-icon):not(.pony-bead){color:#657e72}.upload strong{color:#52695f}.privacy,.hint{color:#7d7183}.step{background:#eadcf4;color:#685477}.label-row span,.size-inputs label,.field,.range-ends,.check{color:#7b6d83}.range-label strong{background:#eadff7;color:#69567e}.primary{background:#dac9ef;border-color:#c5b1dd;color:#4c3d62}.primary:hover{background:#cbb5e6}.secondary{background:#f8e3eb;border-color:#e7c5d4;color:#67516a}.secondary:hover{background:#f1d4e0}.text-button{color:#735e83}.sample-pill{background:#f9e0d3;color:#846350}.canvas-wrap{background-color:#e8f2f5;background-image:radial-gradient(#cbdce5 .7px,transparent .7px)}.stats span,.subtle,.color-info small,.color-row>strong small{color:#7c7082}.stats .preview-tip{color:#8c739c}.finish{background:#e6f0e5}.finish>p{color:#637660}.swatch{border-radius:9px}.categories button.active,.gallery-card .tag{background:#eee0f6;color:#6f547f}.notice{background:#f7e2ed;border-color:#e7cadb;color:#785c74}.supply-grid article:nth-child(2){background:#e9f2fa}.supply-grid article:nth-child(3){background:#f8e5ed}.supply-grid article:nth-child(4){background:#edf3e4}.supply-grid p,.supply-grid small{color:#766c7b}.footer-brand{color:#7b638a;display:flex;align-items:center;gap:8px}footer{color:#80718b}.whole-image-note{font-size:11px;color:#687c68;margin:20px 0 10px}.grid-recommendation{padding:12px;background:#f0e8fa;border-radius:8px;font-size:11px;line-height:1.65;color:#685675}.grid-recommendation p{margin:0}.grid-recommendation .text-button{padding-bottom:0}.grid-label{color:#746180}
.pony-bead{--bead-color:#d5b9ed;position:relative;display:inline-block;flex:none;width:31px;height:27px;border-radius:10px;background:linear-gradient(110deg,#ffffff85,transparent 40%,#00000012),var(--bead-color);border:1px solid #00000012;box-shadow:inset 0 3px 2px #ffffff70,inset 0 -3px 2px #0000000c,0 2px 2px #0000000d;vertical-align:middle;transform:rotate(-12deg)}
.pony-bead:after{content:'';position:absolute;left:35%;top:22%;width:30%;height:56%;border-radius:50%;background:#fff9e8;box-shadow:inset 1px 2px 2px #0000003a}.brand .pony-bead{width:39px;height:34px;--bead-color:#ddb2ca}.upload .pony-bead{--bead-color:#aad4c5;margin-bottom:15px}.intro-note>.pony-bead{display:block;width:46px;height:40px;--bead-color:#f3c69d;margin-bottom:18px}.finish>.pony-bead{--bead-color:#c6b2e8}.supply-grid article:nth-child(2) .pony-bead{--bead-color:#a8c9ec}.supply-grid article:nth-child(3) .pony-bead{--bead-color:#e8b4c9}.supply-grid article:nth-child(4) .pony-bead{--bead-color:#bdd8ad}.footer-brand .pony-bead{width:22px;height:19px;border-radius:7px}.pony-bead:hover,a:hover>.pony-bead,label:hover>.pony-bead,article:hover>.pony-bead{animation:bead-wiggle .6s ease-in-out infinite}
@keyframes bead-wiggle{0%,100%{transform:rotate(-12deg)}30%{transform:rotate(5deg) translateY(-1px)}65%{transform:rotate(-20deg)}}
.bead-trail{position:fixed;inset:0;pointer-events:none;z-index:9999;overflow:hidden}.bead-trail i{position:absolute;left:0;top:0;width:3px;height:3px;border-radius:1px;box-shadow:inset 0 .5px #ffffff9a;pointer-events:none}.bead-trail i:after{content:'';position:absolute;left:1px;top:1px;width:1px;height:1px;background:#fff7cc;border-radius:50%}
@media(prefers-reduced-motion:reduce){.pony-bead{animation:none!important}.bead-trail{display:none}}
@media(pointer:coarse){.bead-trail{display:none}}

#turnstileWidget{margin-top:20px;min-height:65px;text-align:left}

/* Supply recommendations and private product management. */
.header-community{display:flex;align-items:center;gap:12px}.facebook-link{width:22px;height:22px;display:inline-flex;color:#5477a5;flex-shrink:0}.facebook-link svg{width:100%;height:100%;fill:currentColor}.facebook-link:hover{color:#36567d}.facebook-link:focus-visible{outline:3px solid #a78cce;outline-offset:5px;border-radius:50%}.footer-notes{font-size:12px;text-align:right}.footer-notes p{margin:8px 0;max-width:420px}.admin-entry{font-size:11px;color:inherit}.affiliate-disclosure{background:#f0e8f8;border:1px solid #ddd0eb;border-radius:14px;padding:16px 20px;font-size:13px;line-height:1.6;color:#544464}.supply-guide{display:flex;align-items:center;gap:22px;background:#fffaf0;border:1px solid #e6dfca;border-radius:20px;padding:28px;margin:26px 0}.supply-guide h2{margin:0 0 8px;font-size:21px}.supply-guide p{margin:0;line-height:1.6}.supply-guide .secondary{margin-left:auto;flex-shrink:0}.supply-filters{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.supply-filters button{border:1px solid #d8d2bc;border-radius:24px;background:#fffdf5;padding:10px 16px;color:#47594c;font:inherit;font-size:13px;cursor:pointer}.supply-filters button.active{background:#e6daf3;border-color:#c7b4dc}.affiliate-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:24px!important}.affiliate-card h3{margin:0;font-size:20px}.affiliate-card .eyebrow{margin:6px 0 0;font-size:10px}.affiliate-card .amazon-link{margin-top:auto;text-decoration:none;text-align:center}.affiliate-label{color:#625967;font-size:11px}.product-bead{background:var(--product-color)!important;width:36px;height:30px;box-shadow:inset 3px 3px 0 #ffffff50,inset -3px -3px 0 #00000012}.pattern-supplies{border-top:1px solid #e2ddc9;margin-top:28px;padding-top:16px}.pattern-supplies h3{font-size:22px}.pattern-supplies .supply-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.required-colors{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.color-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #ddd9cc;border-radius:20px;padding:6px 10px;font-size:11px}.color-chip i{width:12px;height:12px;border:1px solid #0002;border-radius:50%}.admin-login{max-width:440px;padding:28px}.admin-login form,.admin-layout form{display:flex;flex-direction:column;gap:12px}.admin-login input,.admin-layout input:not([type=checkbox]),.admin-layout select{width:100%;padding:12px;border:1px solid #cccbbd;border-radius:9px;background:white;font:inherit}.admin-layout label,.admin-login label{font-size:13px;font-weight:600;margin-top:8px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin:24px 0}.admin-layout{display:grid;grid-template-columns:minmax(280px,1fr) 1fr;gap:28px}.admin-layout form{padding:28px}.product-active{display:flex;gap:8px;align-items:center}.product-actions{display:flex;gap:10px;margin-top:8px}.admin-product{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:22px;margin-bottom:14px}.admin-product h3{margin:0}.admin-product p{margin-bottom:0}#adminStatus{padding:14px 0;font-weight:600}.admin-login[hidden],#adminManager[hidden]{display:none}
@media(max-width:760px){.header-community{gap:8px}.header-community .test-badge{font-size:10px}.footer-notes{text-align:left}.supply-guide{flex-wrap:wrap;padding:20px}.supply-guide .secondary{margin-left:0}.admin-layout{grid-template-columns:1fr}.admin-toolbar{align-items:flex-start;gap:12px}.affiliate-card h3{font-size:18px}}
.supply-guide>div{flex:1;min-width:0}.supply-guide>.pony-bead{flex-shrink:0}.supply-guide .secondary,.admin-toolbar .secondary,.admin-product .secondary{width:auto}.affiliate-card .amazon-link{width:100%}.admin-product>div{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){.supply-guide>div{flex-basis:calc(100% - 70px)}.supply-guide .secondary{width:100%}}
