:root{color-scheme:dark;--background:#090d12;--panel:#11171e;--panel-deep:#0d1319;--line:#27313a;--muted:#89969f;--muted2:#66747e;--white:#f5f7f7;--mint:#b9f28e;--mint-dark:#19321a;--bluegray:#1b242d}*{box-sizing:border-box}html{min-width:330px}body{margin:0;background:radial-gradient(ellipse 1200px 500px at 88% 0%,#1d272b 0%,rgba(14,21,28,.18) 64%,transparent 100%),var(--background);color:var(--white);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;line-height:1.45}button,input,textarea{font:inherit}button{cursor:pointer}.shell{max-width:1500px;margin:auto;padding:0 38px}.topbar{height:92px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #222c35}.wordmark{display:flex;align-items:center;gap:13px}.brand-icon{display:grid;place-items:center;width:39px;height:39px;color:#101d12;background:var(--mint);border-radius:12px}.brand-icon svg{width:27px;height:27px}.wordmark b{display:block;font-size:19px;font-weight:900;letter-spacing:.11em}.wordmark small{display:block;font-size:10px;letter-spacing:.22em;color:#94a4ab;font-weight:700}.status{display:flex;align-items:center;gap:9px;font-size:12px;color:#b4c3c5;background:#151d23;border:1px solid #2a353b;padding:10px 13px;border-radius:30px}.status-dot{width:8px;height:8px;border-radius:50%;background:#e9ba65;box-shadow:0 0 0 3px #66502a35}.status-dot.online{background:#9eed8b;box-shadow:0 0 0 3px #4e8f4b30}.status-dot.offline{background:#f18c8c}.page-heading{padding:41px 0 32px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.eyebrow{font-size:10px;letter-spacing:.21em;font-weight:900;color:#b5ef92;display:flex;align-items:center;gap:10px}.eyebrow-bar{display:inline-block;width:22px;height:2px;background:var(--mint)}h1{font-size:clamp(32px,3.5vw,52px);line-height:1.13;letter-spacing:-.045em;margin:12px 0 11px;font-weight:810}h1 em{font-style:normal;color:var(--mint)}.page-heading p{color:#97a6ae;margin:0;font-size:14px}.model-tag{display:flex;gap:11px;align-items:center;background:#18211f;border:1px solid #3d5545;border-radius:13px;padding:13px 17px;white-space:nowrap}.sparkle{font-size:25px;color:var(--mint)}.model-tag strong,.model-tag small{display:block}.model-tag strong{font-size:12px}.model-tag small{font-size:10px;color:#9cbaa6;margin-top:3px}.workspace{display:grid;grid-template-columns:minmax(390px,490px) minmax(450px,1fr);align-items:start;gap:20px}.panel{background:linear-gradient(150deg,#151b22,#0e141a);border:1px solid #2a333c;border-radius:18px;box-shadow:0 20px 60px #0002;overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:21px 25px;border-bottom:1px solid #27313a}.panel-heading>div{display:flex;align-items:center;gap:11px}.step-num{display:grid;place-items:center;width:29px;height:29px;border:1px solid #4c6650;background:#243b28;color:var(--mint);border-radius:8px;font-weight:800;font-size:11px}h2{margin:0;font-size:16px;font-weight:760;letter-spacing:-.015em}.step-hint{font-size:11px;color:#84959e}form{padding:25px;display:flex;flex-direction:column;gap:21px}.field>label:not(.switch-box),.field>label:first-child{display:block;margin-bottom:9px;color:#dfe7e8;font-size:12px;font-weight:760}.required{color:var(--mint)}.field input:not([type=checkbox]),.field textarea{width:100%;background:#0b1117;border:1px solid #35414c;color:#f3f9f9;border-radius:9px;padding:12px 13px;font-size:13px;outline:0;transition:border-color .2s,box-shadow .2s}.field input:focus,.field textarea:focus{border-color:#93d985;box-shadow:0 0 0 3px #adf08b16}.field input::placeholder,.field textarea::placeholder{color:#637580}.field-caption{font-size:10px;color:#74848e;display:block;margin-top:7px}.choice-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.choice,.subchoice,.ratio-choice{border:1px solid #34414a;background:#111820;color:#a9b7bd;border-radius:9px;padding:12px 8px;font-size:12px;font-weight:750;transition:background .16s,border-color .16s,color .16s}.choice.selected,.subchoice.selected{background:#233526;border-color:#86c975;color:#d7ffb7}.choice:hover,.subchoice:hover,.ratio-choice:hover{border-color:#739b78}.classification-extra{padding:12px 0 0}.subchoice-row{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.subchoice{font-size:11px;padding:8px}.split-controls{display:flex;align-items:flex-end;gap:12px;margin-top:13px}.split-controls>div{flex:1}.mini-label{display:block;font-weight:740;font-size:11px;color:#b9c8c9;margin:0 0 7px}.percent-input{position:relative}.percent-input input{padding-right:34px!important}.percent-input>span{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#a6b4bc;font-weight:750}.split-separator{font-size:23px;color:#65737e;padding-bottom:5px}.calculated input{color:#96a5ab!important;background:#10191b!important}.label-preview{font-size:10px;color:#8a9a9e;margin:10px 0 0}.label-preview strong{color:var(--mint)}.two-col{display:grid;grid-template-columns:1fr 1.15fr;gap:13px}.big-input input{height:47px}.switch-box{display:flex!important;align-items:center;justify-content:space-between;gap:8px;margin:0!important;padding:11px 12px;height:47px;border:1px solid #34414a;border-radius:9px;background:#0b1117;cursor:pointer}.toggle-text{font-size:11px;color:#d4dfdf;font-weight:670}.switch-box input{position:absolute;opacity:0;pointer-events:none}.switch-track{width:35px;height:20px;border-radius:100px;background:#414d55;position:relative;flex:none;transition:.2s}.switch-knob{position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:.2s}.switch-box input:checked+.switch-track{background:#a3ea7f}.switch-box input:checked+.switch-track .switch-knob{transform:translateX(15px);background:#163219}.switch-box:focus-within{outline:2px solid #a3ea7f;outline-offset:2px}.section-divider{height:1px;background:#2a343c;margin:0 -25px}.concept-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.concept-choice{min-width:0;border:1px solid #34414a;background:#10171e;border-radius:11px;display:flex;flex-direction:column;align-items:flex-start;gap:9px;text-align:left;color:#d8e3e4;padding:12px;position:relative;min-height:101px}.concept-choice.selected{background:#192c21;border-color:#7fbf74}.concept-symbol{font-size:19px;color:var(--mint)}.concept-symbol.pencil-symbol{color:#91a7b4}.concept-choice strong,.concept-choice small{display:block}.concept-choice strong{font-size:12px}.concept-choice small{font-size:10px;color:#8fa1a5;margin-top:3px}.selection-mark{display:none;position:absolute;right:11px;top:9px;color:var(--mint);font-size:14px}.concept-choice.selected .selection-mark{display:block}.custom-concept{margin-top:12px}.field textarea{resize:vertical;min-height:92px}.ratio-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.ratio-choice{display:flex;align-items:center;justify-content:center;gap:13px;text-align:left;padding:9px;min-height:59px}.ratio-choice.selected{border-color:#91d180;background:#203327;color:#e2ffd0}.ratio-choice strong,.ratio-choice small{display:block}.ratio-choice strong{font-size:13px}.ratio-choice small{font-size:10px;font-weight:500;color:#8b9aa3}.ratio-icon{border:2px solid currentColor;display:block;flex:none;border-radius:2px}.ratio-square{height:25px;width:25px}.ratio-landscape{height:20px;width:30px}.form-bottom{padding-top:2px}.primary-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;border:0;border-radius:10px;background:var(--mint);color:#172416;font-size:14px;font-weight:850;padding:14px;min-height:51px}.primary-btn:hover:not(:disabled){background:#cbffa8}.button-sparkle{font-size:19px}.primary-btn .arrow{margin-left:auto;font-size:19px}.primary-btn .button-sparkle{margin-left:auto}.primary-btn:disabled{opacity:.65;cursor:wait}.cost-note{text-align:center;color:#79888c;font-size:10px;margin:10px 0 0}.output-tag{background:#222c34;border:1px solid #34434b;border-radius:5px;padding:6px 9px;font-size:9px;letter-spacing:.12em;color:#a9b7bf;font-weight:800}.output-tag.completed{color:#c8f2b1;border-color:#446e42;background:#223726}.preview-content{padding:23px}.image-stage{position:relative;display:grid;place-items:center;width:100%;max-height:690px;aspect-ratio:1 / 1;background:#0c1219;border:1px solid #2f3a44;border-radius:12px;overflow:hidden}.image-stage.landscape{aspect-ratio:3 / 2}.empty-preview{position:absolute;inset:0;overflow:hidden;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 34%,#24363d 0%,#151e28 35%,#0a1118 100%)}.placeholder-art{width:72%;height:79%;max-height:500px;transform:rotate(-7deg);opacity:.37;filter:blur(.7px) drop-shadow(10px 18px 17px #0007)}.placeholder-border{height:100%;position:relative;border:7px solid #d3a97e;box-shadow:inset 0 0 0 3px #7a4d5d,0 0 0 3px #132e30;background:radial-gradient(ellipse at 40% 45%,#7346b3,#222b4f 55%,#153a47);display:flex;align-items:center;flex-direction:column}.placeholder-class{font-size:clamp(7px,.8vw,12px);letter-spacing:.14em;font-weight:900;color:#f4c586;margin-top:7%}.placeholder-decoration{font-size:60px;color:#f4aee5;opacity:.9;margin-top:7%}.placeholder-title{font-size:clamp(34px,5vw,75px);font-weight:1000;letter-spacing:-.09em;line-height:.89;text-align:center;text-shadow:5px 5px 0 #172544;color:#f7c9fa;-webkit-text-stroke:2px #1b3241;transform:rotate(-2deg)}.placeholder-lineage{position:absolute;bottom:6%;left:10%;right:10%;font-size:clamp(7px,1vw,13px);text-align:center;letter-spacing:.1em;color:#e9c19a;background:#17212f;border:2px solid #edb98a;padding:7px 2px}.placeholder-thc{position:absolute;bottom:13%;right:5%;font-size:clamp(12px,1.5vw,26px);font-weight:900;color:#fff;background:#703d76;border:3px solid #d6b9b3;border-radius:100px;padding:6px}.placeholder-overlay{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:11px;background:linear-gradient(to bottom,#07111b2a,#08101978 40%,#091019ee);padding:20px}.placeholder-overlay .preview-orbit{display:grid;place-items:center;background:#263b2e;border:1px solid #6a975e;color:#baf18c;height:48px;width:48px;border-radius:16px;font-size:25px;box-shadow:0 0 30px #9aff9d14}.placeholder-overlay strong{font-size:19px;letter-spacing:-.025em}.placeholder-overlay>span:last-child{font-size:12px;color:#a7b4bd}.artwork-image{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff}.stage-loading{position:absolute;inset:0;z-index:3;background:#071016e9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-align:center}.stage-loading strong{font-size:18px}.stage-loading span:last-child{font-size:12px;color:#a3b3b2}.loader-ring{width:47px;height:47px;border:3px solid #4d674c;border-top-color:#baf28e;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{background:#3a2226;border:1px solid #89505a;color:#ffb9c1;padding:12px 14px;border-radius:9px;font-size:12px;margin-top:13px}.result-controls{display:flex;gap:10px;margin-top:16px}.secondary-btn{min-width:0;flex:1;display:flex;align-items:center;justify-content:center;gap:9px;background:#1b252d;border:1px solid #46515b;border-radius:9px;color:#e4eaea;padding:12px;font-size:12px;font-weight:750}.secondary-btn svg{width:17px;height:17px;flex:none}.secondary-btn:hover:not(:disabled){border-color:#96cf83;background:#253329}.secondary-btn:disabled{color:#6c7b84;border-color:#2c3943;cursor:not-allowed;background:#151c23}.download-btn:not(:disabled){background:#31442b;border-color:#78a66e;color:#e1ffc8}.retry-note{font-size:11px;color:#788b93;text-align:center;margin:10px 0 22px}.prompt-disclosure{border-top:1px solid #29343e;border-bottom:1px solid #29343e;padding:0;margin-top:3px}.prompt-disclosure summary{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:17px 2px;font-weight:700;font-size:12px;color:#b9c9c9}.prompt-disclosure summary::-webkit-details-marker{display:none}.details-chevron{font-size:25px;color:#8fa09f;line-height:.6}.prompt-disclosure[open] .details-chevron{transform:rotate(180deg)}.prompt-body{padding:0 0 18px}.prompt-body p{font-size:11px;color:#97a9ac;margin:0 0 7px}.prompt-toolbar{display:flex;justify-content:flex-end}.prompt-toolbar button{background:#253428;border:1px solid #55754e;color:#c8f2b4;font-size:11px;border-radius:6px;padding:7px 10px}.prompt-body pre{white-space:pre-wrap;word-wrap:break-word;max-height:310px;overflow:auto;background:#090e13;border:1px solid #313c44;border-radius:8px;padding:12px;font-size:10px;color:#a9b9ba;line-height:1.6}.micro-features{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin-top:19px}.micro-features>div{font-size:10px;color:#7f8d96;display:flex;align-items:center;gap:5px}.micro-features span{color:#98cd83;font-size:15px}footer{display:flex;justify-content:space-between;gap:15px;color:#586a75;font-size:10px;padding:26px 0 30px}.hidden{display:none!important}
@media(max-width:1080px){.shell{padding:0 22px}.workspace{grid-template-columns:minmax(335px,440px) minmax(390px,1fr);gap:14px}.panel-heading{padding:17px 18px}form{padding:19px}.preview-content{padding:17px}.page-heading{align-items:flex-start}.model-tag{align-self:center}.placeholder-title{font-size:52px}}@media(max-width:850px){.workspace{grid-template-columns:1fr}.preview-panel{order:2}.form-panel{order:1}.shell{max-width:670px}.page-heading{align-items:flex-start}.model-tag{align-self:flex-start}.placeholder-title{font-size:60px}.placeholder-class{font-size:12px}.placeholder-lineage{font-size:12px}}@media(max-width:540px){.shell{padding:0 13px}.topbar{height:76px}.wordmark b{font-size:15px}.wordmark small{font-size:8px}.status{font-size:0;padding:9px}.status-dot{margin:0}.page-heading{padding:27px 2px 22px;flex-direction:column;gap:14px}.page-heading p{font-size:12px}.model-tag{padding:10px 14px}h1{font-size:33px}.panel{border-radius:13px}.panel-heading{padding:15px}.step-hint{display:none}form{padding:15px;gap:20px}.two-col{grid-template-columns:1fr 1.2fr;gap:10px}.switch-box{padding:8px}.toggle-text{font-size:10px}.preview-content{padding:13px}.result-controls{gap:7px}.secondary-btn{padding:10px 6px;font-size:11px}.image-stage{max-height:none}.placeholder-title{font-size:clamp(32px,13vw,65px)}.placeholder-decoration{font-size:35px}.placeholder-art{width:80%;height:83%}footer{flex-direction:column;gap:5px}}

/* V2 lineage pair and optional reference image */
.lineage-row{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);align-items:end;gap:9px}
.parent-field{min-width:0}
.parent-field .mini-label{display:block;margin-bottom:7px}
.parent-times{height:43px;display:grid;place-items:center;font-size:23px;font-weight:900;color:#a9dd92}
.optional-badge{color:#90adad;font-size:9px;letter-spacing:.11em;border:1px solid #3b5052;background:#202c31;border-radius:4px;padding:3px 5px;margin-left:4px}
.reference-hint{font-size:11px;line-height:1.6;color:#9eafb2;margin:2px 0 10px}
.reference-hint strong{color:#cde4ce;font-weight:750}
.upload-box{padding:9px;background:#10191e;border:1px dashed #4a6463;border-radius:10px}
.upload-box input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}
.upload-pick{display:flex;align-items:center;gap:11px;padding:8px;color:#d0e4e4;cursor:pointer}
.upload-box:focus-within{outline:2px solid #a3ea7f;outline-offset:2px}
.upload-icon{display:grid;place-items:center;font-size:24px;width:37px;height:37px;background:#25392c;color:#b9ee9f;border-radius:8px;flex:none}
.upload-pick strong,.upload-pick small{display:block}
.upload-pick strong{font-size:12px}.upload-pick small{font-size:10px;color:#81949b;margin-top:2px}
.reference-loaded{display:flex;align-items:center;gap:10px;padding:3px}
.reference-loaded img{width:54px;height:54px;border-radius:7px;object-fit:cover;border:1px solid #45605b;background:white}
.reference-loaded>div{flex:1;min-width:0}
.reference-loaded strong,.reference-loaded small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reference-loaded strong{font-size:12px;color:#dae4df}.reference-loaded small{font-size:10px;color:#9fc48e;margin-top:5px}
.reference-loaded button{flex:none;background:#273333;border:1px solid #526565;color:#d4e2e2;border-radius:7px;padding:8px;font-size:11px}
@media(max-width:540px){.lineage-row{gap:5px;grid-template-columns:minmax(0,1fr) 17px minmax(0,1fr)}.parent-times{font-size:19px}.parent-field input{font-size:11px;padding-left:9px;padding-right:9px}}

/* V3: Manual Magnific workflow & imported artwork */
.manual-workflow{background:linear-gradient(145deg,#173023,#131d26);border:1px solid #588452;border-radius:12px;margin-top:17px;padding:19px 18px;color:#e5f5e9}
.manual-kicker{font-size:10px;color:#b6ef91;font-weight:900;letter-spacing:.17em}
.manual-workflow h3{font-size:18px;margin:8px 0 6px;line-height:1.3}
.manual-workflow p{font-size:12px;line-height:1.55;color:#a9c5ae;margin:0 0 13px}
.manual-workflow .manual-reference-note{color:#f7d69b;background:#4f421d88;padding:9px 11px;border:1px solid #705a32;border-radius:7px}
.manual-actions{display:flex;gap:9px;margin-bottom:15px;flex-wrap:wrap}
.manual-actions>*{font:inherit;font-weight:800;font-size:12px;padding:11px 14px;text-decoration:none;border-radius:8px;display:flex;align-items:center;justify-content:center;flex:1;white-space:nowrap}
.workflow-primary{border:0;background:#b9f28e;color:#1b3018}
.workflow-primary:hover{background:#d2ffa7}
.workflow-link{border:1px solid #587361;background:#253a31;color:#e7f6dd}
.workflow-link:hover{border-color:#aed99c}
.import-label{display:block;border:1px dashed #80b486;color:#dbf2d8;background:#1b3225;padding:14px 13px;border-radius:9px;text-align:center;font-weight:750;font-size:12px;cursor:pointer}
.import-label:hover{background:#264330}
.visually-hidden-file{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden}
.manual-help{display:block;font-size:10px;color:#8ea59b;line-height:1.5;margin-top:9px}
@media(max-width:540px){.manual-workflow{padding:14px}.manual-actions{flex-direction:column}}
/* V4: local image library, daily counter, variation carousel, spelling review */
.top-tools{display:flex;align-items:center;gap:13px}.usage-badge{min-width:152px;background:#15251b;border:1px solid #48644d;border-radius:12px;padding:9px 12px;text-align:right}.usage-name{display:block;font-size:9px;letter-spacing:.09em;font-weight:800;color:#98c791}.usage-badge strong{font-size:17px;color:#d2ffc0;margin-right:8px}.usage-badge #usageRemaining{font-size:10px;color:#a8c3ab}.usage-track{height:3px;border-radius:8px;background:#3c523e;margin-top:6px;overflow:hidden}.usage-track span{display:block;width:0;height:100%;background:#b9f28e;transition:width .3s}.usage-badge.limit-reached{border-color:#aa685b}.usage-badge.limit-reached strong{color:#ffb1a1}
.field-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.field-title-row>label:first-child{font-size:12px;font-weight:760;color:#dfe7e8}.unknown-toggle{font-size:11px;color:#bad8b8;display:flex;align-items:center;gap:7px;cursor:pointer}.unknown-toggle input{accent-color:#b9f28e;width:15px;height:15px;margin:0}.lineage-row.lineage-disabled{opacity:.35;pointer-events:none}
.spell-review{padding:5px 0 0}.spelling-button{border:1px solid #455653;background:#1b2527;color:#d7ead4;border-radius:8px;padding:9px 12px;font-size:12px;font-weight:750;text-align:left}.spelling-button span{display:inline;color:#829a90;font-size:10px;font-weight:450;margin-left:6px}.spelling-panel{margin-top:10px;background:#182322;border:1px solid #49615b;border-radius:10px;padding:13px 15px;color:#d8ead8;font-size:12px}.spelling-panel ul{margin:8px 0;padding-left:17px}.spelling-panel li{margin:4px 0}.spell-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.spell-actions button{border-radius:7px;padding:8px 10px;font-size:11px;font-weight:800;border:1px solid #5a7563;background:#26392d;color:#e5f4d9}.spell-actions .spell-fix{background:#b9f28e;color:#14230f;border:0}
.variation-browser{margin-top:17px;background:#101b22;border:1px solid #35464d;border-radius:12px;padding:14px}.variation-heading{display:flex;justify-content:space-between;align-items:center;color:#e1ece8;font-size:12px;margin-bottom:9px}.variation-heading span{font-size:11px;color:#9aacb2}.variation-navigation{display:flex;gap:8px;align-items:stretch}.variation-navigation>button{flex-shrink:0;padding:6px 9px;color:#c2dac4;border:1px solid #446050;background:#26332e;border-radius:8px;font-size:11px}.variation-navigation>button:disabled{opacity:.32;cursor:not-allowed}.variation-thumbs{min-width:0;display:flex;overflow-x:auto;gap:7px;align-items:center;flex:1;padding:3px}.variation-thumb{position:relative;flex:0 0 74px;width:74px;height:69px;padding:3px;border:1px solid #3c4e55;border-radius:8px;background:#0d1418;overflow:hidden;color:#b4c7bd}.variation-thumb.selected{border:2px solid #b9f28e;box-shadow:0 0 0 1px #83a779}.variation-thumb img{width:100%;height:100%;object-fit:contain}.variation-thumb .thumb-placeholder{font-size:10px;line-height:1.15;display:grid;place-items:center;height:100%;text-align:center;padding:4px}.variation-thumb .thumb-num{position:absolute;bottom:2px;right:3px;font-size:9px;background:#17281ad9;color:#d7ffba;padding:1px 3px;border-radius:4px}
.library-panel{margin-top:22px}.library-heading-actions{display:flex;align-items:center;gap:13px}.small-action{border:1px solid #6a956a;color:#baf296;background:#223827;font-size:11px;font-weight:800;border-radius:8px;padding:9px 12px}.small-action:hover{background:#2a4c30}.library-body{padding:22px 25px 25px}.library-intro{margin:0 0 18px;color:#93a6a6;font-size:12px}.library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(208px,1fr));gap:13px}.library-card{min-width:0;cursor:pointer;background:#101923;border:1px solid #32424b;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:10px;text-align:left;color:#e4f2e6;transition:border-color .2s,transform .15s}.library-card:hover{border-color:#98d984;transform:translateY(-2px)}.library-card.active{border-color:#b9f28e;box-shadow:0 0 0 1px #72985b}.library-preview{height:132px;display:grid;place-items:center;background:#080f13;border-radius:7px;overflow:hidden}.library-preview img{width:100%;height:100%;object-fit:contain}.library-preview .library-placeholder{font-size:11px;color:#81929a;padding:15px;text-align:center}.library-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.library-card-name{font-size:13px;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-card-count{font-size:10px;color:#b9f28e;white-space:nowrap}.library-card-meta{font-size:10px;color:#8a9aa4}.library-empty{grid-column:1/-1;text-align:center;background:#121d21;color:#8fa19c;padding:28px;border:1px dashed #385047;border-radius:12px;font-size:12px}
@media(max-width:850px){.top-tools{gap:6px}.usage-badge{min-width:130px}.usage-badge #usageRemaining{display:block}.usage-badge strong{font-size:15px}.variation-navigation>button{font-size:10px}}
@media(max-width:620px){.topbar{height:auto;min-height:90px;gap:9px;flex-wrap:wrap;padding:15px 0}.top-tools{width:100%;justify-content:space-between}.usage-badge{text-align:left}.field-title-row{flex-wrap:wrap}.library-body{padding:16px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.library-preview{height:110px}.library-card{padding:7px}.variation-thumb{flex-basis:62px;width:62px;height:62px}.variation-navigation{gap:4px}.variation-navigation>button{padding:4px 6px}.spelling-button span{display:block;margin-left:0}}
/* V5: larger spelling-review action, integrated guide link, PWA affordances */
.guide-link{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;min-height:36px;padding:7px 12px;background:#203026;border:1px solid #587855;color:#c8f6aa;border-radius:9px;font-size:12px;font-weight:850;text-decoration:none;letter-spacing:.02em}
.guide-link:hover,.guide-link:focus-visible{background:#304b30;border-color:#a5e289;outline-offset:3px}
.spelling-button{display:flex;align-items:center;gap:12px;justify-content:space-between;width:100%;min-height:52px;padding:15px 17px;font-size:15px;letter-spacing:.035em;border:2px solid #74ae67;background:#233728;color:#dcfbbf;box-shadow:inset 0 1px 0 #39513e}
.spelling-button:hover{background:#304730;border-color:#b4f28e}
.spelling-button span{font-size:11px;color:#b6c9b4;font-weight:500;letter-spacing:0}
.unknown-toggle{text-transform:uppercase;font-weight:850;letter-spacing:.02em}
@media(max-width:680px){.guide-link{padding:7px 9px}.spelling-button{flex-direction:column;align-items:flex-start;gap:3px;font-size:14px}.spelling-button span{display:block!important;margin:0!important}}
/* Accessible standalone help page */
.guide-page{max-width:920px;margin:26px auto 60px;padding:0 18px;color:#eaf4eb;line-height:1.65}
.guide-page a{color:#b8ef93}.guide-page .guide-back{text-decoration:none;display:inline-block;padding:8px 15px;background:#1c3027;border:1px solid #65985b;border-radius:8px;margin-bottom:24px}
.guide-page h1{font-size:clamp(28px,4.8vw,42px);line-height:1.13;margin:0 0 12px}.guide-page h2{font-size:22px;margin:0 0 15px;color:#c5f6a5}.guide-page h3{font-size:17px;margin-bottom:3px;color:#f2fff2}
.guide-page p{color:#adbfbc;margin:4px 0 13px}.guide-page .lead{font-size:16px}
.guide-page section{border:1px solid #2c403b;background:#121c20;border-radius:16px;padding:22px;margin:20px 0}
.guide-page dt{font-size:14px;font-weight:850;color:#e9fbe8;margin-top:15px}
.guide-page dd{font-size:13px;color:#b5c7c2;margin:2px 0 12px}
.guide-page li{padding:4px 0;color:#c4d7d2;font-size:14px}.guide-page code{color:#c4f0a8;background:#263a2b;padding:1px 4px;border-radius:3px}
.guide-page .notice{border-left:3px solid #a9ee8f;padding:12px 15px;background:#192920;color:#d1e6ca;border-radius:0 8px 8px 0}
/* V6 account and admin styles; existing design editor stays unchanged. */
.auth-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 0%,#1e2930 0,#0b0f13 65%);padding:24px;color:#e8edf0}
.auth-shell{width:min(100%,440px)}.auth-brand{display:flex;align-items:center;gap:9px;justify-content:center;margin-bottom:28px;letter-spacing:.13em}.auth-brand strong{font-size:1.35rem}.auth-brand small{color:#94a3ad;font-size:.65rem}
.auth-card{background:#151b20;border:1px solid #334044;border-radius:20px;padding:30px;box-shadow:0 18px 80px #0008}.auth-card h1{font-size:1.9rem;line-height:1.2;margin:8px 0 12px}.auth-card p{color:#aab9c0;font-size:.92rem;line-height:1.6}
.auth-card form{display:flex;flex-direction:column;gap:10px;margin:20px 0}.auth-card label{font-weight:700;font-size:.82rem}.auth-card input,.admin-input{width:100%;background:#10191b;color:#edf6ef;border:1px solid #465257;border-radius:10px;padding:13px 12px;font:inherit;min-width:0}.auth-card .primary-btn{justify-content:center;margin-top:12px}.auth-foot{border-top:1px solid #333d41;padding-top:16px;margin-top:20px}
.auth-card .hidden{display:none!important}.account-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.account-link{font-size:.8rem;color:#c8eeb2;border:1px solid #465655;border-radius:9px;padding:8px 10px;background:#17221d;text-decoration:none}.account-link:hover{background:#213326}
.admin-shell{width:min(1160px,calc(100% - 32px));margin:0 auto;padding:20px 0 60px}.admin-header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:28px;flex-wrap:wrap}.admin-header h1{font-size:2rem;margin:4px 0}.admin-panel{background:#151c20;border:1px solid #344449;padding:22px;border-radius:16px;margin:14px 0}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.admin-panel h2{font-size:1.1rem;margin:0 0 12px}.admin-panel .field{margin-top:10px}.admin-panel button{cursor:pointer}.admin-actions{display:flex;align-items:center;gap:8px;margin-top:14px;flex-wrap:wrap}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.87rem}.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid #364549;text-align:left;white-space:nowrap}.admin-table th{color:#aac0b7}.admin-table select,.admin-table input{background:#131d20;color:#e0efe5;border:1px solid #435b54;border-radius:7px;padding:7px}.admin-table input{width:70px}.admin-message{margin-top:12px;color:#bbedac;white-space:pre-wrap;word-break:break-word}.admin-button{background:#a7f187;border:0;padding:10px 14px;border-radius:9px;color:#111b14;font-weight:800;cursor:pointer}.admin-secondary{background:#22302d;border:1px solid #485d56;color:#d9f0dd;padding:10px 14px;border-radius:9px;cursor:pointer}.admin-stat{font-size:1.6rem;font-weight:800;color:#c4f5a9}.admin-muted{font-size:.8rem;color:#9eadb1}
@media(max-width:630px){.auth-card{padding:22px}.account-actions{margin-top:8px}.admin-shell{width:calc(100% - 20px)}.admin-panel{padding:15px}}
