*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:15px/1.65 'Segoe UI',system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a{text-underline-offset:4px}button,.button{cursor:pointer;border:1px solid var(--border);border-radius:9px;padding:11px 17px;color:var(--text);background:var(--surface);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover,.button:hover{background:var(--soft)}button:disabled{opacity:.5;cursor:wait}.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.primary:hover{background:var(--text);color:var(--page)}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.topbar{border-bottom:1px solid var(--border)}.topbar>.wrap{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{font-weight:750;font-size:23px;letter-spacing:-1px;display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--text)}.mark{width:34px;height:34px;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;border-radius:9px;font-size:20px}.topbar nav{display:flex;gap:26px;align-items:center;font-size:12px}.topbar nav a{text-decoration:none;color:var(--secondary)}.topbar nav a:last-child{padding:8px 15px;border:1px solid var(--border);border-radius:30px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--brand);font-weight:700;text-transform:uppercase}.hero{padding:58px 0 34px}h1{font:400 clamp(40px,5vw,65px)/1.07 Georgia,serif;letter-spacing:-2.5px;margin:15px 0 22px}h1 em{color:var(--brand);font-weight:400}.lead{font-size:16px;color:var(--secondary);max-width:590px;line-height:1.8}.pills{display:flex;gap:15px;font-size:11px;color:var(--secondary);flex-wrap:wrap;margin:25px 0}.pills span:before{content:'✓';margin-right:6px;color:var(--brand)}h2{font:400 30px/1.2 Georgia,serif;letter-spacing:-.8px}h3{font-size:15px}.workspace{display:grid;grid-template-columns:350px minmax(0,1fr);gap:28px;align-items:start;scroll-margin-top:25px;margin-bottom:60px}.controls{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:25px}.controls h2{font:600 18px/1.4 'Segoe UI',sans-serif;letter-spacing:-.4px;margin:0 0 4px}.quiet{color:var(--secondary);font-size:12px}.controls>p{margin:0 0 22px}label,.field-label{font-size:12px;font-weight:600;display:block;margin-bottom:7px}.field{margin-bottom:17px}input:not([type=checkbox]),select,textarea{width:100%;padding:10px 11px;border:1px solid var(--border);border-radius:7px;background:var(--page);color:var(--text);min-width:0}textarea{resize:vertical;min-height:105px;line-height:1.6}input[type=color]{height:43px;padding:4px}input[type=range]{padding:5px 0;border:0}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.actions{display:flex;gap:10px;flex-wrap:wrap}.controls .actions button{font-size:12px;flex:1}.note{font-size:11px;color:var(--secondary);line-height:1.6}#error{color:var(--brand);font-size:13px;font-weight:600;min-height:20px;margin:14px 0}#status{font-size:12px;color:var(--secondary);min-height:20px}.result{min-width:0}.resultbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.resultbar h2{font-size:23px;margin:0}.resultbar .quiet{margin:3px 0 0}.resultbar .actions button{font-size:12px}.statline{display:flex;gap:36px;padding:18px 0;margin:14px 0 25px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-wrap:wrap}.statline b{font-size:25px;font-weight:600;display:block;letter-spacing:-1px}.statline span{font-size:11px;color:var(--secondary)}.section{border-top:1px solid var(--border);padding:45px 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.section h2{margin:8px 0 16px}.steps{display:grid;gap:18px}.step{display:grid;grid-template-columns:30px 1fr;gap:15px;border-bottom:1px solid var(--border);padding-bottom:18px}.step b{font:400 21px Georgia,serif;color:var(--brand)}.step h3{margin:0 0 5px}.step p{font-size:13px;color:var(--secondary);margin:0}.bundle{background:var(--soft);padding:33px;border:1px solid var(--border);border-radius:16px;margin:20px 0 50px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.bundle h2{margin:10px 0 13px}.bundle p,.bundle li{font-size:13px;color:var(--secondary)}.bundle ul{padding-left:20px}.bundle .button{font-size:13px;margin-top:6px}.hidden,[hidden]{display:none!important}.faq{padding:0 0 45px}.faq details{border-bottom:1px solid var(--border);padding:17px 0}.faq summary{cursor:pointer;font-weight:600;font-size:14px}.faq details p{font-size:13px;color:var(--secondary);max-width:850px}.related{padding:24px 0 40px;display:flex;gap:24px;flex-wrap:wrap;font-size:12px;border-top:1px solid var(--border)}footer{padding:25px 0 70px;border-top:1px solid var(--border);font-size:11px;color:var(--secondary)}footer>.wrap{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.skip{position:absolute;top:-100px;left:15px;z-index:1100;background:var(--surface);padding:12px}.skip:focus{top:12px}.pro-workspace{border-top:1px solid var(--border);margin:20px 0 0;padding-top:20px}.pro-workspace button{font-size:11px;padding:8px 10px}.pro-workspace .field{margin-top:12px}.pro-workspace h3{margin:0 0 5px}.guide{max-width:850px;padding:55px 0 80px}.guide h1{font-size:49px}.guide h2{margin-top:36px}.guide p,.guide li{line-height:1.9}.guide .example{border-left:3px solid var(--brand);padding:12px 23px;background:var(--soft)}
/* FrameMint: an airy image studio, with a contact-sheet edge. */
html[data-product=framemint]{--page:#f4f7f3;--surface:#fff;--soft:#e6eee6;--text:#1b3027;--secondary:#52645a;--border:#d3dfd6;--brand:#286448;--brand-soft:#dcebdd;--on-brand:#fff;--focus:#a85b24}.photo-hero{display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center}.photo-stamp{border:1px solid var(--border);width:125px;height:125px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(9deg);font-size:10px;color:var(--brand);letter-spacing:1px}.photo-stamp b{font:36px Georgia,serif;letter-spacing:0}.photo-canvas-wrap{padding:30px;background:repeating-conic-gradient(var(--soft) 0% 25%,var(--page) 0% 50%) 50%/22px 22px;border:1px solid var(--border);border-radius:4px;min-height:380px;display:grid;place-items:center}.photo-canvas-wrap canvas{display:block;max-width:100%;max-height:570px;width:auto;height:auto;box-shadow:0 8px 30px #00000012}.upload{display:block;padding:20px 14px;border:1px dashed var(--brand);background:var(--brand-soft);text-align:center;border-radius:10px;cursor:pointer;font-size:13px}.upload small{display:block;font-weight:400;font-size:11px;margin-top:4px}.upload input{display:block;margin-top:12px;font-size:11px}.frame-caption{display:flex;justify-content:space-between;font-size:10px;color:var(--secondary);letter-spacing:1px;padding-top:12px}.framemint .controls{border-radius:3px}.framemint .primary{border-radius:3px}.framemint .photo-canvas-wrap{position:relative}
/* StudyMap: a notebook, with a horizontal weekly rhythm. */
html[data-product=studymap]{--page:#fcfaef;--surface:#fffef8;--soft:#efeedc;--text:#273853;--secondary:#596776;--border:#dcdcca;--brand:#385d96;--brand-soft:#e4ebf5;--on-brand:#fff;--focus:#94582b}.studymap .mark{border-radius:50%;font:22px Georgia,serif}.studymap .hero{display:grid;grid-template-columns:1.3fr .7fr;gap:50px;align-items:center}.studymap h1{font-family:'Segoe UI',sans-serif;font-weight:650;letter-spacing:-3px;font-size:60px;max-width:13ch}.study-motif{background:var(--surface);border:1px solid var(--border);box-shadow:7px 7px 0 var(--soft);transform:rotate(3deg);padding:25px}.study-motif h2{font-size:25px;margin:0 0 12px}.study-motif p{margin:8px 0;font-size:12px;border-bottom:1px solid var(--border);padding-bottom:8px}.study-motif p span{float:right;color:var(--brand)}.study-motif small{color:var(--secondary);font-size:10px}.studymap .workspace{grid-template-columns:330px minmax(0,1fr)}.days{display:flex;gap:5px;flex-wrap:wrap}.days label{display:flex;align-items:center;gap:4px;font-size:10px;padding:6px 3px;cursor:pointer}.days input{accent-color:var(--brand);margin:0}.plan-day{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:12px;display:grid;grid-template-columns:110px 1fr}.day-heading{padding:18px;background:var(--soft);font-size:11px;border-right:1px solid var(--border)}.day-heading b{display:block;font-size:24px;letter-spacing:-1px}.sessions{padding:10px 18px;display:grid;gap:8px}.session{display:flex;align-items:center;gap:15px;padding:7px 0;border-bottom:1px dashed var(--border)}.session:last-child{border:0}.session time{font-size:10px;color:var(--secondary);min-width:85px}.session strong{font-size:12px;font-weight:600;overflow-wrap:anywhere}.session input{accent-color:var(--brand)}.plan-scroll{max-height:690px;overflow:auto;padding-right:5px}.studymap .bundle{border-radius:0;border-top:3px solid var(--brand)}
/* LabelLeaf: warm stationery and a precise cutting mat. */
html[data-product=labelleaf]{--page:#fcf6ef;--surface:#fffcf7;--soft:#f1e4d7;--text:#493028;--secondary:#795e51;--border:#e6d3c4;--brand:#a04c32;--brand-soft:#f4dfcf;--on-brand:#fff;--focus:#7c422b}.labelleaf .hero{text-align:center;max-width:720px;margin:auto;padding-top:50px}.labelleaf h1{font-size:68px}.labelleaf .hero .lead{margin-inline:auto}.labelleaf .pills{justify-content:center}.labelleaf .mark{border-radius:3px 14px 3px 14px}.labelleaf .workspace{grid-template-columns:340px minmax(0,1fr)}.labelleaf .controls{border-radius:0;border-top:3px solid var(--brand)}.label-mat{padding:28px;background:var(--soft);border:1px solid var(--border);overflow:hidden;max-height:800px;overflow-y:auto}.label-sheet{display:grid;gap:7px;background:#fff;color:#262626;padding:20px;aspect-ratio:210/297;border:1px solid #dedbd5;box-shadow:0 4px 15px #0001;margin-bottom:22px;align-content:stretch}.label-sheet:last-child{margin-bottom:0}.product-label{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1px dashed #bdb7ae;padding:7px;overflow:hidden;background:#fff;color:#262626;min-height:0;position:relative}.product-label .label-name{font:600 14px/1.25 Georgia,serif;max-width:100%;overflow-wrap:anywhere}.product-label .label-detail{font-size:9px;line-height:1.35;margin-top:6px;max-width:100%;overflow-wrap:anywhere}.product-label .label-price{font-size:11px;line-height:1.3;margin-top:7px;font-weight:600}.product-label .label-brand{font-size:7px;letter-spacing:1.3px;margin-top:7px;max-width:100%;overflow-wrap:anywhere}.product-label.botanical:before{content:'✧';display:block;font-size:17px;line-height:1;margin-bottom:5px;color:#48624c}.product-label.minimal{border-style:solid}.product-label.bold .label-name{font-family:'Segoe UI',sans-serif;text-transform:uppercase;font-size:12px;letter-spacing:.8px}.product-label.bold{border:2px solid #262626}.product-label.empty{visibility:hidden}.labelleaf .bundle{border-radius:0;background:var(--surface);border:1px solid var(--brand)}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.workspace,.studymap .workspace,.labelleaf .workspace{grid-template-columns:300px minmax(0,1fr);gap:20px}.section{gap:35px}.label-mat{padding:15px}.label-sheet{padding:12px;gap:4px}.product-label .label-name{font-size:11px}.product-label .label-detail{font-size:8px}.product-label .label-brand{font-size:6px}.product-label .label-price{font-size:9px}.studymap h1{font-size:49px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.workspace,.studymap .workspace,.labelleaf .workspace{grid-template-columns:1fr}.topbar>.wrap{height:72px}.topbar nav{gap:16px}.topbar nav a:first-child{display:none}.hero,.studymap .hero{padding-top:35px}.studymap .hero{grid-template-columns:1fr;gap:18px}.study-motif{max-width:380px;margin-bottom:20px;transform:rotate(1deg)}.photo-stamp{width:85px;height:85px;font-size:7px}.photo-stamp b{font-size:25px}.photo-hero{gap:15px}h1,.labelleaf h1{font-size:49px;letter-spacing:-2px}.studymap h1{max-width:18ch}.section,.bundle{grid-template-columns:1fr;gap:15px}.section{padding:30px 0}.bundle{padding:25px}.resultbar{align-items:start;flex-wrap:wrap}.photo-canvas-wrap{padding:20px;min-height:280px}.photo-canvas-wrap canvas{max-height:480px}.plan-scroll{max-height:none}.statline{gap:25px}.label-sheet{padding:15px;gap:6px}.product-label .label-name{font-size:13px}.label-mat{max-height:720px}.wordmark{font-size:21px}.topbar nav a:last-child{padding:7px 10px}.lead{font-size:14px}.controls{padding:22px}.labelleaf .hero{padding-top:35px}.photo-stamp{display:none}.photo-hero{grid-template-columns:1fr}.plan-day{grid-template-columns:90px 1fr}.day-heading{padding:14px}.sessions{padding:10px}.session{gap:8px}}
@media print{html[data-theme]{--text:#000;--secondary:#333;--page:#fff;--surface:#fff;--border:#ddd;--soft:#f6f6f6}body{background:#fff;color:#000}.topbar,.hero,.controls,.resultbar,.section,.bundle,.faq,.related,footer,.statline,.frame-caption,.note,#status,#error,.skip,.wk-theme-root{display:none!important}.wrap{width:100%;margin:0}.workspace{display:block!important;margin:0}.plan-scroll{max-height:none;overflow:visible}.plan-day{break-inside:avoid;box-shadow:none}.session{print-color-adjust:exact}.session input{display:none}.label-mat{background:#fff;border:0;padding:0;overflow:visible;max-height:none}.label-sheet{width:var(--sheet-w);height:var(--sheet-h);aspect-ratio:auto;box-shadow:none;border:0;padding:10mm;gap:3mm;margin:0;break-after:page;grid-template-rows:repeat(var(--rows),minmax(0,1fr))!important}.label-sheet:last-child{break-after:auto}.product-label{padding:2mm}.product-label .label-name{font-size:12pt}.product-label .label-detail{font-size:8pt}.product-label .label-price{font-size:10pt}.product-label .label-brand{font-size:6pt}.product-label.botanical:before{font-size:13pt}.product-label.bold .label-name{font-size:10pt}.labelleaf main>.wrap{width:auto}.photo-canvas-wrap{background:#fff;border:0;padding:0}}
