:root{color:#443b4b;font-synthesis:none;background:#f6efdf;font-family:ui-rounded,Trebuchet MS,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:#fffaf0;border:0;border-radius:18px;min-height:48px;padding:10px 15px;box-shadow:0 3px #443b4b18}button:hover{filter:brightness(.97)}button:focus-visible{outline-offset:3px;outline:3px solid #655277}button[aria-pressed=true]{outline-offset:-3px;outline:3px solid #655277}button:disabled{opacity:.5;cursor:default}header{justify-content:space-between;align-items:center;max-width:1400px;height:66px;margin:auto;padding:10px 24px;display:flex}.brand{letter-spacing:-1.8px;font-size:28px;font-weight:900}.brand span{letter-spacing:2px;color:#8a6e9c;margin-left:9px;font-size:15px}header button{box-shadow:none;background:0 0;font-size:20px}.shell{grid-template-columns:minmax(0,1fr) 300px;gap:16px;max-width:1400px;height:calc(100dvh - 66px);margin:auto;padding:0 18px 18px;display:grid}.stage{background:#e9ede2;border:2px solid #fff8;border-radius:32px;min-height:0;position:relative;overflow:hidden}.stage canvas{touch-action:none;width:100%;height:100%;display:block}.tag{letter-spacing:1px;text-transform:uppercase;color:#62705d;pointer-events:none;font-size:13px;position:absolute;top:17px;left:20px}.hint{text-align:center;pointer-events:none;color:#665771;font-size:17px;font-weight:700;position:absolute;bottom:20px;left:0;right:0}.hint span{background:#fffaf0ed;border-radius:25px;padding:10px 20px;display:inline-block}.sidebar{flex-direction:column;gap:12px;min-height:0;display:flex;overflow:auto}.palette{justify-content:space-between;gap:7px;padding:4px;display:flex}.color{background:var(--color);border:4px solid #fffaf0;border-radius:50%;width:39px;height:39px;min-height:39px;padding:0}.selection{text-align:left;align-items:center;gap:12px;width:100%;min-height:86px;display:flex}.selection img{object-fit:contain;width:70px;height:60px}.selection small{opacity:.6;margin-top:3px;font-size:12px;display:block}.primary-row{gap:10px;display:flex}.drop{background:#df9b70;flex:1;min-height:72px;font-size:25px;font-weight:800;box-shadow:0 5px #bd7953}.rotate{background:#e3d9eb;width:78px;font-size:28px}.tools{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tools button{min-height:65px;font-size:15px}.tools b{font-size:25px;line-height:1.2;display:block}.modes{background:#ebe2d0;border-radius:20px;gap:5px;padding:5px;display:flex}.modes button{box-shadow:none;background:0 0;flex:1;padding:8px 3px;font-size:12px}.modes button[aria-pressed=true]{background:#fffaf0;outline:0}.camera-card{margin-top:auto;font-size:14px}.message{text-align:center;color:#725f7c;min-height:20px;margin:0;font-size:13px}.letters{justify-content:center;gap:5px;display:flex;position:absolute;top:49px;left:12px;right:12px}.letters[hidden]{display:none}.letters button{border-radius:12px;width:37px;min-height:39px;padding:6px;font-weight:700}.modal{color:#443b4b;background:#f6efdf;border:0;border-radius:28px;max-width:min(600px,94vw);max-height:85dvh;padding:24px;box-shadow:0 15px 90px #352b4b44}.modal::backdrop{background:#443b4b66}.modal h2{margin:0 0 18px;font-size:23px}.modal .close{float:right;min-width:48px}.shape-grid{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.shape-grid button{flex-direction:column;align-items:center;padding:5px;font-size:11px;display:flex}.shape-grid img{object-fit:contain;width:76px;max-width:100%;height:65px}.adult-links{flex-direction:column;gap:14px;padding:12px 0;display:flex}.adult-links a{color:#655277}.adult-links footer{border-top:1px solid #d4c6bc;padding-top:10px}.adult-copy{font-size:14px;line-height:1.6}.hold-progress{outline:3px solid #aa8fba;background:#e3d9eb!important}.error{padding:25px}.card-preview{object-fit:contain;border-radius:15px;max-width:100%;max-height:55dvh}.card-actions{gap:10px;margin-top:12px;display:flex}@media (width<=700px){header{height:53px;padding:6px 14px}.brand{font-size:25px}.brand span{font-size:12px}.shell{grid-template-rows:minmax(190px,1fr) auto;grid-template-columns:1fr;gap:8px;height:calc(100dvh - 53px);padding:0 10px 10px}.stage{border-radius:24px}.sidebar{grid-template-columns:1fr 1fr;gap:8px;display:grid;overflow:visible}.selection{border-radius:15px;min-height:55px;padding:4px 10px;font-size:14px}.selection img{width:45px;height:43px}.selection small{font-size:10px}.palette{align-self:center;gap:4px}.color{border-width:3px;width:27px;height:32px;min-height:32px}.primary-row{grid-column:1/-1}.drop{min-height:58px;font-size:23px}.rotate{width:80px}.tools{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:8px}.tools button{min-height:48px;padding:5px;font-size:12px}.tools b{margin-right:4px;font-size:20px;display:inline}.modes{grid-column:1/-1;padding:2px}.modes button{min-height:36px}.camera-card{min-height:38px;margin:0;padding:6px;font-size:12px}.message{align-self:center;min-height:0;font-size:11px}.hint{font-size:14px;bottom:10px}.hint span{padding:7px 14px}.tag{font-size:10px;top:12px;left:14px}.shape-grid{grid-template-columns:repeat(4,1fr)}.modal{padding:16px}}@media (height<=650px) and (width<=700px){.shell{grid-template-rows:230px auto;height:auto;min-height:calc(100dvh - 53px)}.tag{display:none}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
