:root{--paper:#f5f0e5;--ink:#2e342e;--muted:#716e61;--green:#294a3b;--red:#a84232;--line:#d6ccba}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}button:focus-visible,a:focus-visible{outline:3px solid #bd7141;outline-offset:4px}button{border:0}header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:25px 4%;border-bottom:1px solid var(--line)}.brand{font:30px Georgia,serif;color:var(--ink);text-decoration:none;white-space:nowrap}.brand i{color:var(--red)}.brand small{display:block;font:9px system-ui;letter-spacing:2.1px;margin-top:7px}.header-actions,.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.primary,.outline,.quiet{padding:12px 20px;border-radius:7px;font-size:13px;line-height:1.4}.primary{background:var(--green);color:#fffaf0}.outline{border:1px solid #bbae98;background:transparent;color:var(--ink)}.quiet{background:transparent;color:var(--green);text-decoration:underline;text-underline-offset:4px}.intro{padding:32px 4% 30px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.overline{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--red);margin:0 0 14px}h1{font:45px/1.08 Georgia,serif;letter-spacing:-1.3px;margin:0 0 17px}h1 i{color:var(--green);font-weight:400}.lead{font-size:15px;line-height:1.65;margin:0;color:var(--muted)}.intro aside{text-align:right;padding-bottom:4px}.handwritten{font:italic 20px Georgia,serif}.intro aside p{font-size:12px;color:var(--muted);margin:15px 0}.board-shell{position:relative;margin:0 24px;border:10px solid #76543c;border-radius:4px;background:#b19069;box-shadow:0 8px 24px #46331d25;overflow:hidden}.viewport{height:max(460px,calc(100dvh - 400px));position:relative;overflow:hidden;touch-action:none;cursor:grab;background-color:#b28c62;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.6' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.32' filter='url(%23n)'/%3E%3C/svg%3E");box-shadow:inset 0 0 60px #3d2c2529}.world{position:absolute;width:2400px;height:2000px;transform-origin:0 0}.photo{position:absolute;background:#fffcf2;padding:10px 10px 16px;color:var(--ink);text-align:left;box-shadow:3px 8px 12px #39291662;transform:rotate(var(--r));transition:box-shadow .15s;touch-action:none;border:1px solid #eee6d5}.photo:hover,.photo:focus-visible{z-index:3;box-shadow:5px 13px 20px #30221985}.photo:before{content:'';position:absolute;top:2px;left:50%;width:9px;height:9px;border-radius:50%;background:#9a4134;box-shadow:1px 2px 3px #483122aa,inset 1px 1px 2px #e4a08a}.photo img{display:block;width:100%;height:176px;object-fit:cover;object-position:center 25%;pointer-events:none;background:#e1d6c5}.photo .caption{display:block;font:italic 20px/1.2 Georgia,serif;padding:12px 2px 6px}.photo .meta{font-size:10px;color:var(--muted)}.photo .counter{float:right;color:var(--green)}.paper-note{background:#f5e1aa;width:230px;min-height:195px;padding:30px 22px 25px;transform:rotate(-3deg)}.paper-note h3{font:italic 27px/1.2 Georgia,serif;margin:0 0 18px}.paper-note p{font-size:12px;line-height:1.7;margin:0}.paper-note:before{width:70px;height:22px;border-radius:0;left:36%;top:-9px;background:#f2dbaeaa;box-shadow:none;transform:rotate(4deg)}.board-stamp{position:absolute;left:22px;top:20px;pointer-events:none;z-index:4;color:#443c2e9c;font:17px/1.1 Georgia,serif;letter-spacing:2px}.board-stamp span{font:10px system-ui;letter-spacing:1px}.mix{position:absolute;right:18px;top:17px;background:#fff9eced;padding:12px 18px;border-radius:24px;box-shadow:0 2px 8px #45301d33;font-size:12px;color:var(--ink)}.board-tools{position:absolute;right:18px;bottom:16px;display:flex;align-items:center;background:#fff9ec;border-radius:25px;padding:4px;box-shadow:0 2px 10px #34220f44}.board-tools button{width:36px;height:35px;font-size:23px;background:none;color:var(--ink)}.board-tools #fit{width:auto;padding:0 15px;font-size:11px;border-left:1px solid var(--line)}#zoom{font-size:11px;width:42px;text-align:center}.board-hint{position:absolute;left:18px;bottom:20px;background:#fff9ecdf;padding:9px 14px;border-radius:20px;font-size:11px;color:#534839}.credits{padding:20px 4%;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}summary{cursor:pointer;color:var(--green)}footer{padding:20px 4%;border-top:1px solid var(--line);display:flex;gap:20px;flex-wrap:wrap;align-items:center;font-size:11px;color:var(--muted)}footer span{margin-right:auto}footer button{background:none;font-size:11px;color:var(--muted);text-decoration:underline}.gate{margin:0 4% 30px;background:#e9e1d1;padding:30px;border-radius:8px;line-height:1.7}.gate img{max-width:320px;max-height:360px;object-fit:contain;display:block;margin:20px 0}.preview-bar{background:#293b32;color:#fff7e8;padding:9px 4%;font-size:11px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.preview-bar button{background:#fff2;color:#fff;padding:5px 9px;border:1px solid #fff5;border-radius:5px;font-size:11px}dialog{padding:0;border:0;border-radius:9px;width:min(1040px,calc(100vw - 28px));max-height:93dvh;background:var(--paper);color:var(--ink);box-shadow:0 25px 100px #15171088}dialog::backdrop{background:#19281ed1;backdrop-filter:blur(5px)}.close{position:absolute;right:13px;top:13px;border:1px solid var(--line);background:#fff9efed;border-radius:50%;width:36px;height:36px;font-size:25px;z-index:5;color:var(--ink)}.story-layout{display:grid;grid-template-columns:46% 54%;min-height:570px}.story-visual{background:#d7c9ad;padding:55px 28px;display:flex;align-items:center;justify-content:center}.print{background:#fffdf6;padding:13px 13px 28px;box-shadow:6px 12px 25px #3d35233b;transform:rotate(-2deg);width:100%;text-align:center}.print img{display:block;width:100%;height:350px;object-fit:contain;background:#ece7db}.print span{display:block;font:italic 22px Georgia,serif;margin-top:20px}.story-copy{padding:60px 36px 35px}.story-copy h2{font:35px/1.15 Georgia,serif;margin:0 0 22px}.story-empty{font:italic 26px/1.45 Georgia,serif;color:#756b5a;padding:10px 0 20px}.story-entry{border-top:1px solid var(--line);padding:22px 0}.story-entry h3{font:26px/1.25 Georgia,serif;margin:0 0 12px}.story-entry p{font:23px/1.55 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere}.story-entry small{font-size:11px;color:var(--muted)}audio{display:block;width:100%;margin:14px 0}.muted{font-size:12px;line-height:1.7;color:var(--muted)}.story-copy>.muted{margin-top:20px}.form-box{padding:44px;max-width:650px;margin:auto}.form-box.wide{max-width:900px}.form-box h2{font:35px/1.15 Georgia,serif;margin:0 0 18px}.form-box>p{line-height:1.7;font-size:14px}label{display:block;font-size:13px;line-height:1.6;margin:20px 0 10px}input:not([type=checkbox]):not([type=file]),textarea{display:block;width:100%;padding:12px;margin-top:7px;background:#fffbf4;border:1px solid #c5b99f;border-radius:5px;color:var(--ink)}textarea{min-height:130px;resize:vertical;line-height:1.6}input[type=file]{display:block;max-width:100%;font-size:12px}.check{display:flex;gap:10px;align-items:flex-start}.check input{margin-top:5px;width:18px;height:18px;flex-shrink:0}.voice-box{padding:18px;background:#eae4d6;border-radius:7px;margin:20px 0}.voice-head{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px}.voice-box p{font-size:12px;line-height:1.6;color:var(--muted)}.error{color:#a43627!important}.result-card{background:#fffcf6;border:1px solid var(--line);padding:22px;margin:18px 0;border-radius:7px}.result-card h3{font:25px Georgia,serif;margin:0 0 12px}.result-card p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font-size:15px}.result-card .status{font-size:11px;letter-spacing:1px;color:var(--green)}.result-card img{max-width:180px;max-height:140px;object-fit:contain;margin:12px 0}.offer{border-top:1px solid var(--line);padding:12px 0}.offer h3{font:24px Georgia,serif;margin:12px 0}.offer p{font-size:14px;line-height:1.7}.actions{margin-top:20px}#toast{display:none;position:fixed;z-index:100;bottom:22px;left:50%;transform:translateX(-50%);max-width:92vw;padding:14px 22px;border-radius:8px;background:var(--green);color:#fffaf0;font-size:13px;box-shadow:0 5px 20px #152c2240}@media(max-width:700px){header{padding:17px 18px;align-items:flex-start}.brand{font-size:25px}.brand small{font-size:7px;letter-spacing:1px}.header-actions{gap:5px;justify-content:flex-end;max-width:135px}.header-actions button{font-size:10px;padding:7px 9px}.intro{padding:25px 20px;align-items:flex-start}.intro aside{display:none}h1{font-size:36px}.lead{font-size:13px}.overline{font-size:9px;letter-spacing:1.5px}.board-shell{margin:0 9px;border-width:6px}.viewport{height:calc(100dvh - 330px);min-height:430px}.board-stamp{left:13px;top:16px;font-size:14px}.board-stamp span{font-size:8px}.board-hint{bottom:66px;left:12px;font-size:10px;padding:8px 10px}.board-tools{right:11px;bottom:12px}.mix{right:12px;top:12px;font-size:11px;padding:10px 12px}.credits{padding:17px 20px;font-size:11px}.credits>span{display:none}footer{padding:15px 20px;font-size:10px;gap:10px}footer span{width:100%}footer button{font-size:10px}.story-layout{display:block}.story-visual{padding:35px 45px 30px}.print img{height:260px}.print{padding:10px 10px 20px}.print span{font-size:20px;margin-top:13px}.story-copy{padding:25px}.story-copy h2{font-size:30px}.story-entry p{font-size:22px}.story-empty{font-size:24px}.form-box{padding:40px 24px 28px}.form-box h2{font-size:30px}.gate{margin:0 18px 24px;padding:24px}.gate img{max-width:100%}.preview-bar{font-size:10px;padding:8px 15px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
