@charset "UTF-8";
:root{--paper:#f5f1e6;--ink:#2e3029;--muted:#757568;--red:#c34e35;--blue:#365d83;--green:#75865b;--rule:#d3d0c2;--serif:"Songti SC","STSong","Noto Serif CJK SC","SimSun",serif;--sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;--mono:"SFMono-Regular",Consolas,monospace;color-scheme:light;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{min-width:0;scroll-behavior:smooth}body{margin:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%236b6046' opacity='.04' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}button,a{-webkit-tap-highlight-color:transparent}button,input,a{font:inherit}button{color:inherit;cursor:pointer}a{color:inherit}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button svg{pointer-events:none}svg{display:block}[hidden]{display:none!important}.site-shell{max-width:1280px;margin:auto;padding:0 54px}.site-header{height:100px;display:flex;align-items:center;border-bottom:1px solid var(--ink);gap:30px}.wordmark{text-decoration:none;font-size:33px;font-weight:740;letter-spacing:-2.3px;display:flex;align-items:center;line-height:1}.wordmark-dot{color:var(--red);font-family:Georgia,serif;font-size:48px;line-height:.6;letter-spacing:-1px;margin-left:5px;transform:translateY(6px)}.header-edition{font-size:12px;letter-spacing:2px;color:var(--muted);margin-left:auto}.text-button{background:none;border:0;padding:12px 0;font-size:12px;color:var(--muted);text-underline-offset:4px}.text-button:hover{text-decoration:underline;color:var(--ink)}.help-trigger{margin-left:32px;color:var(--ink)}.help-trigger span{margin-left:5px}.site-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid var(--rule);padding:18px 0 22px;color:var(--muted);font-size:12px;letter-spacing:1px}.skip-link{position:fixed;top:-80px;left:15px;background:var(--ink);color:var(--paper);padding:15px;z-index:100}.skip-link:focus{top:10px}main:focus{outline:none}.eyebrow{display:block;font-size:11px;letter-spacing:2.4px;font-weight:600;color:var(--muted);line-height:1.8}.button{min-height:56px;padding:15px 23px;border:1px solid var(--ink);border-radius:2px;display:inline-flex;align-items:center;justify-content:center;gap:35px;text-decoration:none;font-size:14px;font-weight:550;line-height:1.6;transition:transform .18s,background .18s,color .18s}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(1px)}.button svg{width:30px;flex:none}.button-dark{background:var(--ink);color:#f8f5eb}.button-dark:hover{background:#45493b}.button-red{background:var(--red);border-color:var(--red);color:white}.button-red:hover{background:#a83e29}.button-outline{background:transparent}.button-outline:hover{background:#eae5d8}.button:disabled{opacity:.4;transform:none}.small-note{color:var(--muted);font-size:12px;line-height:1.9}.doodle{width:100%;height:auto}.ink-blue{color:var(--blue)}.ink-red{color:var(--red)}
/* A small living room, assembled as a printed zine. */
.home-screen{padding:58px 0 38px;animation:arrive .4s both}.home-grid{display:grid;grid-template-columns:1fr .93fr;gap:70px;align-items:center;min-height:570px}.home-kicker{display:flex;gap:15px;align-items:center;margin-bottom:25px}.tiny-cross{font-size:23px;color:var(--red)}.home-title{font-family:var(--serif);font-weight:700;letter-spacing:-3px;font-size:clamp(54px,5.3vw,74px);line-height:1.35;margin:0 0 28px}.title-collage{display:inline-block;position:relative;color:var(--red);z-index:0}.title-collage:after{content:"";position:absolute;z-index:-1;left:-8px;right:-7px;bottom:6px;height:57px;background:#e4e8ce;clip-path:polygon(0 7%,97% 0,100% 91%,3% 100%);transform:rotate(-3deg)}.home-description{font-size:15px;line-height:2.1;color:#696b5e;letter-spacing:.4px;margin:0 0 30px}.home-actions{display:flex;align-items:flex-start;gap:15px;flex-direction:column}.home-actions .button{min-width:244px;justify-content:space-between}.home-actions .small-note{margin:0;letter-spacing:.5px}.home-under-note{margin:35px 0 0;font-family:var(--serif);font-size:17px;letter-spacing:.8px}.home-under-note span{display:inline-block;transform:rotate(-5deg);color:var(--red);margin-left:8px;font-size:23px}.home-art{position:relative;padding:26px 24px 45px}.sample-label{position:absolute;top:-9px;right:4px;background:#e9ddad;color:#615b43;padding:10px 18px;font-size:12px;transform:rotate(7deg);z-index:2;box-shadow:1px 2px 0 #cfc39a;letter-spacing:1px}.sample-card{padding:36px 30px 28px;background:#fffdf4;transform:rotate(-4deg);box-shadow:5px 9px 0 #e0ddcf,0 10px 35px #3a33220c;border:1px solid #dbd6c3;position:relative;min-height:460px}.sample-card:before{content:"";position:absolute;left:calc(50% - 40px);top:-13px;width:80px;height:28px;background:#c6cba575;transform:rotate(1deg);border-left:2px dashed #c2c6a5;border-right:2px dashed #c2c6a5}.sample-card .eyebrow{font-size:9px;letter-spacing:2px}.sample-card h2{font-family:var(--serif);font-size:26px;line-height:1.5;margin:23px 0 20px;letter-spacing:1px}.sample-lines{font-family:var(--serif);font-size:16px;line-height:2.3;letter-spacing:.7px}.sample-lines span{display:table;background:#ece5ce;padding:0 6px;margin:7px 0;transform:rotate(-1deg)}.sample-lines span:nth-child(2){background:#e4e9d5;transform:rotate(1deg)}.sample-lines span:nth-child(3){background:#e9dcd1}.sample-card .doodle{width:160px;margin-left:auto;margin-top:8px}.sample-credit{border-top:1px solid #dbd6c3;margin-top:10px;padding-top:12px;font-size:10px;letter-spacing:1.5px;color:var(--muted)}.round-sticker{position:absolute;bottom:5px;left:-8px;width:104px;height:104px;border-radius:50%;background:var(--red);color:#fff3db;display:grid;place-content:center;text-align:center;font-family:var(--serif);font-size:16px;line-height:1.5;transform:rotate(10deg);box-shadow:0 0 0 5px var(--paper);letter-spacing:2px}.pencil-note{position:absolute;bottom:5px;right:10px;font-family:var(--serif);font-size:16px;transform:rotate(5deg);color:var(--blue)}.home-index{border-top:1px solid var(--rule);margin-top:44px;padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:25px;color:var(--muted)}.home-index-label{font-family:var(--mono);font-size:10px;line-height:1.7;letter-spacing:1px}.index-fragments{display:flex;gap:30px;align-items:center;font-size:12px}.index-fragments span{display:flex;gap:8px}.index-fragments i{font-style:normal;font-family:var(--mono);color:#aaa99b;font-size:10px}.home-resume{background:none;border:0;border-bottom:1px solid var(--muted);padding:8px 0;font-size:13px;color:var(--muted)}
/* Five small decisions. */
.scene-screen{padding:32px 0 46px;animation:arrive .3s both}.scene-topline{display:flex;align-items:center;gap:16px;margin-bottom:36px}.back-button{border:0;background:none;padding:12px 12px 12px 0;font-size:12px;color:var(--muted)}.progress-dashes{display:flex;gap:6px;flex:1;max-width:230px;margin:auto}.progress-dashes i{height:3px;background:#d8d5c8;flex:1}.progress-dashes i.done{background:var(--ink)}.progress-dashes i.current{background:var(--red)}.scene-counter{font-family:var(--mono);font-size:11px;letter-spacing:2px;color:var(--muted)}.scene-grid{display:grid;grid-template-columns:.8fr 1fr;gap:100px;align-items:start;padding:0 50px}.scene-visual{position:relative;margin-top:23px}.scene-place{font-family:var(--serif);font-size:25px;display:flex;gap:20px;align-items:center;position:relative;z-index:1}.scene-place:after{content:"";height:1px;background:var(--rule);flex:1}.scene-visual .doodle{max-width:310px;margin:17px auto 0}.scene-time{display:table;padding:8px 18px;background:#e5e8ce;font-family:var(--mono);font-size:12px;letter-spacing:1.5px;margin:0 0 10px 25px;transform:rotate(-5deg)}.scene-visual[data-color=orange]{color:var(--red)}.scene-visual[data-color=green]{color:var(--green)}.scene-visual[data-color=blue]{color:var(--blue)}.scene-margin-note{font-family:var(--serif);font-size:14px;letter-spacing:1px;transform:rotate(-3deg);margin:35px 0 0 38px;line-height:1.8;color:var(--muted)}.scene-copy .eyebrow{margin-bottom:16px}.scene-copy h1{font-family:var(--serif);font-size:32px;line-height:1.55;font-weight:650;letter-spacing:.3px;margin:0 0 16px}.scene-story{font-size:14px;line-height:2;color:#6e7062;margin:0 0 27px}.scene-prompt{font-size:12px;color:var(--muted);letter-spacing:1px;margin-bottom:12px}.choices{display:grid;gap:10px}.choice-button{display:flex;width:100%;min-height:61px;align-items:center;gap:13px;text-align:left;padding:14px 18px;background:#fffcf360;border:1px solid #cfcdbc;border-radius:2px;font-size:14px;line-height:1.7;position:relative;transition:background .15s,border-color .15s,transform .15s}.choice-button:hover{background:#eeebdd;border-color:#999e84;transform:translateX(3px)}.choice-letter{font:11px var(--mono);color:var(--muted);border-right:1px solid #d2d0c3;padding-right:12px;align-self:stretch;display:grid;place-items:center}.choice-button[aria-pressed=true]{background:#e7ead6;border-color:#788561}.choice-button[aria-pressed=true]:after{content:"✓";position:absolute;right:15px;color:#637249}.choice-button[aria-pressed=true] .choice-label{padding-right:16px}.fragment-receipt{margin-top:20px;min-height:98px;position:relative}.fragment-receipt.empty{display:grid;place-items:center;font-family:var(--serif);font-size:13px;letter-spacing:2px;color:#9c9c8c}.receipt-inner{background:#eee5ce;padding:14px 18px 13px;transform:rotate(-1deg);animation:receipt .25s both;box-shadow:2px 3px 0 #ddd6c3;position:relative}.receipt-inner:before{content:"";position:absolute;top:-5px;right:22px;width:34px;height:15px;background:#c4cba59e;transform:rotate(8deg)}.receipt-label{font-size:9px;letter-spacing:2px;color:#817c66;margin-bottom:7px;display:block}.receipt-inner p{font-family:var(--serif);font-size:15px;line-height:1.8;margin:0}.scene-continue{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:20px}.scene-continue .small-note{font-size:11px;max-width:140px}.scene-continue .button{min-width:172px;gap:18px}.collected-shelf{margin-top:46px;border-top:1px solid var(--rule);padding-top:19px;display:flex;gap:14px;align-items:center;justify-content:center;font-size:11px;color:var(--muted);flex-wrap:wrap}.shelf-token{background:#e6e6d3;padding:6px 9px;font-family:var(--serif);font-size:12px;transform:rotate(-2deg)}.shelf-token:nth-child(even){transform:rotate(2deg);background:#e9dfd0}
/* The poem itself. */
.result-screen{padding:42px 0 50px;animation:arrive .4s both}.result-grid{display:grid;grid-template-columns:1fr .85fr;gap:80px;align-items:start;max-width:1000px;margin:auto}.result-side{padding-top:55px}.result-side h1{font-family:var(--serif);font-size:36px;font-weight:650;line-height:1.6;letter-spacing:1px;margin:18px 0}.result-description{font-size:14px;color:var(--muted);line-height:2;margin:0 0 29px}.poem-card{--card-paper:#f5efdf;--card-ink:#292b25;--card-accent:#cf4f32;--card-strip:#e6edc8;position:relative;background:var(--card-paper);color:var(--card-ink);border:1px solid #b7ae9450;padding:34px 32px 22px;box-shadow:4px 6px 0 #dfd9c8,0 9px 28px #29271908;max-width:480px;width:100%;margin:auto;overflow:hidden}.poem-card:before{content:"";position:absolute;width:80px;height:24px;background:#b7be8c55;top:0;left:calc(50% - 40px);transform:rotate(-5deg)}.poem-card:after{content:"";pointer-events:none;position:absolute;inset:0;opacity:.22;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23998c66' opacity='.15' filter='url(%23n)' d='M0 0h150v150H0z'/%3E%3C/svg%3E")}.poem-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.6px;color:var(--card-accent);border-bottom:1px solid currentColor;padding-bottom:12px;position:relative;z-index:1;gap:8px}.poem-main-title{font-family:var(--serif);font-size:12px;letter-spacing:3px;display:block;margin-top:28px;color:var(--card-accent)}.poem-card h2{font-family:var(--serif);font-size:25px;font-weight:700;line-height:1.6;margin:8px 0 24px;letter-spacing:1px;position:relative;z-index:1}.poem-stanzas{position:relative;z-index:1}.poem-stanza{margin:0 0 14px;font-family:var(--serif);font-size:15px;line-height:1.95;letter-spacing:.5px}.poem-stanza span{display:table;max-width:100%;overflow-wrap:anywhere}.poem-line[data-source="1"] span{background:var(--card-strip);padding:0 5px;margin-left:0;transform:rotate(-1deg)}.poem-line[data-source="3"] span{background:#d7b8a52f;padding:0 5px;margin-left:0;transform:rotate(1deg)}.poem-art-row{display:flex;align-items:end;justify-content:space-between;margin-top:8px;gap:12px}.poem-art-row .doodle{width:94px;height:85px;color:var(--card-accent)}.poem-mark{width:65px;height:65px;border:1px solid var(--card-accent);border-radius:50%;display:grid;place-content:center;text-align:center;transform:rotate(-12deg);font-size:10px;letter-spacing:2px;line-height:1.6;color:var(--card-accent)}.poem-bottom{display:flex;justify-content:space-between;gap:8px;font-size:8px;letter-spacing:1px;margin-top:13px;border-top:1px solid #857e6744;padding-top:13px;position:relative;z-index:1}.poem-brand{font-weight:800;font-size:15px;letter-spacing:-.5px}.theme-control{border-top:1px solid var(--rule);padding-top:20px;margin-bottom:25px;display:flex;gap:11px;align-items:center;font-size:12px;color:var(--muted)}.theme-control-label{margin-right:auto}.theme-button{width:32px;height:32px;min-width:32px;border:1px solid #aaa48f;border-radius:50%;padding:0;position:relative;box-shadow:inset 0 0 0 4px var(--paper);transition:transform .15s}.theme-button:hover{transform:scale(1.1)}.theme-button[aria-pressed=true]{outline:1px solid var(--ink);outline-offset:3px}.theme-name{display:block;font-size:11px;color:var(--muted);margin-top:-15px;margin-bottom:23px}.result-actions{display:grid;gap:10px}.result-actions .button{justify-content:space-between;width:100%}.result-secondary{display:flex;justify-content:space-between;gap:12px;margin-top:11px}.result-secondary .text-button{font-size:12px}.result-invite{margin-top:35px;border-top:1px solid var(--rule);padding-top:22px}.result-invite .eyebrow{font-size:10px;color:var(--red)}.result-invite p{font-size:13px;line-height:1.9;color:var(--muted);margin:9px 0 0}.shared-note{font-family:var(--serif);font-size:14px;line-height:1.8;color:var(--blue);margin:0 0 16px}.result-mobile-heading{display:none}.poem-caption{font-size:10px;color:var(--muted);text-align:center;margin-top:13px;letter-spacing:1px}.result-text-link{color:var(--muted);font-size:11px;background:none;border:0;padding:10px 0;text-decoration:underline;text-underline-offset:4px}
/* Dialogs and small states. */
dialog{color:var(--ink)}dialog::backdrop{background:#24291e99;backdrop-filter:blur(3px)}.paper-dialog{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 40px);border:1px solid #bdb8a6;padding:38px 30px 28px;background:#f8f4e8;box-shadow:8px 10px 0 #1c211826;overflow:auto;border-radius:2px}.paper-dialog h2{font-family:var(--serif);font-size:27px;line-height:1.6;font-weight:650;letter-spacing:.5px;margin:14px 0 20px}.paper-dialog p{font-size:14px;line-height:1.9;color:#6f7163}.dialog-close{position:absolute;right:14px;top:9px;background:none;border:0;font-size:27px;width:44px;height:44px;color:var(--muted)}.guide-list{list-style:none;counter-reset:guide;padding:0;margin:25px 0}.guide-list li{counter-increment:guide;border-top:1px solid var(--rule);padding:18px 0 18px 40px;position:relative}.guide-list li:before{content:"0" counter(guide);position:absolute;top:21px;left:0;font-family:var(--mono);font-size:11px;color:var(--red)}.guide-list b{display:block;font-size:14px;font-weight:550;margin-bottom:8px}.guide-list span{font-size:12px;color:var(--muted);line-height:1.9;display:block}.paper-dialog .small-note{font-size:11px}.paper-dialog>.button{width:100%;margin-top:12px}.dialog-callout{font-family:var(--serif);background:#e8ead6;font-size:17px;line-height:2;padding:20px 22px;margin:20px 0}.save-dialog{width:min(520px,calc(100% - 24px))}.save-dialog h2{margin-bottom:6px}.save-dialog>p{font-size:12px}.save-dialog img{width:100%;height:auto;display:block;border:1px solid #d4cdbb;-webkit-touch-callout:default;user-select:auto}.save-actions{display:flex;gap:10px;margin-top:18px}.save-actions .button{flex:1;min-width:0;font-size:13px;gap:8px;padding:13px}.edit-group{padding:16px 0;border-top:1px solid var(--rule)}.edit-group h3{font-size:12px;letter-spacing:1px;color:var(--muted);font-weight:500;margin:0 0 10px}.edit-choice{display:block;width:100%;border:1px solid #d2cebe;margin-top:6px;padding:12px;text-align:left;background:none;font-size:13px;line-height:1.6}.edit-choice[aria-pressed=true]{background:#e1e7ca;border-color:#819065}.toast{position:fixed;bottom:max(28px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%,15px);padding:13px 22px;border-radius:2px;background:var(--ink);color:white;max-width:calc(100% - 32px);width:max-content;text-align:center;font-size:13px;line-height:1.6;box-shadow:0 5px 20px #0002;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:30}.toast.show{opacity:1;transform:translate(-50%,0)}.noscript-note{position:fixed;inset:25%;background:var(--paper);padding:40px;border:1px solid;line-height:2}.offline-label{font-size:10px;color:var(--muted);text-align:center;padding-top:10px}.busy-dot{display:inline-block;width:7px;height:7px;background:currentColor;border-radius:50%;animation:pulse .7s alternate infinite}
@keyframes arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes receipt{from{opacity:0;transform:translateY(7px) rotate(-2deg)}to{opacity:1;transform:translateY(0) rotate(-1deg)}}@keyframes pulse{to{opacity:.3}}
@media(min-width:1450px){.site-shell{max-width:1360px;padding:0 70px}.home-grid{min-height:650px}.home-title{font-size:85px}.home-art{max-width:510px;margin-left:auto;width:100%}}
@media(max-width:1000px){.site-shell{padding:0 32px}.home-grid{gap:36px}.home-title{font-size:58px}.sample-card{padding:30px 22px}.sample-lines{font-size:14px}.sample-card h2{font-size:24px}.scene-grid{padding:0 8px;gap:40px}.result-grid{gap:38px}.result-side h1{font-size:30px}.poem-card{padding:32px 24px 22px}.poem-stanza{font-size:14px}.index-fragments{gap:18px}}
@media(max-width:700px){.site-shell{padding:0 22px}.site-header{height:78px;gap:14px}.wordmark{font-size:29px}.wordmark-dot{font-size:42px}.header-edition{font-size:9px;letter-spacing:1px}.help-trigger{margin-left:0;font-size:11px}.home-screen{padding:35px 0 24px}.home-grid{grid-template-columns:1fr;gap:28px;min-height:0}.home-kicker{margin-bottom:16px;gap:12px}.home-kicker .eyebrow{font-size:10px;letter-spacing:2px}.home-title{font-size:57px;letter-spacing:-2px;line-height:1.3;margin-bottom:19px}.title-collage:after{height:43px;bottom:7px}.home-description{font-size:13px;line-height:2;margin-bottom:23px}.home-actions{gap:13px}.home-actions .button{min-width:0;width:100%;min-height:57px}.home-actions .small-note{font-size:11px}.home-under-note{font-size:15px;margin-top:21px}.home-art{width:100%;max-width:385px;justify-self:center;padding:17px 20px 39px;margin-top:13px}.sample-card{min-height:0;padding:27px 23px 18px;transform:rotate(-3deg)}.sample-card h2{font-size:24px;margin:18px 0 15px}.sample-lines{font-size:14px;line-height:2}.sample-card .doodle{width:118px;margin-top:4px}.sample-label{font-size:10px;top:-5px;right:5px;padding:9px 13px}.round-sticker{width:82px;height:82px;font-size:13px;left:2px;bottom:12px}.pencil-note{font-size:13px;right:4px;bottom:0}.home-index{margin-top:23px;padding-top:16px;gap:16px;align-items:start}.index-fragments{gap:12px;flex-wrap:wrap;justify-content:flex-end;max-width:235px;font-size:10px}.index-fragments span{gap:5px}.home-index-label{font-size:9px;white-space:nowrap}.site-footer{font-size:10px;letter-spacing:0;padding:13px 0 18px;gap:8px}.site-footer .text-button{font-size:10px}.scene-screen{padding:15px 0 26px}.scene-topline{margin-bottom:10px;gap:8px}.back-button{font-size:11px}.progress-dashes{max-width:150px;margin:auto 10px}.scene-counter{font-size:10px;letter-spacing:1px}.scene-grid{grid-template-columns:1fr;padding:0;gap:10px}.scene-visual{margin:0;min-height:110px;display:flex;align-items:center;position:relative;padding-right:125px}.scene-place{font-size:21px;display:block;margin-bottom:32px}.scene-visual .doodle{position:absolute;right:0;top:0;width:125px;height:112px;margin:0}.scene-time{position:absolute;left:0;bottom:0;margin:0;font-size:10px;padding:6px 12px}.scene-margin-note{display:none}.scene-copy .eyebrow{font-size:9px;margin:12px 0 9px}.scene-copy h1{font-size:26px;margin-bottom:11px}.scene-story{font-size:13px;line-height:1.9;margin:0 0 18px}.scene-prompt{font-size:11px;margin-bottom:9px}.choices{gap:8px}.choice-button{font-size:13px;padding:13px 15px;min-height:56px;gap:11px}.choice-letter{font-size:10px;padding-right:10px}.fragment-receipt{min-height:91px;margin-top:16px}.receipt-inner{padding:12px 16px}.receipt-inner p{font-size:14px}.scene-continue{margin-top:12px;gap:10px}.scene-continue .small-note{font-size:10px;max-width:130px}.scene-continue .button{min-width:156px;padding:13px 17px;min-height:52px;font-size:13px}.collected-shelf{margin-top:25px;padding-top:15px;gap:9px}.shelf-token{font-size:11px}.result-screen{padding:25px 0 30px}.result-grid{grid-template-columns:1fr;gap:24px}.result-mobile-heading{display:block;text-align:center;margin-bottom:24px}.result-mobile-heading .eyebrow{font-size:9px}.result-mobile-heading h1{font-family:var(--serif);font-size:26px;font-weight:650;letter-spacing:1px;line-height:1.6;margin:6px 0 0}.result-side{padding-top:0;max-width:480px;width:100%;margin:auto}.result-side>.eyebrow,.result-side>h1{display:none}.result-description{font-size:12px;margin-bottom:20px;text-align:center}.poem-card{padding:29px 23px 20px;box-shadow:3px 5px 0 #dfd9c8}.poem-main-title{font-size:10px;margin-top:22px}.poem-card h2{font-size:23px;margin-bottom:21px}.poem-stanza{font-size:14px;line-height:1.95;letter-spacing:.3px;margin-bottom:13px}.poem-art-row .doodle{width:78px;height:70px}.poem-mark{width:58px;height:58px;font-size:9px}.poem-top{font-size:7px;letter-spacing:1px}.poem-bottom{font-size:7px;letter-spacing:.5px}.poem-caption{font-size:9px}.theme-control{padding-top:18px;margin-bottom:24px}.theme-button{width:30px;height:30px;min-width:30px}.result-invite{margin-top:25px;padding-top:18px}.result-invite p{font-size:12px}.paper-dialog{padding:34px 22px 24px}.paper-dialog h2{font-size:24px}.paper-dialog p{font-size:13px}.save-dialog{padding:34px 15px 20px}.save-dialog h2,.save-dialog>.eyebrow,.save-dialog>p{margin-left:6px}.save-dialog .save-actions{flex-wrap:wrap}.save-actions .button{min-width:130px}.edit-choice{font-size:12px}.shared-note{text-align:center;font-size:13px}}
@media(max-width:360px){.site-shell{padding:0 16px}.header-edition{font-size:8px;letter-spacing:.5px}.home-title{font-size:52px}.poem-card{padding:27px 19px 19px}.poem-stanza{font-size:13px}.poem-card h2{font-size:21px}.scene-copy h1{font-size:24px}.choice-button{font-size:12px}.scene-continue .button{min-width:148px}.scene-continue .small-note{font-size:9px}}
.poem-materials{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 4px;position:relative;z-index:1}.poem-materials span{background:#b6b89330;font:10px/1.5 var(--serif);padding:4px 6px;transform:rotate(-2deg)}.poem-materials span:nth-child(even){transform:rotate(2deg);background:#ccb5a440}
.manual-copy{width:100%;min-height:180px;background:#fffdf4;border:1px solid var(--rule);padding:14px;font:14px/1.8 var(--sans);color:var(--ink);resize:vertical}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* A small author gesture, in the same paper-and-pencil language. */
.poem-reading-note{font:12px/1.9 var(--serif);color:var(--muted);margin:0 auto 14px;max-width:480px;text-align:center}
.poem-line{display:block;position:relative;width:max-content;max-width:100%;min-height:38px;border:0;padding:3px 5px;margin:-3px 0 -3px -5px;background:transparent;color:inherit;text-align:left;font:inherit;letter-spacing:inherit;line-height:inherit;isolation:isolate}
.poem-line:not(:disabled):hover{color:var(--card-accent)}
.poem-line:disabled{cursor:default}
.poem-line:focus-visible{outline:1px dashed var(--card-accent);outline-offset:5px}
.hand-circle{position:absolute;left:-7px;top:-4px;width:calc(100% + 14px);height:calc(100% + 8px);fill:none;stroke:var(--card-accent);stroke-width:1.6;opacity:0;pointer-events:none;overflow:visible}
.poem-line[aria-pressed=true] .hand-circle{opacity:.85}
.poem-caption{line-height:1.9;min-height:34px}
.title-control{margin:0 0 24px;display:grid;gap:9px}
.control-label{font-size:12px;color:var(--muted);margin-bottom:3px}
.title-choice{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:48px;padding:11px 14px;border:1px solid var(--rule);background:#fffcf360;text-align:left;font:15px/1.7 var(--serif);color:var(--ink)}
.title-choice[aria-pressed=true]{background:#e7ead6;border-color:#8e9876}
.title-choice>span:last-child{color:#6e7c55;font:12px var(--sans)}
.edit-poem-link{display:block;padding:16px 0 0}
.is-assembling .poem-stanza{animation:paper-joins .65s calc(var(--piece)*.09s) both}
.is-assembling .poem-materials{animation:arrive .4s .6s both}
@keyframes paper-joins{from{opacity:0;transform:translate(12px,14px) rotate(-2deg)}to{opacity:1;transform:translate(0,0) rotate(0)}}
@media(max-width:700px){.poem-reading-note{font-size:11px;margin-bottom:16px}.poem-line{min-height:44px;display:block;margin-top:0;margin-bottom:0}.poem-stanza{margin-bottom:12px}.title-choice{font-size:14px}.result-description{margin-bottom:22px}.result-mobile-heading{margin-bottom:15px}}

.poem-line>span{display:block}
.skip-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}

.poem-stanza .poem-line>span{margin-left:0}

/* Deliberate gaps belong to the poem, and follow the paper into exported images. */
.poem-line{margin-left:calc(-5px + var(--line-indent,0)*.9em);max-width:calc(100% - var(--line-indent,0)*.9em);white-space:pre-wrap}
.arrangement-control{max-width:480px;margin:-8px auto 12px}
.arrangement-control>div{display:flex;justify-content:space-between;align-items:center;gap:12px}
.arrangement-button{min-height:44px;color:var(--ink);font-family:var(--serif);font-size:15px;text-decoration:underline;text-underline-offset:5px}
.arrangement-name{font-size:11px;color:var(--muted);line-height:1.8}.shared-arrangement{margin:0 0 20px}
.revised-note{font:11px/1.9 var(--sans);color:var(--muted);max-width:480px;margin:0 auto 16px}
@media(max-width:360px){.result-mobile-heading h1{font-size:24px;letter-spacing:.5px}}
.loading-room{min-height:55vh;padding:70px 0;font:24px/1.8 var(--serif)}.loading-room .text-button{font:13px var(--sans);display:inline-block}

.scene-entry{font-family:var(--serif);font-size:14px;line-height:1.85;color:var(--blue);border-left:2px solid #aeb6a1;padding:1px 0 1px 12px;margin:0 0 14px}
@media(max-width:700px){.scene-entry{font-size:12px;line-height:1.85;padding-left:10px;margin-bottom:12px}}

.scene-choice-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.scene-choice-top .scene-prompt{margin:0;flex:1;min-width:140px}.swap-scene{color:var(--blue);font-size:11px;min-height:44px;padding:8px 0;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}.edit-swap{font-size:12px;min-height:44px;margin-top:6px}

/* Real night notes: prose on paper, with room to read. */
.night-home .home-title{font-size:66px;line-height:1.32;letter-spacing:-2px}.night-home .home-description{max-width:440px}.night-home .home-grid{gap:72px;min-height:650px}.night-home-links{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:30px;font-size:12px;color:var(--muted)}.night-home-links a,.night-bottom-link a{color:var(--muted);text-underline-offset:5px}.night-home-art{position:relative}.night-stack{position:absolute;inset:24px 15px 48px 28px;background:#dedfc8;border:1px solid #b6b39280;transform:rotate(5deg);box-shadow:6px 4px 0 #e9e3d2}.night-sample{position:relative;min-height:360px;transform:rotate(-3deg)}.night-sample .sample-lines{font-size:21px;line-height:1.9}.night-sample .sample-lines p{margin:22px 0}.night-sample-bottom{display:flex;justify-content:space-between;align-items:end;color:var(--muted);font-size:10px}.night-sample-bottom .doodle{width:110px;height:100px;margin:0;color:var(--blue)}.night-home-index{flex-wrap:wrap}.night-home-index>.text-button{font-size:11px;margin-left:auto;min-height:44px}.night-read{padding:28px 0 50px;animation:arrive .3s both}.night-round-label{font:11px var(--sans);color:var(--muted)}.night-read-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:70px;max-width:1040px;margin:22px auto 0;align-items:start}.night-paper-column{min-width:0}.night-turnbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;font-size:11px;color:var(--muted)}.night-turnbar .text-button{font-size:12px;min-height:44px;color:var(--blue);text-decoration:underline;text-underline-offset:5px}.night-card{max-width:none;padding:35px 35px 24px;min-height:440px}.night-card h2{margin:29px 0 12px;font-size:29px;line-height:1.55;letter-spacing:.2px}.night-byline{display:flex;justify-content:space-between;gap:12px;color:var(--card-accent);font:11px/1.8 var(--sans);position:relative;z-index:1;margin-bottom:30px}.night-prose{font:17px/2.15 var(--serif);letter-spacing:.2px;position:relative;z-index:1;overflow-wrap:anywhere}.night-prose p{margin:0 0 18px}.night-prose p:last-child{margin-bottom:0}.night-prose-short{font-size:32px;line-height:1.8;min-height:190px;display:flex;flex-direction:column;justify-content:center}.night-sentence{cursor:pointer;border-radius:2px;padding:3px 0;box-decoration-break:clone;-webkit-box-decoration-break:clone;transition:background .15s}.night-sentence:hover{background:#c6caac35}.night-sentence[aria-pressed=true]{background:var(--card-strip);text-decoration:underline;text-decoration-color:var(--card-accent);text-decoration-thickness:1.5px;text-underline-offset:5px}.night-sentence:focus-visible{outline:1px dashed var(--card-accent);outline-offset:4px}.night-omission{color:var(--card-accent);font-size:14px;letter-spacing:4px}.night-card-tail{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-top:28px;position:relative;z-index:1;color:var(--card-accent);font:9px/1.8 var(--sans)}.night-card-tail .doodle{width:70px;height:64px;flex-shrink:0}.night-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:10px;line-height:1.8;color:var(--muted)}.night-caption .text-button{font-size:10px;min-height:44px;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}.night-side{padding-top:62px}.night-side h1,.night-collection h1{font:600 34px/1.6 var(--serif);margin:16px 0}.night-side-copy{font:13px/2 var(--sans);color:var(--muted);margin:0 0 27px}.night-main-actions{display:grid;gap:11px;margin-bottom:28px}.night-main-actions .button{width:100%;justify-content:space-between;min-height:54px}.night-main-actions [aria-pressed=true]{background:#647150}.night-export-actions{display:flex;gap:15px;justify-content:space-between;margin:-6px 0 24px}.night-export-actions .text-button{font-size:12px;min-height:44px;text-decoration:underline;text-underline-offset:5px}.night-round-tray{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:21px}.night-round-tray button,.night-empty-slot{background:#ede8d9;border:1px solid #c8c1ac;padding:13px 12px;text-align:left;font:12px/1.7 var(--serif);min-height:84px;overflow-wrap:anywhere;color:var(--ink)}.night-round-tray button[aria-pressed=true]{border-color:var(--blue);background:#e6e9df;box-shadow:0 2px 0 var(--blue)}.night-round-tray button>span,.night-empty-slot{font:10px/1.8 var(--mono);color:var(--muted)}.night-round-tray button>span{display:block;margin-bottom:7px}.night-empty-slot{background:transparent;border-style:dashed;display:flex;flex-direction:column;justify-content:space-between}.night-empty-slot small{font:10px var(--sans);color:#a09e90}.night-note{border-top:1px solid var(--rule);padding:17px 0 0}.night-note summary{cursor:pointer;list-style:none;font:15px/1.8 var(--serif);min-height:44px;display:flex;justify-content:space-between}.night-note summary::-webkit-details-marker{display:none}.night-note summary span{color:var(--red)}.night-note[open] summary{margin-bottom:8px}.night-note label{display:block;font:11px/1.8 var(--sans);color:var(--muted);margin-bottom:7px}.night-note textarea{width:100%;min-height:108px;padding:13px;background:#fffcf170;border:1px solid #c8c1ac;border-radius:0;font:16px/1.8 var(--serif);color:var(--ink);resize:vertical}.night-note-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin:7px 0 12px}.night-note>.text-button{min-height:44px;color:var(--blue);font-size:12px;text-decoration:underline;text-underline-offset:5px}.night-note>.text-button:disabled{opacity:.4;cursor:default}.night-note .small-note{font:10px/1.9 var(--sans);white-space:normal}.night-bottom-link{border-top:1px solid var(--rule);margin-top:20px;padding-top:24px;font-size:11px;line-height:1.8}.night-full-text,.night-source-text{font:16px/2 var(--serif);overflow-wrap:anywhere;position:relative;z-index:1;white-space:pre-wrap}.night-source-text{font-size:15px;border-top:1px solid var(--rule);padding-top:20px}.night-source-link,.night-detail-dialog a{color:var(--blue);text-underline-offset:5px}.night-collection{padding:30px 0 60px}.night-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0}.night-pocket-card{border:1px solid #cac3af;background:#f7f0e0;padding:23px;text-align:left;color:var(--ink);box-shadow:3px 4px 0 #e1ddcc;min-width:0}.night-pocket-card h2{font:600 22px/1.7 var(--serif)}.night-pocket-card p{font:14px/1.9 var(--serif);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.night-pocket-card>.eyebrow{font-size:9px;letter-spacing:1px}.night-pocket-card>span:last-child{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--blue);margin-top:25px}.night-pocket-card>span:last-child svg{width:24px;height:16px}.night-pocket-empty{padding:65px 0;font:20px/2 var(--serif);color:var(--muted)}
@media(max-width:1000px){.night-home .home-grid{gap:40px}.night-home .home-title{font-size:59px}.night-read-grid{gap:35px}.night-card{padding:30px 26px 22px}.night-prose{font-size:16px}.night-side h1{font-size:28px}.night-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.night-home .home-grid{min-height:0;gap:28px}.night-home .home-title{font-size:55px}.night-home-links{margin-top:23px;justify-content:space-between;gap:13px;font-size:11px}.night-home-links .text-button{font-size:11px;min-height:44px}.night-sample{min-height:290px}.night-sample .sample-lines{font-size:18px}.night-home-art{margin-top:26px}.night-home-index{gap:12px}.night-home-index>.text-button{font-size:10px}.night-home-index .index-fragments{max-width:235px}.night-read{padding:12px 0 30px}.night-read .scene-topline{margin-bottom:6px}.night-read .scene-topline>.text-button{font-size:11px;min-height:44px}.night-round-label{font-size:10px}.night-read-grid{grid-template-columns:1fr;gap:30px;margin-top:0}.night-turnbar{margin-bottom:9px;font-size:10px}.night-turnbar .text-button{font-size:11px}.night-card{padding:28px 24px 21px;min-height:370px}.night-card h2{font-size:26px;margin-top:25px}.night-byline{font-size:10px;margin-bottom:22px}.night-prose{font-size:16px;line-height:2.1}.night-prose-short{font-size:28px;min-height:140px}.night-card-tail{margin-top:20px;font-size:8px}.night-caption{font-size:9px}.night-caption .text-button{font-size:9px}.night-round-tray{gap:7px;margin-top:12px}.night-round-tray button,.night-empty-slot{padding:10px 9px;font-size:11px;min-height:82px}.night-side{padding:0}.night-side>.eyebrow{font-size:10px}.night-side h1{font-size:27px;margin:8px 0}.night-side-copy{font-size:12px;margin-bottom:17px}.night-main-actions{grid-template-columns:1.3fr 1fr;gap:9px;margin-bottom:24px}.night-main-actions .button{padding:12px 14px;font-size:12px;gap:8px;min-width:0}.night-main-actions .button svg{width:23px}.night-note summary{font-size:16px}.night-export-actions{margin-bottom:18px}.night-collection-grid{grid-template-columns:1fr;gap:17px}.night-collection h1{font-size:28px}.night-full-text{font-size:15px}}
@media(max-width:360px){.night-home .home-title{font-size:46px}.night-home-links{font-size:10px}.night-card{padding:25px 18px 20px}.night-card h2{font-size:24px}.night-prose{font-size:15px}.night-prose-short{font-size:27px}.night-main-actions{grid-template-columns:1fr}.night-read .scene-topline{gap:8px}.night-round-label{font-size:9px}}
.night-home .home-copy{min-width:0}.night-home .home-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media(max-width:700px){.night-home .home-grid{grid-template-columns:minmax(0,1fr)}.night-home .home-kicker .eyebrow{letter-spacing:1.5px}}

/* The poem is the complete experience; a diary is a quiet invitation after it. */
.after-poem{max-width:1000px;margin:46px auto 0;padding:30px 0 0;border-top:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;gap:30px}
.after-poem h2{font:600 24px/1.6 var(--serif);margin:10px 0}
.after-poem p{font:12px/2 var(--sans);color:var(--muted);margin:0}
.after-poem>.button{flex-shrink:0;font-size:13px;gap:20px}
.night-read .back-button{text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.night-topic-note{display:block;font-size:10px;margin-top:14px}
.night-pocket-actions{display:flex;justify-content:space-between;gap:12px;margin:-3px 0 18px}
.night-pocket-actions .text-button{min-height:44px;font-size:11px}
.night-note summary{font-size:13px;color:var(--muted)}
@media(max-width:700px){.after-poem{display:block;margin-top:32px;padding-top:24px;max-width:480px}.after-poem h2{font-size:22px}.after-poem>.button{margin-top:19px;width:100%;justify-content:space-between}.night-read .scene-topline{flex-wrap:wrap}.night-main-actions>a.button{font-size:12px;gap:8px}}

/* The diary is already open after the poem; reading requires no extra entry. */
.poem-night{max-width:1000px;margin:42px auto 0;padding:32px 0 0;border-top:1px solid var(--rule);display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:45px;align-items:start}
.poem-night-intro{padding-top:22px}.poem-night-intro h2{font:600 27px/1.65 var(--serif);margin:12px 0 18px}.poem-night-intro p{font:13px/2 var(--sans);color:var(--muted);max-width:290px;margin:0 0 14px}.poem-night-intro strong{font-weight:500;color:var(--ink)}
.poem-night-about{margin-top:18px;border-top:1px solid var(--rule);padding-top:6px}.poem-night-about summary{cursor:pointer;font:12px/1.8 var(--sans);color:var(--blue);padding:10px 0}.poem-night-about[open] summary{margin-bottom:8px}
.poem-night-content{min-width:0}.poem-night-card{margin:0;min-height:280px;transform:rotate(-.5deg)}
.poem-night-card h3{font:600 28px/1.55 var(--serif);margin:28px 0 12px;letter-spacing:.2px;position:relative;z-index:1}
.poem-night-actions{display:flex;align-items:center;gap:10px 22px;flex-wrap:wrap;margin-top:20px}.poem-night-actions .button{font-size:12px;min-height:46px;padding:10px 17px}.poem-night-actions .text-button{min-height:44px;font-size:11px;color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.poem-night-status:empty{display:none}#poem-night-image{display:block;width:100%;height:auto;border-radius:2px;margin:20px 0}
@media(max-width:700px){.poem-night{display:block;max-width:480px;margin-top:30px;padding-top:25px}.poem-night-intro{padding:0;margin-bottom:22px}.poem-night-intro h2{font-size:24px;margin:8px 0 14px}.poem-night-intro p{max-width:none;margin:0 0 12px}.poem-night-about{margin-top:6px}.poem-night-card{transform:none}.poem-night-card h3{font-size:25px}.poem-night-actions{gap:4px 18px;margin-top:15px}.poem-night-actions .button{width:100%;margin-bottom:4px;justify-content:space-between}}
