:root{--paper:#f6f7ef;--ink:#204d3e;--muted:#56675d;--line:#b4bdb1;--lime:#dfedb0;--wash:#e9eedf;--white:#fffef8;--accent:#3e6b4b;color-scheme:light;font-family:"Segoe UI","Noto Sans TC","Microsoft JhengHei",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}a{color:inherit;text-underline-offset:4px}:is(button,a,input,textarea,select,summary):not(.mooss-bar *){-webkit-tap-highlight-color:transparent}button,.button{cursor:pointer;border:1px solid var(--ink);background:transparent;color:var(--ink);border-radius:7px;min-height:44px;padding:10px 17px;text-decoration:none;font-weight:650;display:inline-flex;align-items:center;justify-content:center;gap:6px}button:hover,.button:hover{background:var(--wash)}button:disabled{cursor:default;opacity:.5}.primary{background:var(--ink);color:var(--white)}.primary:hover{background:#33634e;color:var(--white)}.quiet{border-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #657722;outline-offset:4px}input,select,textarea{color:var(--ink);background:var(--white);border:1px solid #829280;border-radius:5px;min-height:44px;padding:9px 10px;max-width:100%}input,textarea{width:100%}textarea{resize:vertical}label{display:block;font-weight:600;margin:14px 0 6px}select{width:100%}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{font-size:17px;font-weight:600;margin-bottom:20px}h2{font-size:24px;line-height:1.4}h3{font-size:19px;line-height:1.5}p{margin-bottom:18px}.small{font-size:13px;color:var(--muted)}.eyebrow{font:600 11px/1.6 ui-monospace,Consolas,monospace;letter-spacing:1.5px}.skip{position:absolute;left:12px;top:-100px;background:var(--white);padding:12px;z-index:50}.skip:focus{top:8px}main{max-width:1240px;margin:auto;padding:0 48px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center;padding:76px 0 72px}.headline{font-size:clamp(32px,4.5vw,57px);line-height:1.28;letter-spacing:-1.3px;font-weight:700;margin-bottom:24px}.headline em{font-style:normal;color:var(--accent)}.lead{color:var(--muted);max-width:480px;font-size:16px}.hero .small{margin-top:13px}.sample-card{background:var(--ink);color:var(--paper);padding:27px 30px 24px;border-radius:14px;box-shadow:14px -14px 0 var(--lime);transform:rotate(1deg)}.sample-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--lime);border-bottom:1px solid #648171;padding-bottom:18px;letter-spacing:1px}.sample-line{padding:18px 0;border-bottom:1px solid #648171}.sample-line small{display:block;color:var(--lime);font-size:11px}.sample-line b{font-size:23px;font-weight:500}.sample-card p{font-size:13px;margin:20px 0 0;color:#e1e8db}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 20px}.section-head h2{margin:0}.section-head .eyebrow{margin-bottom:8px}.section-head a{font-size:13px}.workbench{scroll-margin-top:20px;border-top:1px solid var(--line);padding:38px 0 50px}.bench-grid{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);align-items:start;gap:28px}.settings{background:var(--wash);border:1px solid var(--line);border-radius:10px;padding:23px;position:sticky;top:20px}.settings fieldset{border:0;padding:0;margin:0;min-width:0}.settings legend{font-size:15px;font-weight:700;margin-bottom:18px}.count-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;margin:9px 0}.count-row select{width:85px;flex-shrink:0}.settings>p{margin:15px 0 0}.settings details{margin-top:20px}.advanced summary{font-size:13px}.draw-actions{display:grid;gap:9px;margin-top:25px}.draw-actions button{width:100%}.result-heading,.export-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}.result-heading h2,.export-heading h2{font-size:17px;margin:0}.empty-result{display:grid;place-content:center;text-align:center;min-height:330px;border:1px dashed var(--line);border-radius:10px;padding:30px}.empty-result>span{font-size:43px;color:#70816b}.empty-result h3{font-weight:500}.empty-result p{color:var(--muted);font-size:14px}.result-group{margin-bottom:22px}.result-group>h3{font-size:13px;color:var(--muted);margin:0 0 9px;font-weight:600}.cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.drawn-card{background:var(--white);border:1px solid var(--line);border-radius:9px;padding:18px;min-width:0;display:flex;flex-direction:column;gap:8px;animation:appear .2s ease-out}.drawn-card[data-locked=true]{border:2px solid var(--ink);padding:17px;background:#eff3e4}.drawn-card[data-empty=true]{background:transparent;border-style:dashed}.drawn-card h4{margin:0;font-size:18px;font-weight:650}.drawn-card p{font-size:13px;color:var(--muted);margin:0 0 8px;white-space:pre-line;overflow-wrap:anywhere}.card-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.card-actions button{font-size:12px;padding:6px 10px;min-height:36px}.card-actions button[aria-pressed=true]{background:var(--ink);color:white}.drawn-card .adopt-label{font-size:12px;margin:6px 0 0}.drawn-card select{font-size:13px;min-height:38px}.results{min-width:0;scroll-margin-top:20px}.results:focus{outline:none}.history-row{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding:18px 0;margin-top:12px}.history-row label{font-size:13px;margin:0;white-space:nowrap}.history-row select{font-size:13px}.notes{border:1px solid var(--line);padding:15px 18px;border-radius:7px;margin:14px 0 28px}.notes label{font-size:13px}main summary{cursor:pointer;font-weight:600;padding:5px 0;min-height:35px}details>p{margin:12px 0 7px;color:var(--muted);font-size:14px}.status{font-size:13px;color:var(--ink);min-height:1.7em;margin-bottom:14px;overflow-wrap:anywhere}.status[data-error=true]{color:#923823}.badge{background:var(--lime);color:var(--ink);padding:3px 8px;border-radius:4px;font-size:11px;white-space:nowrap}#output-text,#prompt-text{font-size:13px;line-height:1.8}.export-actions{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}.export-actions button{font-size:13px}.notice{padding:15px;background:var(--lime)}.examples,.guide,.related{border-top:1px solid var(--line);padding:42px 0}.example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.example-grid article{padding-top:18px}.example-grid .eyebrow{color:#617444}.example-grid h3{margin:12px 0}.example-grid p{color:var(--muted);font-size:14px}.guide{display:grid;grid-template-columns:1fr 2fr;column-gap:50px}.guide h2{grid-row:1/6}.guide details{border-bottom:1px solid var(--line);padding:12px 0}.guide summary{font-size:15px}.related>div{display:flex;gap:14px;flex-wrap:wrap}.related a{font-size:14px;padding:9px 15px;border:1px solid var(--line);border-radius:6px;text-decoration:none}.related a:hover{background:var(--wash)}.site-footer{max-width:1340px;margin:auto;border-top:1px solid var(--line);padding:25px 36px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.site-footer p{margin:0}
@keyframes appear{from{opacity:.6;transform:translateY(3px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
@media(max-width:850px){main{padding:0 28px}.hero{gap:35px;padding:55px 0}.sample-card{padding:22px}.sample-line b{font-size:19px}.bench-grid{grid-template-columns:250px minmax(0,1fr);gap:20px}.cards-grid{grid-template-columns:1fr}.settings{padding:18px}.guide{gap:28px}}
@media(max-width:640px){main{padding:0 20px}.hero{grid-template-columns:1fr;gap:33px;padding:38px 0 42px}.headline{font-size:36px;letter-spacing:-1px}.hero h1{font-size:15px;margin-bottom:14px}.hero .eyebrow{margin-bottom:15px}.lead{font-size:14px}.sample-card{margin:0 12px 0 0;padding:18px 24px;box-shadow:10px -10px 0 var(--lime)}.sample-line{padding:11px 0}.sample-line b{font-size:19px}.sample-top{padding-bottom:12px}.sample-card p{margin-top:13px}.bench-grid{grid-template-columns:1fr}.settings{position:static;padding:20px}.count-list{display:grid;grid-template-columns:1fr;gap:0}.draw-actions{grid-template-columns:1fr 1fr}.draw-actions .primary{grid-column:1/-1}.draw-actions button{padding:9px;font-size:13px}.section-head h2{font-size:21px}.section-head{align-items:end}.section-head>a{white-space:nowrap}.result-heading{margin-top:8px}.empty-result{min-height:235px}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.drawn-card{padding:13px}.drawn-card[data-locked=true]{padding:12px}.drawn-card h4{font-size:16px}.card-actions button{font-size:11px;padding:7px;min-height:40px}.drawn-card p{font-size:12px}.result-group{margin-bottom:18px}.export-actions{display:grid;grid-template-columns:1fr 1fr}.export-actions button{padding:10px 8px}.example-grid{grid-template-columns:1fr;gap:0}.example-grid article{border-bottom:1px solid var(--line)}.example-grid article:last-child{border:0}.guide{display:block}.guide h2{font-size:22px;margin-bottom:22px}.related h2{font-size:21px}.site-footer{flex-direction:column;gap:10px;padding:22px 20px}.history-row select{min-width:0}}@media(max-width:360px){.cards-grid{grid-template-columns:1fr}.headline{font-size:31px}.result-heading{flex-wrap:wrap}}
.cards-grid>.drawn-card:only-child{grid-column:1/-1}

#card-picker{width:min(880px,calc(100% - 32px));max-height:85dvh;padding:26px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);overflow:auto}#card-picker::backdrop{background:rgb(18 39 28 / .55)}.picker-heading,.picker-tools{display:flex;justify-content:space-between;align-items:center;gap:16px}.picker-heading h2{margin:0}.picker-tools{margin:18px 0}.picker-tools p{margin:0}.card-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.library-card{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--white);padding:18px;display:flex;flex-direction:column;align-items:start}.library-card h3{margin:0 0 8px}.library-card p{font-size:15px;overflow-wrap:anywhere}.library-card button{margin-top:auto}.card-actions button{min-height:44px}@media(max-width:640px){#card-picker{padding:18px;width:calc(100% - 24px)}.card-library{grid-template-columns:1fr}.picker-heading h2{font-size:21px}}
.picker-heading button{flex-shrink:0;white-space:nowrap}

/* Optional story choices reuse the workbench controls and card layout. */
.story-settings { margin-bottom: 1.5rem; }
.story-settings > label { display: block; margin-top: .9rem; }
.story-settings select, .story-settings input { width: 100%; max-width: 100%; min-width: 0; }
.story-settings input[hidden] { display: none; }
/* ADR-0014: the shared MOOSSin navigation, placed above the tool footer. */
.mooss-nav{max-width:1340px;margin:24px auto 0;padding:18px 36px 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.mooss-nav ul{display:flex;flex-wrap:wrap;gap:6px 20px;margin:0;padding:0;list-style:none}.mooss-nav a[aria-current="page"]{font-weight:700}@media(max-width:640px){.mooss-nav{padding:16px 20px 0}}
.drafts{border:1px solid var(--line);border-radius:8px;padding:12px 15px;margin:16px 0 0}.drafts summary{font-size:14px}.draft-toggle{display:flex;align-items:center;gap:9px;font-weight:600;margin:12px 0 8px;line-height:1.5;min-height:44px;cursor:pointer}.draft-toggle input{width:auto;min-height:auto;margin:0;flex:none;width:20px;height:20px}.draft-offer,.draft-preview{border:1px solid var(--line);border-radius:7px;padding:12px;margin:10px 0;display:flex;flex-wrap:wrap;gap:8px}.draft-offer p,.draft-preview p{flex:1 1 100%;margin:0 0 4px;font-size:14px}.draft-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.drafts button{font-size:13px;min-height:44px;padding:8px 13px}.draft-import{display:inline-flex;align-items:center;gap:8px;font-weight:600;margin:0;font-size:13px;border:1px solid var(--line);border-radius:7px;padding:8px 13px;min-height:44px;cursor:pointer}.draft-import input{width:auto;min-height:auto;border:0;padding:0;background:transparent;font-size:12px;max-width:190px}@media(max-width:640px){.draft-actions,.draft-offer,.draft-preview{flex-direction:column;align-items:stretch}.draft-import input{max-width:none}}

/* Start with the operation; reveal settings and reading examples when needed. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hero{display:block;padding:30px 0 20px}
.hero h1{font-size:clamp(25px,3vw,34px);line-height:1.35;font-weight:700;margin:0 0 10px}
.hero .lead{max-width:740px;margin:0;font-size:15px}
.workbench{border-top:0;padding:0 0 30px}
.workbench>#app-status{margin:0 0 12px}
.settings{padding:18px;position:static}
.draw-actions{margin:0;gap:8px}
.draw-settings,.advanced{border-top:1px solid var(--line);padding-top:8px}
.settings details{margin-top:14px}
.settings .story-settings{margin-bottom:12px}
.reset-action{margin-top:12px;width:100%;font-size:12px;padding:6px;min-height:44px}
.settings>p{font-size:12px;margin-top:8px}
.drafts{margin-top:10px;padding:8px 12px}
.empty-result{min-height:200px;padding:24px}
.empty-result h3{font-size:18px;margin-bottom:10px}
.empty-result p{margin:0}
.result-heading{flex-wrap:wrap;gap:4px 12px}
.export-heading{margin:18px 0 8px}
.export-actions{margin:8px 0}
.notes{padding:8px 12px;margin:12px 0}
.material-preview{margin-bottom:10px}
.history-row{padding:12px 0}
.examples{padding:22px 0}
.examples>details>summary{font-size:17px}
.examples .sample-card{max-width:520px;transform:none;box-shadow:none;margin:18px 0 12px;padding:18px 24px;border-radius:7px}
.examples .sample-line{padding:10px 0}
.examples .sample-line b{font-size:18px}
.examples .sample-top{padding-bottom:10px}
.examples .sample-card p{margin-top:12px}
.related{padding:24px 0}
.related h2{font-size:20px}

/* Short character traits read as rows; longer inspiration remains in cards. */
#writing-app[data-tool="character"] .result-group{display:grid;grid-template-columns:62px minmax(0,1fr);gap:12px;margin-bottom:10px;align-items:start}
#writing-app[data-tool="character"] .result-group>h3{padding-top:13px;margin:0;font-size:13px}
#writing-app[data-tool="character"] .cards-grid{grid-template-columns:1fr;gap:8px}
#writing-app[data-tool="character"] .drawn-card{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;row-gap:3px;padding:11px 12px;border-radius:5px}
#writing-app[data-tool="character"] .drawn-card[data-locked=true]{padding:10px 11px}
#writing-app[data-tool="character"] .drawn-card h4{font-size:16px;line-height:1.5;overflow-wrap:anywhere}
#writing-app[data-tool="character"] .drawn-card p{grid-column:1;margin:0;font-size:12px}
#writing-app[data-tool="character"] .card-actions{grid-column:2;grid-row:1 / span 2;align-self:center;flex-wrap:nowrap;gap:4px;margin:0}
#writing-app[data-tool="character"] .card-actions button{padding:6px 8px;font-size:12px;white-space:nowrap}

@media(max-width:850px){
  #writing-app[data-tool="character"] .drawn-card{grid-template-columns:minmax(0,1fr)}
  #writing-app[data-tool="character"] .card-actions{grid-column:1;grid-row:auto;margin-top:5px}
}
@media(max-width:640px){
  .hero{padding:22px 0 16px}
  .hero h1{font-size:25px;margin-bottom:8px}
  .hero .lead{font-size:14px}
  .bench-grid{gap:22px}
  .settings{padding:14px}
  .draw-actions{grid-template-columns:1fr 1fr}
  .draw-actions #draw{grid-column:1/-1}
  .draw-actions #reroll{font-size:12px}
  .empty-result{min-height:150px;padding:18px}
  .cards-grid{grid-template-columns:1fr}
  #writing-app[data-tool="character"] .result-group{grid-template-columns:42px minmax(0,1fr);gap:8px}
  #writing-app[data-tool="character"] .card-actions button{flex:1;padding:6px;font-size:11px}
  .examples .sample-card{margin-right:0;padding:16px}
}
/* Footer: the deep-space band of the portal, blog and novel footers (owner's request,
   2026-10-03): full width, the shared star field, a planet horizon in the bottom padding,
   white text and mint links (14.32:1 on #0b1730). Markup and text are unchanged. */
.site-footer{position:relative;overflow:hidden;max-width:none;margin:40px 0 0;border-top:0;padding:40px max(48px,calc((100% - 1240px) / 2 + 48px)) 4rem;flex-wrap:wrap;color:rgba(255,255,255,.85);background-image:radial-gradient(1.6px 1.6px at 8% 22%,rgba(255,255,255,.95) 50%,transparent 52%),radial-gradient(1.2px 1.2px at 19% 71%,rgba(255,255,255,.75) 50%,transparent 52%),radial-gradient(2px 2px at 27% 38%,rgba(255,233,168,.95) 50%,transparent 52%),radial-gradient(1px 1px at 36% 12%,rgba(255,255,255,.8) 50%,transparent 52%),radial-gradient(1.4px 1.4px at 44% 64%,rgba(255,255,255,.7) 50%,transparent 52%),radial-gradient(1px 1px at 52% 28%,rgba(255,255,255,.85) 50%,transparent 52%),radial-gradient(2px 2px at 61% 80%,rgba(207,233,226,.9) 50%,transparent 52%),radial-gradient(1.2px 1.2px at 68% 18%,rgba(255,255,255,.8) 50%,transparent 52%),radial-gradient(1.6px 1.6px at 77% 52%,rgba(255,233,168,.9) 50%,transparent 52%),radial-gradient(1px 1px at 84% 30%,rgba(255,255,255,.75) 50%,transparent 52%),radial-gradient(1.4px 1.4px at 91% 70%,rgba(255,255,255,.85) 50%,transparent 52%),radial-gradient(1px 1px at 96% 10%,rgba(255,255,255,.7) 50%,transparent 52%),radial-gradient(1px 1px at 13% 90%,rgba(255,255,255,.6) 50%,transparent 52%),radial-gradient(1.2px 1.2px at 58% 6%,rgba(255,255,255,.7) 50%,transparent 52%),linear-gradient(180deg,#0b1730,#12264a)}.site-footer::after{content:"";position:absolute;left:50%;bottom:-30rem;width:90rem;height:34rem;border-radius:50%;transform:translateX(-50%);opacity:.9;pointer-events:none;background:radial-gradient(ellipse at 50% 0%,#3f9a8b,#23665f 30%,#1b4d4a 60%)}.site-footer>*{position:relative;z-index:1}.site-footer b{color:#fff}.site-footer a{color:#cfe9e2;text-decoration:underline;text-underline-offset:.22em}.site-footer a:hover,.site-footer a:focus-visible{color:#fff}.site-footer :focus-visible{outline-color:#ffe9a8}.site-footer>.mooss-nav{flex:1 0 100%;max-width:none;margin:0 0 8px;padding:0 0 16px;border-top:0;border-bottom:1px solid rgba(255,255,255,.25);font-size:14px;color:inherit}.site-footer>.mooss-nav a[aria-current="page"]{color:#fff}@media(max-width:850px){.site-footer{padding-inline:28px}}@media(max-width:640px){.site-footer{padding:28px 20px 4rem}.site-footer>.mooss-nav{padding:0 0 12px}}
.site-footer__copyright{flex:1 0 100%}
/* ADR-0020: the focused skip link lies over the top of the page, where the shared one-row bar is
   (position: relative; z-index: 40), so it sits at z-index 50 to stay visible above the bar. */
/* ADR-0020: element rules that would reach into the shared bar stop at it: the tap highlight above and
   the summary rule (main summary) leave the bar as the shared stylesheet draws it. */
