:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#243c36;background:#f7f8f4;font-synthesis:none;--green:#176b60;--muted:#6c7a72;--line:#dfe5dc;--soft:#edf3e9}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}a{color:var(--green)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #d39530;outline-offset:3px}button{color:inherit}input,select{width:100%;min-width:0;border:1px solid #d5ddd4;border-radius:8px;padding:11px 10px;background:white;color:#243c36}input[type=checkbox]{width:35px;height:20px;accent-color:var(--green)}label,legend{font-size:12px;font-weight:650}label{display:block;margin:0 0 8px}fieldset{border:0;padding:0;margin:24px 0 0;min-width:0}legend{padding:0;margin-bottom:11px}h1,h2,h3,p{margin:0}h2{font-size:15px;font-weight:650}h3{font-size:13px}.app-header{min-height:88px;display:flex;justify-content:space-between;align-items:center;padding:20px 3%;border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#243c36;font-weight:700;font-size:20px;letter-spacing:-.6px}.brand small{display:block;font-size:9px;font-weight:600;letter-spacing:1.5px;margin-top:6px;color:var(--muted)}.header-actions{display:flex;align-items:center;gap:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:11px 16px;min-height:42px;border:1px solid transparent;border-radius:8px;font-size:12px;font-weight:600;background:white}.button.primary{background:var(--green);color:white}.button.primary:hover{background:#11584f}.button.secondary{border-color:#d5ddd4;background:#fff}.button.secondary:hover{background:#f3f7ef}.button.quiet{background:transparent}.prototype{font-size:10px;background:#faf1dc;color:#8c6b26;border-radius:20px;padding:5px 10px;margin-right:8px}main{max-width:1680px;margin:auto;padding:34px 3% 20px}.intro{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px;gap:20px}.eyebrow{font-size:9px;letter-spacing:1.8px;color:var(--green);font-weight:700;margin-bottom:10px}h1{font-family:Georgia,"Times New Roman",serif;font-size:34px;letter-spacing:-1px;font-weight:400;line-height:1.15}.intro p:not(.eyebrow){font-size:13px;color:var(--muted);margin-top:11px}.save-state{font-size:10px;color:var(--muted);padding-bottom:3px}.save-state:before{content:'●';color:#6a9573;margin-right:6px}.editor-layout{display:grid;grid-template-columns:260px minmax(280px,1fr) 304px;align-items:start;gap:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 19px}.panel-title{display:flex;gap:10px;align-items:center;margin-bottom:22px}.step{background:#eff3e9;color:#4c7653;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;font-size:11px;font-weight:700;flex-shrink:0}.two-col{display:grid;grid-template-columns:1fr;gap:10px}.segmented{display:flex;background:#f4f6f1;padding:4px;border-radius:8px;gap:4px;margin-top:9px}.segmented button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;min-height:41px;border:1px solid transparent;border-radius:6px;background:transparent;font-size:10px}.segmented button[aria-pressed=true]{background:#fff;border-color:#cad7c8;color:var(--green);box-shadow:0 1px 3px #213b3210}.paper-icon{display:block;width:12px;height:16px;border:1.5px solid currentColor;border-radius:1px}.paper-icon.wide{width:16px;height:12px}.grid-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.grid-presets button{border:1px solid var(--line);background:#fff;border-radius:7px;min-height:39px;font-size:12px}.grid-presets button[aria-pressed=true]{background:#eaf3ec;border-color:#7eaa8f;color:var(--green);font-weight:700}.grid-custom{grid-template-columns:1fr 1fr;margin-top:13px}.grid-custom label{font-weight:400;color:var(--muted);font-size:11px}.grid-custom select{margin-top:7px;padding:8px}.hint{font-size:11px;color:var(--muted);line-height:1.6;margin:8px 0 14px}.switch-row{display:flex;align-items:center;justify-content:space-between;font-weight:400;font-size:12px;margin:13px 0}.color-help{border-top:1px solid var(--line);margin-top:20px;padding-top:17px;font-size:11px;line-height:1.6}.color-help summary{cursor:pointer;font-weight:600}.color-help p{margin-top:12px}.color-help ul{padding:0;list-style:none}.color-help li{display:flex;align-items:center;gap:8px;margin:5px 0}.color-help i{width:12px;height:12px;border:1px solid #bbb;border-radius:3px}.workspace{min-width:0;background:#eef1e9;border:1px solid #e0e5d9;border-radius:12px;padding:18px 22px;overflow:hidden}.workspace-toolbar{display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:12px;margin-bottom:20px}.workspace-toolbar strong{font-size:12px}.workspace-toolbar #page-spec{display:block;padding-left:14px;color:var(--muted);font-size:10px;margin-top:6px}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#6e9d7c;margin-right:8px}.text-button{border:0;background:transparent;padding:7px 4px;color:var(--muted);font-size:11px}.text-button:hover{color:var(--green)}.paper-stage{max-width:535px;margin:auto}.paper{width:100%;aspect-ratio:var(--page-width)/var(--page-height);background:#fff;box-shadow:0 5px 20px #3e493012;position:relative;container-type:inline-size;color:#111}.sheet-grid{position:absolute;inset:5% 5% 7%;display:grid;grid-template-columns:repeat(var(--columns),1fr);grid-template-rows:repeat(var(--rows),1fr);gap:2%;place-items:center}.sheet-slot{display:flex;justify-content:center;align-items:center;width:100%;height:100%;min-width:0;min-height:0}.picto-card{display:flex;flex-direction:column;align-items:center;justify-content:center;width:var(--card-side);height:var(--card-side);border:var(--border-width) solid var(--border-color,#111);border-radius:0;padding:1cqw;background:#fff;position:relative;color:#111;overflow:hidden}.picto-card:hover{box-shadow:0 0 0 3px #176b602a}.picto-label{flex-shrink:0;max-width:100%;width:100%;text-align:center;font-family:Arial,sans-serif;font-size:var(--label-size);font-weight:400;line-height:1.12;overflow-wrap:anywhere;white-space:normal;margin-bottom:.6cqw}.picto-image{display:block;min-height:0;width:100%;flex:1;object-fit:contain}.picto-card.empty{border:1px dashed #ccd6c9;background:#fbfcfa;color:#9aa793;padding:2cqw;gap:1cqw}.empty-plus{font-size:5cqw;line-height:1;font-weight:300;color:#8ea17e}.empty-text{font-size:2cqw;line-height:1.4;text-align:center}.picto-card.target{outline:3px solid var(--green);outline-offset:4px}.paper-credits{position:absolute;bottom:2%;left:4%;right:4%;font-size:1.3cqw;text-align:center;color:#666;line-height:1.5}.page-navigation{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:22px;font-size:11px}.page-navigation .button{min-height:34px;padding:7px 12px;font-size:11px}.icon-button{border:1px solid var(--line);background:#fff;min-width:32px;min-height:32px;border-radius:7px;font-size:17px}.page-options{display:flex;justify-content:center;gap:18px;margin-top:8px}.canvas-hint{font-size:10px;color:var(--muted);text-align:center;line-height:1.6;margin-top:13px}.library-intro{font-size:12px;color:var(--muted);margin-top:-10px;margin-bottom:17px}.search-box{display:flex;align-items:center;border:1px solid #cad5c7;border-radius:8px;padding-left:11px;gap:3px}.search-box>span{font-size:25px;color:#7d907c}.search-box input{border:0;outline-offset:0;padding:12px 4px;font-size:12px;background:none}.search-box button{border:0;border-radius:5px;background:#edf3e9;min-width:30px;min-height:30px;margin-right:5px}.suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.suggestions button{border:0;border-radius:20px;background:#f2f4ee;padding:6px 9px;font-size:10px;color:#61745f}.suggestions button:hover{background:#e1eadc}.results-heading{display:flex;align-items:center;justify-content:space-between;margin-top:24px}.results-heading span{font-size:10px;color:var(--muted)}.results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:535px;overflow-y:auto;padding:3px}.result-card{position:relative;min-width:0;border:1px solid #e0e5db;background:#fff;border-radius:9px;padding:12px 10px 10px;display:flex;align-items:center;flex-direction:column;gap:9px;font-size:11px;text-align:center;overflow-wrap:anywhere}.result-card:hover{border-color:#6f9877;background:#fbfdf9}.result-card img{width:100%;height:85px;object-fit:contain}.result-card .result-plus{position:absolute;right:5px;top:5px;background:#eef4e9;color:#658252;width:20px;height:20px;border-radius:50%;font-size:15px}.result-card .category-line{position:absolute;width:23px;height:3px;bottom:0;border-radius:2px;background:var(--category-color)}.library-note{display:flex;gap:10px;background:#f5f6ef;padding:13px;border-radius:8px;margin-top:22px}.library-note span{color:#92a77e}.library-note p{font-size:10px;line-height:1.7;color:#73816d}.provider{font-size:9px;line-height:1.6;color:var(--muted);text-align:center;margin-top:17px}.provider a{font-weight:650}.example-button{margin-top:20px;width:100%}.app-footer{max-width:1680px;margin:0 auto;padding:15px 3% 30px;display:flex;flex-wrap:wrap;gap:10px 25px;justify-content:space-between;color:var(--muted);font-size:10px;line-height:1.7}.app-footer details{flex-basis:100%}.app-footer details p{max-width:800px;margin-top:8px}.app-footer summary{cursor:pointer}dialog{border:1px solid var(--line);border-radius:15px;max-width:440px;width:calc(100% - 32px);padding:25px;max-height:90dvh;overflow:auto;box-shadow:0 20px 80px #18382c30}dialog::backdrop{background:#152b2455;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center}#edit-preview{text-align:center;margin:15px}#edit-preview img{height:110px;max-width:100%;object-fit:contain}#card-label{margin-bottom:18px}.dialog-actions{display:flex;justify-content:space-between;gap:10px;margin-top:22px}.danger{color:#a84e39;background:#fff1ec}.move-actions{display:flex;align-items:center;gap:8px;font-size:11px}.move-actions>span{margin-right:auto}.move-actions .button{font-size:11px;padding:7px 10px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#253e33;color:white;padding:13px 21px;border-radius:9px;z-index:10;max-width:calc(100% - 32px);font-size:13px;box-shadow:0 4px 20px #0002}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:-60px;left:10px;z-index:20;background:#fff;padding:12px}.skip:focus{top:10px}#print-pages{display:none}[hidden]{display:none!important}.noscript{background:#fff2cc;padding:30px;position:fixed;bottom:0;width:100%}
.spaced-label{margin-top:15px}
.back-to-resources{font-size:12px;white-space:nowrap;text-decoration:none;padding:10px}.back-to-resources:hover{text-decoration:underline}@media(max-width:650px){.header-actions .back-to-resources{grid-column:1/-1;padding:0 0 5px;font-size:12px}}
.background-actions{display:flex;flex-wrap:wrap;gap:8px}.background-actions .button{flex:1;font-size:11px}.switch-row>span{flex:1}.switch-row input{flex-shrink:0}#edit-preview:has(.photo-image){padding:8px;background:repeating-conic-gradient(#e8ece6 0 25%,#fff 0 50%) 50%/14px 14px;border-radius:8px}
.photo-actions{display:flex;gap:8px;margin-top:18px}.photo-actions .button{flex:1;padding:10px 6px;font-size:11px}.picto-card img.photo-image{flex:1 1 0;width:100%;height:0}#photo-options{margin-bottom:16px}
@media(min-width:1500px){.editor-layout{grid-template-columns:285px minmax(300px,1fr) 330px}.panel{padding:25px}.paper-stage{max-width:570px}}
@media(max-width:1100px){.editor-layout{grid-template-columns:230px minmax(260px,1fr)}.library{grid-column:1/-1}.results{grid-template-columns:repeat(6,minmax(0,1fr));max-height:350px}.panel{padding:18px 15px}.brand{font-size:17px}.prototype{display:none}.header-actions{gap:5px}.button{padding:10px}.workspace{padding:17px}.save-state{max-width:140px;line-height:1.5}}
@media(max-width:650px){.app-header{padding:15px 5%;flex-wrap:wrap;gap:18px}.header-actions{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px}.header-actions .button{font-size:10px;padding:9px 5px;gap:4px}.brand{font-size:19px}main{padding:25px 4% 10px}.intro{display:block;margin-bottom:20px}h1{font-size:30px}.intro p:not(.eyebrow){line-height:1.6}.save-state{max-width:none;margin-top:15px}.editor-layout{display:flex;flex-direction:column;gap:16px}.panel,.workspace{width:100%}.settings{display:grid;grid-template-columns:1fr 1fr;column-gap:17px;padding:19px}.settings .panel-title,.settings>label,.settings>input,.settings>select,.settings>.hint,.color-help{grid-column:1/-1}.settings fieldset{grid-column:1/-1}.settings fieldset:nth-of-type(1),.settings fieldset:nth-of-type(2){grid-column:auto;min-width:0}.segmented{flex-direction:column}.grid-presets{grid-template-columns:1fr 1fr}.grid-custom{gap:5px}.results{grid-template-columns:repeat(3,minmax(0,1fr));max-height:420px}.result-card img{height:80px}.workspace{padding:17px 14px}.app-footer{padding:15px 5% 25px}.page-navigation{gap:8px}.picto-card.empty .empty-text{font-size:2.5cqw}}
@media(max-width:650px){input,select,.search-box input{font-size:16px}.button,.icon-button,.text-button,.suggestions button,.grid-presets button,.segmented button,.search-box button{min-height:44px}.header-actions .button,.photo-actions .button{font-size:11px}.background-actions .button{font-size:12px}dialog{padding:18px}.move-actions{flex-wrap:wrap}#edit-preview{margin:12px 0}#edit-preview img{height:100px}.app-footer{font-size:11px}.library .switch-row{font-size:13px;gap:10px}}
@media print{html,body{margin:0!important;padding:0!important;background:white!important}body>*{display:none!important}body>#print-pages{display:block!important}#print-pages .paper{width:var(--print-width);height:var(--print-height);aspect-ratio:auto;margin:0;box-shadow:none;break-after:page;break-inside:avoid;overflow:hidden}#print-pages .paper:last-child{break-after:auto}.picto-card{print-color-adjust:exact;-webkit-print-color-adjust:exact}.picto-card.empty{visibility:hidden}.picto-card.target{outline:none}.picto-card:hover{box-shadow:none}.paper-credits{color:#333}}
