@font-face{font-family:WildStrokes;src:url('assets/WildStrokes.ttf') format('truetype')}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Georgia,serif;color:#27221c;background:#eadcc3}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}[hidden]{display:none!important}.screen{min-height:100vh}.home-screen{position:relative;min-height:100vh;overflow:hidden;background:#293d56}.home-art{position:absolute;inset:0;background:url('assets/home.webp') center center / cover no-repeat}.home-overlays{position:relative;z-index:2;min-height:100vh;display:flex;align-items:center;flex-direction:column;pointer-events:none;padding:1.5vh 20px 4vh}.home-overlays>*{pointer-events:auto}.title-paper{width:max-content;max-width:88vw;background:#f7e6c3ee;box-shadow:0 6px 1px #2b2321a6;border-radius:28% 28% 11% 11% / 19% 20% 18% 18%;border:4px solid #e8bc7d;padding:6px 28px 8px;text-align:center;transform:rotate(-.5deg)}h1{font-family:Georgia,serif;font-size:clamp(32px,4.25vw,76px);font-weight:900;margin:0;letter-spacing:-2px;text-shadow:1px 2px #dcad6a;color:#1f2231}.title-paper p{font:italic 700 clamp(12px,1.25vw,24px) Georgia,serif;margin:4px 0}.home-entries{margin-top:auto;display:flex;gap:20px;justify-content:center;width:100%;max-width:850px}.entry-btn{display:flex;align-items:center;gap:12px;border:3px solid #4e3322b0;border-radius:45px;padding:16px 28px;font:bold clamp(18px,2vw,29px) Georgia,serif;box-shadow:0 8px 2px #1d212c88;color:#1f2025;transition:transform .2s}.entry-btn:hover{transform:translateY(-4px)}.entry-btn.warm{background:#f8b835}.entry-btn.cool{background:#76bee3}.big-symbol{font-size:35px}.language-entry{display:flex;gap:12px;margin-top:12px}.language-entry button{padding:8px 18px;background:#fff1d8e8;border:1px solid #765b42;border-radius:20px;font-size:14px}.paris-paper{margin-top:12px;background:#ffe4b8e8;padding:8px 35px;border-radius:5px;transform:rotate(-1.5deg);font-weight:bold}.home-logo{position:absolute;left:12px;bottom:9px;display:flex;align-items:center;gap:9px;z-index:3;color:#ffeed7;font-size:12px;text-shadow:1px 1px 2px #000}.home-logo img{width:72px;max-height:45px;object-fit:contain}.studio-screen{background:url('assets/wallpaper.webp') center / cover fixed;padding-bottom:3px}.topbar{background:#f3e3c9ed;display:flex;align-items:center;gap:12px;padding:9px 17px;border-bottom:3px solid #805b3f}.topbar button,.category-tabs button,.editing-buttons button,.top-actions button,.asset-action-buttons button,.finish-tools button,.finish-panel header button{background:#f4e9d7;border:1px solid #b49a78;border-radius:7px;padding:8px 10px;color:#372a25}.little-home{font-size:28px!important;line-height:20px}.studio-name{font-weight:bold;font-size:20px;flex:1}.studio-name small{font-size:11px;color:#87654f}.top-actions{display:flex;gap:8px}.studio-main{display:grid;grid-template-columns:minmax(165px,18%) minmax(350px,1fr) minmax(170px,20%);gap:10px;max-width:1680px;margin:12px auto;min-height:75vh;padding:0 10px}.tray,.work-center{background:#f7eedceF;border:3px solid #b48756;border-radius:12px;box-shadow:0 4px 10px #2b212f55;padding:10px}.tray{min-width:0}.tray h2{font-size:15px;letter-spacing:.06em;margin:4px 0 10px;text-align:center}.category-tabs{display:flex;flex-wrap:wrap;gap:5px;justify-content:center}.category-tabs button{font-size:12px;padding:6px 8px}.category-tabs button.active{background:#dca75a;color:#221a12;border-color:#6c4f30;font-weight:bold}.tray-hint{font-size:11px;text-align:center;color:#746450;margin:10px 0}.item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:50vh;overflow:auto;padding:3px}.asset-thumb{border:2px solid #dac7a9;background:#fff8ec;border-radius:6px;padding:3px;aspect-ratio:1.25;display:flex;align-items:center;justify-content:center;touch-action:pan-y}.asset-thumb:hover{border-color:#ae773a;background:#fff}.asset-thumb img{width:100%;height:100%;object-fit:contain;pointer-events:none}.work-center{display:flex;flex-direction:column;gap:7px;min-width:0}.canvas-top{display:flex;justify-content:space-between;align-items:center;font-size:15px;font-weight:bold;gap:9px}.mode-pick{display:flex;gap:3px}.mode-pick button{border:1px solid #a88b69;background:#f3e4cb;border-radius:6px;padding:6px 8px;font:12px Georgia}.mode-pick button.active{background:#33749a;color:white}.canvas-bound{position:relative;min-height:200px;aspect-ratio:1200 / 760;background:#fff8e9;border:8px solid #bca178;box-shadow:inset 0 0 3px #64503f,0 3px 8px #867256;margin:1px auto;width:100%;max-width:1020px;overflow:hidden}#workCanvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#workCanvas.paint-cursor{cursor:crosshair}.paint-controls{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;background:#f6e7cb;border-radius:7px;padding:7px}.palette{display:flex;flex-wrap:wrap;gap:4px;max-width:250px}.color-button{width:26px;height:26px;border-radius:50%;border:2px solid #b59f7d}.color-button.active{outline:3px solid #252525;outline-offset:1px}.range-label{display:flex;align-items:center;gap:5px;font:12px Georgia;color:#3c3029}.range-label input{width:110px;accent-color:#287ca0}.range-label output{min-width:35px;text-align:right;font:12px Georgia}.workspace-footer{display:flex;justify-content:space-between;gap:8px;margin-top:auto;align-items:center}.editing-buttons{display:flex;flex-wrap:wrap;gap:5px}.primary{background:#f6b938!important;color:#26201a!important;border:2px solid #915b2c!important;border-radius:10px;padding:10px 16px;font-weight:bold}.edit-panel{margin-top:12px;border-top:2px solid #d0af84;padding-top:9px;display:flex;flex-direction:column;gap:8px}.edit-panel strong{font-size:14px}.edit-panel p{font-size:12px;color:#826b54;margin:0}.edit-panel .range-label{justify-content:space-between;flex-wrap:wrap}.edit-panel .range-label input{width:100%;order:3}.asset-action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:5px}.asset-action-buttons button{font-size:12px;padding:6px}.studio-footer{text-align:center;color:#fff6e3;font:12px Georgia;text-shadow:1px 2px #2b2926;padding:5px}.finish-screen{background:url('assets/wallpaper.webp') center / cover;display:grid;place-items:center;padding:20px}.finish-panel{max-width:1350px;width:100%;border:5px solid #b68a50;border-radius:16px;background:#faefdd;padding:15px;box-shadow:0 8px 25px #0006}.finish-panel header{display:flex;align-items:center;justify-content:space-between;gap:8px}.finish-panel h2{font-size:24px}.finish-layout{display:grid;grid-template-columns:minmax(300px,1fr) 250px;gap:18px}.preview-frame{align-self:start;position:relative;border:12px solid #ddccaa;background:white;box-shadow:0 2px 10px #0004;aspect-ratio:1200/760;overflow:hidden}.preview-frame.gold{border-color:#d0a346;box-shadow:0 0 0 4px #84662b,0 3px 9px #0004}.preview-frame.wood{border-color:#85532d}.preview-frame.black{border-color:#1d1c1b}#previewCanvas{width:100%;height:100%;display:block}.signature-overlay{position:absolute;left:60%;top:79%;font:55px WildStrokes,cursive;color:#24201d;cursor:move;touch-action:none;white-space:nowrap;text-shadow:0 0 1px #3333}.finish-tools{display:flex;flex-direction:column;gap:12px}.finish-tools label{display:flex;flex-direction:column;gap:5px;font-size:14px}.finish-tools input,.finish-tools select{padding:7px;border:1px solid #a58d71;border-radius:5px}.finish-tools input[type=range]{padding:0}.small-help{font-size:12px;color:#7c6854}.modal{position:fixed;inset:0;background:#13100dbb;display:grid;place-items:center;z-index:20;padding:16px}.modal-inner{position:relative;max-width:560px;width:100%;background:#fff0d5;border:5px solid #c79d61;border-radius:16px;padding:25px;text-align:center;box-shadow:0 10px 20px #0008}.modal-inner p{line-height:1.7}.close-modal{position:absolute;right:7px;top:7px;border:0;background:none;font-size:28px}.mini-lesson{font-size:46px;padding:16px;color:#ae513d}.modal-buttons{display:flex;gap:10px;justify-content:center}@media(max-width:930px){.studio-main{grid-template-columns:150px 1fr 160px;gap:5px;padding:0 4px}.tray,.work-center{padding:6px}.category-tabs button{padding:5px;font-size:11px}.paint-controls{gap:5px}.range-label input{width:70px}.entry-btn{padding:12px 18px}}@media(max-width:680px){.studio-main{display:flex;flex-direction:column}.work-center{order:1}.tray-left{order:2}.tray-right{order:3}.item-grid{display:flex;max-height:130px;overflow-x:auto}.asset-thumb{min-width:110px;max-width:110px}.canvas-bound{aspect-ratio:1.4}.topbar{padding:7px}.studio-name{font-size:13px}.studio-name small{display:none}.top-actions button{font-size:12px;padding:5px}.title-paper{max-width:95vw;padding:10px}.title-paper h1{font-size:clamp(26px,7vw,48px)}.home-entries{flex-direction:column;align-items:center;gap:10px}.home-art{background-position:50% 50%}.finish-layout{display:flex;flex-direction:column}.finish-panel header{flex-wrap:wrap}.finish-panel h2{font-size:18px}.palette{max-width:100%}}

#itemTools{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);width:min(530px,calc(100vw - 24px));z-index:15;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;padding:9px;gap:4px;border:2px solid #70415e;border-radius:10px;background:#fff2da;box-shadow:0 4px 16px #38202f40;color:#382a23}
#itemTools h3{width:100%;margin:0;padding-right:65px;color:#633652;font:italic 17px Georgia;line-height:1.1}#selectionText{width:100%;text-align:center;font:italic 15px Georgia}#itemTools button{min-height:30px;min-width:32px;padding:4px 7px;border:1px solid #866278;border-radius:7px;font:13px Georgia;background:#fff5e4;color:#382a23}#doneEditing{position:absolute;right:7px;top:7px;background:#e9dbea!important}#itemTools .object-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:4px;width:100%}#itemTools .range-label{width:100%;justify-content:center;margin:0;line-height:1.3}#itemTools input[type=range]{width:65%;height:18px;accent-color:#613957}#itemTools :is(#smaller,#larger,#rotateLeft,#rotateRight){font:23px/1 Arial;padding:2px 7px;color:#21131b}#itemTools #delete{color:#862e38;border-color:#a55d64}#toolUndo{min-width:80px!important}#itemTools button:focus-visible{outline:3px solid #187a87;outline-offset:2px}@media(max-width:700px){#itemTools{bottom:9px}#itemTools button{font-size:12px}}

#workCanvas.paint-cursor{cursor:url('assets/cubist-brush-cursor.svg') 7 43,crosshair}#workCanvas.eraser-cursor{cursor:crosshair}

.paint-mode-pick{margin-right:4px}.paint-mode-pick button{padding:8px 12px;font-size:13px}.signature-overlay{line-height:1.2;transform-origin:0 0;user-select:none;min-height:1em}.signature-overlay:empty{display:none}.preview-frame.ornate{border:0;border-radius:0}.finish-tools{max-height:78vh;overflow:auto;padding-right:5px}@media(max-width:680px){.finish-tools{max-height:none;overflow:visible}}

.orientation-label{display:flex;align-items:center;gap:5px;font:12px Georgia;margin-left:auto}.orientation-label select{max-width:110px;border:1px solid #a88b69;border-radius:6px;padding:5px;background:#f3e4cb}.canvas-top{flex-wrap:wrap}.preview-frame{width:100%}

.canvas-workspace{display:flex;flex-direction:column;gap:7px;min-width:0}.portrait-layout .canvas-workspace{display:grid;grid-template-columns:minmax(0,1fr) 136px;align-items:center;gap:12px}.portrait-layout .canvas-bound{aspect-ratio:auto!important;max-width:calc((100dvh - 180px)*.633333);min-height:0;margin:0 auto}.portrait-layout #workCanvas{height:auto}.portrait-layout .paint-controls{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;padding:10px;margin:0}.portrait-layout .paint-mode-pick{display:flex;flex-direction:column;gap:6px;margin:0}.portrait-layout .paint-mode-pick button{min-height:38px}.portrait-layout .palette{display:grid;grid-template-columns:repeat(3,26px);justify-content:center;max-width:none;gap:7px}.portrait-layout .range-label{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px}.portrait-layout .range-label input{order:3;width:100%;margin:0}.portrait-layout .range-label output{min-width:0}.portrait-layout .workspace-footer{margin-top:4px}@media(max-width:930px){.portrait-layout .canvas-workspace{grid-template-columns:minmax(0,1fr) 120px;gap:8px}.portrait-layout .paint-controls{padding:7px}}@media(max-width:400px){.portrait-layout .canvas-workspace{grid-template-columns:minmax(0,1fr) 104px;gap:6px}.portrait-layout .palette{grid-template-columns:repeat(3,24px);gap:4px}.portrait-layout .color-button{width:24px;height:24px}}

.orientation-buttons{display:flex;gap:5px;margin-left:auto}.orientation-buttons button{border:1px solid #a88b69;background:#f3e4cb;border-radius:6px;padding:6px 9px;font:12px Georgia;color:#372a25}.orientation-buttons button.active{background:#dca75a;border-color:#6c4f30;font-weight:bold}.orientation-buttons button:focus-visible{outline:3px solid #267fa8;outline-offset:2px}

.canvas-top .top-history{flex-wrap:nowrap;gap:5px}.canvas-top .top-history button{padding:6px 9px;font:12px Georgia;border:1px solid #a88b69;background:#f3e4cb;border-radius:6px;white-space:nowrap}

.gallery-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:12px 0}.gallery-actions button{background:#f4e9d7;border:1px solid #b49a78;border-radius:7px;padding:10px 20px;color:#372a25;min-height:42px;font-weight:bold}.gallery-status{margin:0 0 10px;text-align:right;font-size:13px;color:#5a4631}.gallery-status:empty{display:none}

.music-toggle{position:relative;min-width:38px;min-height:38px;background:#fff3dc!important;color:#242424!important;border:1px solid #9b805e;border-radius:7px;padding:5px 9px;font-size:23px!important;line-height:1;cursor:pointer}.home-music{position:absolute;right:18px;bottom:18px;z-index:4;box-shadow:0 3px 8px #0005}.music-toggle.is-muted:after{content:'';position:absolute;left:7px;right:7px;top:50%;height:2px;background:#242424;transform:rotate(-40deg);pointer-events:none}.music-toggle:focus-visible{outline:3px solid #267fa8;outline-offset:3px}

.tray-finish{margin-top:12px;padding-top:10px;border-top:1px solid #d0af84}.tray-finish #finish{width:100%;font-size:16px;padding:10px 8px;min-height:44px}


/* v19: Approved restrained, painterly workshop colors. All controls and placement are preserved. */
.studio-main .tray,.studio-main .work-center{
 border:4px solid #bf822f;
 border-radius:18px;
 box-shadow:inset 0 0 0 2px #f6d58b,inset 0 0 0 5px #6e4924,0 5px 13px #120e0c77;
}
.studio-main .tray-left{
 background-color:#075b5b;
 background-image:repeating-linear-gradient(145deg,transparent 0 21px,#8bd0b80b 22px 25px,transparent 29px 47px),linear-gradient(160deg,#064443 0%,#116f70 54%,#034a4d 100%);
 color:#fff8eb;
}
.studio-main .tray-right{
 background-color:#c78b27;
 background-image:repeating-linear-gradient(150deg,transparent 0 21px,#fff8c414 23px 26px,transparent 30px 49px),linear-gradient(160deg,#9e742c 0%,#d39834 53%,#bf7d20 100%);
 color:#fff8ee;
}
.studio-main .work-center{
 background-color:#f3ddad;
 background-image:repeating-linear-gradient(155deg,transparent 0 24px,#fffefb15 25px 29px,transparent 31px 50px),linear-gradient(145deg,#f7e8ca,#f2d8a5);
}
.studio-main .tray-hint{color:#fff9eb;text-shadow:0 1px 2px #2229;}
.studio-main .tray h2{color:#fff9e8;text-shadow:0 2px 3px #1a120b99;font-size:clamp(13px,1.1vw,18px);}
.studio-main .asset-thumb{background:#fff4dc;border-color:#bb853c;border-radius:9px;box-shadow:0 2px 3px #1a140b35}
.studio-main .canvas-bound{border:9px ridge #c49134;box-shadow:0 0 0 2px #80511f,0 4px 7px #2c211c77;background:#fff8ea}
.studio-main .paint-controls{background:#f5e0b8a8}
.studio-main .tray-finish{border-top-color:#f3d29d}
.studio-main .category-tabs button.active{background:#f0b92c;border-color:#88541d}
@media(max-width:680px){.studio-main .tray,.studio-main .work-center{border-width:3px;border-radius:12px}}

/* v20: actual monochromatic brush texture extracted from the approved wallpaper */
.studio-main .tray-left{background:#075452 url('assets/painted-teal.webp') center/cover no-repeat;color:#fff9ef}
.studio-main .tray-right{background:#b78222 url('assets/painted-ochre.webp') center/cover no-repeat;color:#fff9ed}
.studio-main .work-center{background:#f4dfb9 url('assets/painted-ivory.webp') center/cover no-repeat}
.studio-main .paint-controls{background:rgba(250,229,187,.84);box-shadow:inset 0 0 12px #97632226}
.studio-main .tray,.studio-main .work-center{border:5px ridge #b9832e;box-shadow:inset 0 0 0 2px #fce1a4,0 5px 12px #1b101077}
/* v20: layered paper title and a true, independent language picker */
.home-overlays{padding:1.3vh 12px 4vh;justify-content:space-between}
.title-lockup{display:flex;flex-direction:column;align-items:center;width:min(94vw,1080px);filter:drop-shadow(0 5px 2px #2420238c)}
.title-lockup .title-paper{background:#fae7c5f7;max-width:94vw;width:auto;border:0;border-radius:4px;padding:3px 34px 8px;clip-path:polygon(0 15%,9% 5%,18% 10%,27% 0,38% 8%,49% 3%,59% 11%,69% 1%,80% 12%,91% 5%,100% 22%,97% 96%,85% 90%,72% 100%,60% 94%,46% 100%,32% 92%,16% 100%,3% 90%);transform:rotate(-1deg);box-shadow:none}
.title-lockup h1{font-family:Georgia,serif;font-size:clamp(30px,4.3vw,72px);letter-spacing:-.045em;text-shadow:2px 2px #d2ad78;margin:0;line-height:1.18}
.studio-paper,.tag-paper{background:#fff0d5fa;color:#262126;clip-path:polygon(0 17%,9% 5%,22% 10%,36% 2%,58% 9%,74% 0,89% 8%,100% 18%,97% 93%,80% 100%,53% 93%,30% 100%,10% 90%,2% 98%);padding:8px 32px;text-align:center;transform:rotate(-1.25deg)}
.studio-paper{font:700 clamp(16px,2.0vw,30px) Georgia,serif;z-index:1;margin-top:-4px;min-width:48%}
.tag-paper{font:italic 700 clamp(12px,1.4vw,21px) Georgia,serif;margin-top:3px;max-width:90vw}
.home-bottom{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:auto}
.home-entries{margin-top:0}
.language-choice{display:flex;justify-content:center;gap:10px;background:#f7e8cde8;border-radius:28px;padding:5px;border:1px solid #895b32}
.language-choice button{background:#fff4e1;border:1px solid #9e7454;border-radius:22px;padding:8px 24px;font-weight:bold;color:#2d2a26;min-height:41px}
.language-choice button.active{background:#f1b735;border-color:#503920;box-shadow:inset 0 0 0 2px #ffe6a1}
.home-entries .entry-btn{min-width:265px;justify-content:center}
.home-bottom .paris-paper{margin-top:0}
@media(max-width:680px){.title-lockup h1{font-size:clamp(27px,6vw,42px)}.studio-paper{font-size:17px}.tag-paper{font-size:13px}.home-overlays{padding:8px 8px 16px}.home-entries{flex-direction:column;gap:7px}.entry-btn{min-height:46px}.home-bottom{gap:7px}.language-choice button{padding:6px 17px}.paris-paper{font-size:12px}}

/* v21: browser-only Saved Art Gallery on the final Frame & Sign screen */
.saved-gallery{margin:22px 0 2px;padding:17px;border-radius:12px;border:2px solid #b7894b;background:#fff6e9;box-shadow:inset 0 0 0 3px #f2dcb7}
.saved-gallery-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid #d8b98b;padding-bottom:9px;margin-bottom:12px}
.saved-gallery h3{font-size:22px;margin:0}.gallery-privacy{color:#6a5b49;font-size:12px}
#galleryEmpty{color:#75644e;text-align:center;padding:16px}
.saved-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.saved-gallery-card{min-width:0;border:2px solid #d4ad78;border-radius:9px;background:#fff9ee;padding:7px;text-align:left;display:flex;flex-direction:column;gap:5px;cursor:pointer;color:#30251c}
.saved-gallery-card:hover,.saved-gallery-card:focus-visible{outline:2px solid #986229}
.saved-gallery-card img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#f5ebda;border-radius:4px}
.saved-gallery-card strong{font-size:13px;overflow-wrap:anywhere}.saved-gallery-card small{font-size:11px;color:#7b6755}
.saved-gallery-modal{max-width:min(92vw,950px);max-height:92vh;overflow:auto}.saved-gallery-modal h2{padding-right:22px}
.saved-gallery-modal img{display:block;max-width:100%;max-height:64vh;object-fit:contain;margin:0 auto 14px;background:#fff9ed;border:5px solid #c59b62}
.saved-gallery-modal-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}
.saved-gallery-modal-actions button{background:#f9e4c3;border:1px solid #a57846;border-radius:7px;padding:9px 15px}
@media(max-width:680px){.saved-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.saved-gallery-head h3{font-size:18px}}
