:root{font-family:Microsoft YaHei,PingFang SC,sans-serif;color:#424e42;background:#eeece3;font-synthesis:none;font-size:14px;font-weight:400}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 18% 0%,#faf8ef 0,transparent 55%),#eeece3}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:1px solid #d6d7c9;background:transparent;border-radius:5px;padding:8px 12px;transition:background .15s}button:hover{background:#e9ecdf}button:disabled{cursor:default;opacity:.35}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #486d54;outline-offset:3px}a{color:inherit}h1,h2,h3,p{margin:0}.header{height:87px;margin:0 4%;border-bottom:1px solid #d8dbce;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none}.seal{border:1px solid #ad6952;border-radius:5px 2px;color:#ad6952;font-family:serif;font-size:27px;width:41px;height:44px;display:grid;place-items:center;transform:rotate(-4deg)}.brand strong{font-family:STKaiti,KaiTi,serif;display:block;font-size:26px;letter-spacing:5px;font-weight:500}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:5px;color:#8a9080}.header-center{font-size:12px;letter-spacing:3px;color:#87907f}.header-center span{padding:0 14px;color:#b5baaa}.save-state{display:flex;align-items:center;gap:8px;font-size:11px;color:#89947e}.save-state i,.work-label i{display:inline-block;width:5px;height:5px;background:#839575;border-radius:50%}.help-button{border-radius:50%;padding:0;width:26px;height:26px;margin-left:15px;color:#7d8a72}main{max-width:1440px;margin:0 auto;padding:38px 4% 0}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:10px;letter-spacing:3px;color:#92967f;margin-bottom:13px}h1{font-family:STSong,SimSun,serif;font-size:30px;font-weight:400;letter-spacing:3px;color:#3c5343}.intro p{margin-top:13px;color:#939687;font-size:12px;letter-spacing:1px}.chapter{font-size:10px;color:#929680;letter-spacing:3px;text-align:right}.chapter b{font-family:serif;display:inline-block;font-size:24px;margin-left:10px;font-weight:400;color:#a4906c}.chapter small{display:block;font-size:8px;letter-spacing:2px;margin-top:10px;color:#a9ab9c}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:25px}.atelier{border:1px solid #d5d8c9;border-radius:9px;background:#f8f7ef;overflow:hidden;box-shadow:0 10px 30px #55533205}.workbar{display:flex;height:50px;padding:0 20px;align-items:center;justify-content:space-between;border-bottom:1px solid #e1e2d6;gap:8px}.work-label{font-size:11px;letter-spacing:2px;color:#8b927e}.work-label i{margin:0 10px}.history-buttons{display:flex;align-items:center;gap:3px}.history-buttons button{border:0;font-size:12px;padding:5px 7px}.history-buttons button:nth-child(-n+2){font-size:23px;padding:0 9px}.history-buttons span{height:15px;border-left:1px solid #d9ddce;margin:0 10px}.canvas-area{position:relative;background:radial-gradient(ellipse,#ece9de,#e3e1d5);height:490px;overflow:hidden}.board{position:absolute;inset:0;touch-action:none;cursor:crosshair;-webkit-user-select:none;user-select:none}.board.unpick{cursor:cell}.board>div{position:absolute!important;inset:0}.cloth-overlay{position:absolute;transform:translate(-50%,-50%);pointer-events:none;overflow:visible;filter:drop-shadow(0 0 0 transparent)}.cloth-mark{position:absolute;bottom:16px;left:50%;transform:translate(-50%);font-size:9px;letter-spacing:2px;color:#8e8d7b;white-space:nowrap;pointer-events:none}.tool-rail{position:absolute;top:20px;left:17px;z-index:2;display:flex;flex-direction:column;gap:3px;background:#f8f7efee;padding:5px;border:1px solid #d9dace;border-radius:8px;box-shadow:0 3px 12px #55533208}.tool-rail button{display:flex;flex-direction:column;align-items:center;border:0;padding:10px 8px;border-radius:4px;gap:4px;font-size:10px;color:#8e9683}.tool-rail b{font-family:serif;font-size:23px;line-height:24px;font-weight:400}.tool-rail .active{background:#e1e8d9;color:#466148}.zoom-controls{position:absolute;z-index:2;right:15px;bottom:15px;display:flex;align-items:center;gap:5px;background:#f7f7edec;border:1px solid #d8dacd;border-radius:5px;padding:2px}.zoom-controls button{border:0;font-size:18px;padding:3px 8px}.zoom-controls span{font-size:10px;min-width:35px;text-align:center;color:#7c8872}.context-bar{min-height:47px;display:flex;align-items:center;gap:9px;padding:10px 20px;border-top:1px solid #dddfd1;border-bottom:1px solid #e1e2d6;font-size:11px;color:#8a907c;line-height:1.6}.context-bar button{font-size:10px;padding:3px 8px;white-space:nowrap}.hint-dot{display:inline-block;flex:0 0 5px;height:5px;border:1px solid #a1ad90;border-radius:50%}.palette{padding:18px 23px 19px}.palette-heading{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px;align-items:center}.palette-heading small{color:#9d9f8d;margin-left:10px;font-size:10px;letter-spacing:0}.current-color{color:#7d8d70}.swatches{display:flex;justify-content:space-between;gap:6px;margin-top:17px}.swatches button{padding:4px 5px;border:1px solid transparent;display:flex;align-items:center;flex-direction:column;gap:7px;flex:1;min-width:0}.swatches button.selected{border-color:#a6b498;background:#eef0e5}.swatches button>span:not(.thread-swatch){font-size:10px;color:#7d8571}.swatches small{font-size:8px;color:#a1a58f}.thread-swatch{width:32px;height:29px;border-radius:3px;background:repeating-linear-gradient(0deg,#ffffff00 0px,#ffffff35 1px,#0000000c 2px,var(--thread) 3px),var(--thread);border-left:4px solid #d1c5a6;border-right:4px solid #d1c5a6;box-shadow:0 1px 2px #0002;position:relative}.thread-swatch:before,.thread-swatch:after{content:"";height:3px;position:absolute;left:-5px;right:-5px;top:-2px;background:#d8cdb3;border-radius:2px}.thread-swatch:after{top:auto;bottom:-2px}.sidebar{display:flex;flex-direction:column;gap:17px}.pattern-card,.thread-card{border:1px solid #d5d8c9;border-radius:8px;background:#f8f7ef;padding:20px}.section-heading{display:flex;align-items:center;justify-content:space-between}.section-heading h2{font-size:13px;letter-spacing:2px;font-weight:400}.section-heading>span{font-size:9px;color:#9ba18d}.pattern-select select{margin-top:15px;background:transparent;border:0;border-bottom:1px solid #e2e4d7;color:#77836b;width:100%;padding:6px 0;font-size:11px}.pattern-preview{display:block;width:100%;height:168px;margin:12px auto;background:#f1f0e6;border:1px solid #e4e3d6;border-radius:3px;padding:8px}.pattern-title{text-align:center;margin:9px 0 22px}.pattern-title h3{font-family:serif;font-weight:400;font-size:18px;letter-spacing:4px}.pattern-title p{font-size:9px;color:#a0a38e;letter-spacing:1px;margin-top:7px}.progress-heading{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#949b85}.progress-heading strong{font-family:Georgia,serif;font-size:17px;color:#667d5e;font-weight:400}.progress-heading small{font-size:11px;color:#a6ad95}.progress-track{height:4px;background:#e7e8dd;margin:10px 0 15px;border-radius:3px;overflow:hidden}.progress-track i{display:block;height:100%;background:#8d9d7b;transition:width .2s}.locate{width:100%;font-size:10px;background:#edf0e3;padding:10px 2px;color:#75886a;border-color:#d7dfc8}.slider-label{display:block;font-size:10px;color:#858f77;margin-top:21px}.slider-label>span{float:right;color:#9da68d}.slider-label input{display:block;width:100%;margin:12px 0 15px;height:3px;accent-color:#819574}.check-label{display:flex;align-items:center;font-size:10px;gap:6px;color:#929a84}.check-label input{accent-color:#819574;width:12px;height:12px}.thread-card{padding:18px 20px}.spool-info{display:flex;align-items:center;gap:15px;margin:21px 0}.spool{width:29px;height:34px;background:repeating-linear-gradient(0deg,#fff2 0 1px,#0001 1px 2px,var(--thread) 2px 3px);border-top:5px solid #d5c6a4;border-bottom:5px solid #d5c6a4;border-radius:4px}.spool-info strong{font-weight:400;font-size:12px}.spool-info p{font-size:9px;color:#a0a68f;margin-top:6px}.thread-card>button{width:100%;display:flex;justify-content:space-between;font-size:10px;border-color:#dedfd2;padding:9px 10px}.thread-card>button span{font-size:9px;color:#a3aa94}.settings{font-size:11px;color:#89967d;border-bottom:1px solid #d7dcce;padding:0 5px 14px}.settings summary{cursor:pointer;padding:3px 0}.settings-body{padding:12px 0;display:flex;flex-direction:column;gap:13px}.settings-body label{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:10px}.settings-body select{font-size:10px;max-width:135px;padding:5px;background:#f7f7ed;border:1px solid #d6d9ca;border-radius:3px;color:#6e7c60}.settings-body input[type=range]{width:120px;accent-color:#7c926b}.settings-body p{font-size:10px;line-height:2;color:#929a84}.file-buttons{display:flex;flex-wrap:wrap;gap:5px}.file-buttons button{font-size:10px;padding:6px 8px}.settings-body a{font-size:10px;color:#7d8d6d}footer{display:flex;justify-content:space-between;align-items:center;padding:25px 0;color:#a1a58f;font-size:10px;letter-spacing:2px}footer small{font-size:9px;letter-spacing:1px}.error-banner{padding:15px;background:#f8e7d5;border:1px solid #cca07a;border-radius:6px;margin-bottom:20px;font-size:12px;line-height:1.8}.error-banner>div{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.error-banner button{font-size:11px}.modal-backdrop{position:fixed;inset:0;background:#303e3377;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:20;display:grid;place-items:center;padding:20px}.modal{max-width:460px;padding:32px;background:#f8f6ec;border:1px solid #ced3c2;border-radius:12px;box-shadow:0 20px 90px #1a301c33}.modal h2{font-family:serif;font-size:24px;font-weight:400}.modal p{font-size:12px;color:#8d927d;line-height:1.9;margin:18px 0 25px}.modal>div{display:flex;gap:8px;flex-wrap:wrap}.modal button{font-size:11px}.primary{background:#718367;color:#fff;border-color:#718367}.scene-error{position:absolute;inset:0;display:grid;place-content:center;z-index:4;padding:30px;background:#f3efdfed;color:#8c765c;font-size:13px;text-align:center;line-height:2}.benchmark{margin-top:20px;padding:15px;border:1px solid #c9d2bd;font-size:12px;line-height:2}.benchmark output{padding:0 20px;color:#45613d}@media(min-width:1500px){.canvas-area{height:560px}}@media(max-width:1000px){.workspace{grid-template-columns:minmax(0,1fr) 235px;gap:16px}.pattern-card,.thread-card{padding:15px}.intro h1{font-size:25px}.canvas-area{height:440px}.palette{padding:15px}.swatches{gap:0}.thread-swatch{width:27px}.tool-rail{left:10px;top:10px}}@media(max-width:720px){.header{height:69px;margin:0 5%;gap:8px}.brand{gap:9px}.seal{font-size:21px;width:31px;height:35px}.brand strong{font-size:21px;letter-spacing:3px}.brand small{font-size:6px;letter-spacing:1px}.header-center{display:none}.save-state{font-size:9px;gap:5px}.help-button{margin-left:6px;width:24px;height:24px}main{padding:25px 4% 0}.intro{margin-bottom:22px}.eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:10px}.intro h1{font-size:22px;letter-spacing:2px}.intro p{font-size:10px;letter-spacing:0;margin-top:10px}.chapter{display:none}.workspace{display:flex;flex-direction:column;gap:18px}.canvas-area{height:min(105vw,460px)}.workbar{padding:0 12px;height:43px}.work-label{font-size:9px;letter-spacing:1px}.work-label i{margin:0 5px}.history-buttons button{font-size:10px;padding:4px}.history-buttons button:nth-child(-n+2){font-size:21px;padding:0 6px}.history-buttons span{margin:0 3px}.tool-rail{padding:3px;top:10px;left:8px}.tool-rail button{padding:7px 6px;font-size:9px}.tool-rail b{font-size:19px;line-height:20px}.cloth-mark{font-size:8px;bottom:13px;left:41%;letter-spacing:1px}.zoom-controls{right:9px;bottom:9px}.context-bar{font-size:10px;padding:10px 12px;min-height:46px;flex-wrap:wrap;gap:5px}.palette{padding:15px 10px}.palette-heading{padding:0 5px;font-size:10px}.palette-heading small{font-size:8px}.swatches{margin-top:15px}.swatches button{padding:5px 2px;gap:6px}.thread-swatch{width:26px;height:26px}.swatches button>span:not(.thread-swatch){font-size:9px}.swatches small{font-size:8px}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pattern-card{grid-row:span 2}.pattern-preview{height:120px;padding:4px}.pattern-title{margin-bottom:17px}.pattern-title h3{font-size:16px}.pattern-title p{font-size:8px;line-height:1.7}.pattern-select select{font-size:10px}.section-heading h2{font-size:11px;letter-spacing:1px}.section-heading>span{font-size:8px}.locate{font-size:9px}.thread-card{align-self:start}.spool-info{margin:18px 0;gap:10px}.spool-info p{line-height:1.8}.thread-card>button{font-size:9px;flex-wrap:wrap;gap:5px}.settings{align-self:start;padding:0 3px 12px}.settings-body label{flex-wrap:wrap}.settings-body select{max-width:100%}.settings-body p{font-size:9px}footer{align-items:start;gap:20px;line-height:2;font-size:9px;letter-spacing:1px;padding:20px 0}footer small{font-size:8px;max-width:160px;text-align:right;letter-spacing:0}.modal{padding:25px}.modal h2{font-size:22px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}:root{color-scheme:dark}body{background:#20352f;color:#e2dfca}.game-shell{min-height:100dvh;background:radial-gradient(ellipse at 40% 15%,#3b5146,#203730 62%,#172d28);color:#e0dfc9;font-family:Microsoft YaHei,PingFang SC,sans-serif}.game-shell button,.game-shell select,.game-shell input,.editor-window button{color:inherit}.game-shell button{border-color:#7b92735c;background:#35504670}.game-shell button:hover{background:#52665180}.game-shell button:focus-visible,.game-shell input:focus-visible{outline:2px solid #d8b879}.game-shell input,.game-shell textarea,.game-shell select{background:#203c33;border:1px solid #6c8263;padding:9px;border-radius:5px;max-width:100%}.game-shell input[type=range]{padding:0;accent-color:#b6b78b}.game-shell .primary{background:#b5aa76;color:#243a30;border-color:#d5c693}.game-shell .selected,.game-shell .active{background:#a1a47a44;border-color:#d2c387}.game-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 3%;border-bottom:1px solid #96a28430;gap:20px;position:relative;z-index:10;background:#213b32d9;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.game-header .brand{padding:0;border:0;background:none}.game-header .brand strong{font-size:27px;color:#ece6ce;letter-spacing:7px}.game-header .brand small{color:#aeb994;font-size:9px;letter-spacing:1.1px}.game-header .seal{border-color:#c5986a;color:#d9b47c;font-size:25px}.calendar-chip{font-size:12px;letter-spacing:1px;border:0!important;background:transparent!important}.calendar-chip span{font-size:10px;color:#a9b597;padding-left:12px}.header-right{display:flex;align-items:center;gap:19px}.header-right small{font-size:10px;color:#a6b396}.header-right button{font-size:20px;padding:4px 9px}.money{color:#d1c08b;font-size:12px}.game-menu{position:absolute;right:25px;top:70px;z-index:40;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:16px;background:#294639;border:1px solid #87957377;border-radius:9px;box-shadow:0 15px 55px #071a16a0}.game-menu button{font-size:13px;padding:12px 20px;text-align:left}.stitch-page{height:calc(100dvh - 76px);min-height:490px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#4c5a47 0,#2f463b,#1c342e)}.cloth-stage{position:absolute;inset:55px 30px 76px;transition:transform .25s}.board{background:transparent}.board:focus{outline:none}.board canvas{filter:drop-shadow(0 12px 18px #081c1a66)}.work-caption{position:absolute;left:5%;top:30px;z-index:2;pointer-events:none}.work-caption small{font-size:8px;letter-spacing:2px;color:#a4b293}.work-caption h1{font-family:STSong,serif;font-size:23px;font-weight:400;letter-spacing:4px;margin:8px 0;color:#eee3c6}.work-caption>span{font-size:10px;color:#9fad94;letter-spacing:1px}.edge-tabs{position:absolute;right:22px;top:35%;display:flex;flex-direction:column;gap:10px;z-index:4}.edge-tabs button{padding:15px 10px;writing-mode:vertical-rl;letter-spacing:4px;font-size:11px;background:#213c32c9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.stitch-bottom{position:absolute;left:50%;bottom:23px;transform:translate(-50%);display:flex;gap:5px;align-items:center;padding:7px;background:#1c352dda;border:1px solid #7c8d6870;border-radius:10px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);white-space:nowrap;z-index:5;box-shadow:0 10px 35px #10292155}.stitch-bottom button{border-color:transparent;background:transparent;display:flex;align-items:center;gap:7px;font-size:11px}.stitch-bottom button.primary{background:#b9b07e;color:#21382d}.stitch-bottom i{display:block;width:16px;height:21px;border-top:3px solid #cebd96;border-bottom:3px solid #cebd96;border-radius:3px}.stitch-bottom small{color:#aeb79b;font-size:9px}.compact-progress{font-size:10px;padding:0 12px;color:#bfc7a6}.game-shell .zoom-controls{background:#223b30d9;border-color:#7e8e6266;bottom:90px;right:30px;z-index:5}.game-shell .zoom-controls button,.game-shell .zoom-controls span{color:#c2c6a6}.cloth-mark{color:#b7baa2;bottom:5px}.work-drawer{position:absolute;right:70px;top:15px;bottom:90px;width:285px;z-index:8;background:#233f34f5;padding:22px;border:1px solid #8c9b7977;border-radius:12px;overflow-y:auto;box-shadow:0 10px 60px #091e1699;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);display:flex;flex-direction:column;gap:14px}.work-drawer header{display:flex;justify-content:space-between;align-items:center}.work-drawer h2{font-family:serif;font-weight:400;font-size:19px;letter-spacing:3px}.work-drawer header button{border:0;font-size:22px;background:transparent;padding:0 5px}.work-drawer p{font-size:11px;color:#a9b696;line-height:1.9}.work-drawer label{display:flex;gap:10px;align-items:center;font-size:11px;flex-wrap:wrap;justify-content:space-between}.work-drawer label input[type=range]{width:100%}.work-drawer .motif-thumb{width:100%;max-height:235px;object-fit:contain;background:#e7e0c9;border-radius:5px}.progress-copy{display:flex;justify-content:space-between;font-size:11px;color:#b7c5a5}.work-drawer progress{width:100%;height:5px;accent-color:#b3bd8e}.thread-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.thread-grid button{display:flex;flex-direction:column;align-items:center;padding:7px 3px;gap:7px;background:transparent;border:1px solid transparent}.thread-grid i{width:28px;height:28px;border-top:4px solid #d1bd8c;border-bottom:4px solid #d1bd8c;border-radius:3px;box-shadow:inset 0 0 0 5px #fff1}.thread-grid span{font-size:10px}.thread-grid small{font-size:8px;color:#b7c19f}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tool-grid button{padding:13px 5px}.piece-actions{display:flex;flex-direction:column;gap:8px}.inspect-panel{position:absolute;right:80px;top:30px;width:250px;z-index:5;background:#213c31ed;border:1px solid #7b8d6877;border-radius:10px;padding:22px;display:flex;flex-direction:column;gap:15px}.inspect-panel h2{font-family:serif;font-weight:400;font-size:20px}.inspect-panel p{font-size:11px;line-height:1.9;color:#b4bf9e}.inspect-panel label{font-size:11px;display:flex;flex-direction:column;gap:9px}.inspecting .cloth-stage{right:280px}.inspecting .edge-tabs{display:none}.life-main{max-width:1600px;margin:auto;display:flex;padding:0 25px 80px;gap:30px}.life-nav{position:sticky;top:20px;display:flex;flex-direction:column;gap:3px;width:86px;align-self:flex-start;padding-top:20px;flex-shrink:0}.life-nav button{display:flex;align-items:center;gap:8px;padding:12px 8px;border-color:transparent;background:transparent;text-align:left;font-size:18px}.life-nav button span{font-size:10px;white-space:nowrap;color:#bac6a8}.life-nav .active{background:#a7ad6f22;border-color:#9eac7555}.life-content{flex:1;min-width:0;padding-top:35px}.page-title{margin:0 0 30px}.page-title>small{font-size:9px;letter-spacing:2.7px;color:#9eaf8e}.page-title h1{font-family:STSong,serif;font-size:30px;letter-spacing:4px;font-weight:400;color:#eae0c4;margin:12px 0}.page-title p{font-size:12px;color:#a6b697;line-height:1.9;max-width:800px}.page-title>button{margin-top:15px}.button-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;margin:20px 0}.work-card{background:#294539;border:1px solid #82916d44;padding:15px;border-radius:9px;display:flex;flex-direction:column;gap:10px}.work-card .art-button{padding:0;display:block;border:0}.art-thumb,.motif-thumb{width:100%;aspect-ratio:1;display:block;object-fit:contain;border-radius:4px}.work-card h3{font-family:serif;letter-spacing:2px;font-size:18px;font-weight:400}.work-card p,.work-card small{font-size:11px;color:#afbd9d;line-height:1.7}.work-card button{font-size:11px}.patterns .work-card{max-width:400px}.order-list{display:flex;flex-direction:column;gap:18px;margin:22px 0}.order-card{display:flex;gap:25px;background:#2b473a;border:1px solid #82916d44;padding:20px;border-radius:9px}.order-art{flex:0 0 125px}.order-card h3{font-family:serif;font-size:21px;font-weight:400;letter-spacing:2px;margin:10px 0}.order-card small{color:#c5b381;font-size:10px}.order-card p{font-size:11px;line-height:1.9;color:#afbf9e;max-width:750px}.order-card strong{font-weight:400;color:#c8d3a8;font-size:12px}.people-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}.person-card{display:flex;gap:20px;align-items:center;padding:20px;background:#294538;border:1px solid #82916d44;border-radius:9px}.portrait{width:95px;flex:0 0 95px;height:120px;border-radius:60px 60px 8px 8px;overflow:hidden}.person-card h3{font-family:serif;font-size:22px;letter-spacing:3px;font-weight:400;margin:8px 0}.person-card p{font-size:11px;line-height:1.8;color:#b5c1a1}.person-card small{display:block;font-size:9px;color:#b8bd94}.person-card button{font-size:11px;margin-top:10px}.shop-basics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:35px}.shop-card{padding:22px;background:#2c483b;border:1px solid #84916f55;border-radius:9px}.shop-card>span{font-size:34px;color:#cbb582}.shop-card h3{font-family:serif;font-size:17px;font-weight:400;margin:10px 0}.shop-card p{font-size:11px;color:#b5c2a1;margin:10px 0}.shop-card button{font-size:11px}.shop-colors{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:9px;margin:25px 0 40px}.shop-colors button{padding:12px 5px;display:flex;align-items:center;flex-direction:column;gap:8px;font-size:9px}.shop-colors i{width:30px;height:30px;border-radius:5px}.shop-colors small{color:#b7c29b}.furniture-shop{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin:25px 0}.furniture-shop button{display:flex;flex-direction:column;align-items:center;gap:9px;padding:20px 10px}.furniture-shop span{font-size:40px}.furniture-shop strong{font-size:11px;font-weight:400}.furniture-shop small{font-size:10px}.game-shell h2{font-family:serif;font-weight:400;font-size:22px;letter-spacing:2px}.floor-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:3px;width:100%;max-width:950px;padding:12px;background:#1a352c;border:1px solid #7a8c6655;margin:25px 0}.floor-grid button{aspect-ratio:1;padding:2px;font-size:10px;border-radius:2px;background:#a08a5e33;border-color:#9c9a7066;min-width:0}.apprentice-status{display:flex;gap:20px;margin-bottom:25px}.apprentice-status article{flex:1;padding:22px;background:#2c493a;border:1px solid #87936b44;border-radius:8px}.apprentice-status p{font-size:12px;line-height:1.9;color:#b5c2a1;margin:12px 0}.job-form{display:flex;gap:15px;align-items:end;flex-wrap:wrap;margin:25px 0}.job-form label{display:flex;flex-direction:column;gap:9px;font-size:12px}.job-card{padding:22px;background:#294637;border:1px solid #81986d55;border-radius:8px}.job-card p{font-size:12px;line-height:2;color:#b6c39f;margin:8px 0}.annual{margin:35px 0;padding:35px;background:linear-gradient(120deg,#686d46,#344f39);border:1px solid #bdba8180;border-radius:10px}.annual p{font-size:12px;line-height:2;color:#d2d7b9;margin:15px 0}.ending{font-family:serif;font-size:19px!important;color:#f3e0a5!important}.letters{display:flex;flex-direction:column;gap:18px}.letters article{padding:25px;display:flex;gap:25px;background:#d9d0b8;color:#465c45;border-radius:6px;box-shadow:0 5px 15px #132e2433}.letters article>span{font-size:25px;color:#8b8055}.letters p{font-family:serif;line-height:2;font-size:15px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.settings-grid section{padding:25px;border:1px solid #84997055;background:#2a4739;border-radius:9px;display:flex;flex-direction:column;gap:16px}.settings-grid label{display:flex;justify-content:space-between;align-items:center;font-size:12px;gap:15px}.settings-grid p{font-size:12px;line-height:2;color:#b8c5a5}.settings-grid input[type=range]{max-width:150px}.settings-grid a{font-size:12px;color:#d7c790}.town-map{border:1px solid #9baa7c66;border-radius:12px;overflow:hidden;background:#304e3c}.town-map>svg{width:100%;display:block;cursor:crosshair}.map-house{cursor:pointer;transition:filter .2s}.map-house:hover{filter:brightness(1.2)}.map-places{display:flex;flex-wrap:wrap;gap:8px;padding:15px}.map-places button{font-size:11px}.room-scene{position:relative;border:1px solid #8fa07555;border-radius:10px;overflow:hidden}.room-scene>svg{width:100%;display:block}.room-gallery{position:absolute;top:12%;left:33%;width:30%;display:flex;gap:6px}.room-gallery button{width:25%;padding:0;background:#c9b185;border:4px solid #b49966}.room-gallery .art-thumb{border-radius:0}.room-summary{display:flex;gap:30px;padding:20px 0;font-size:12px;color:#b3c09d}.notice{position:fixed;bottom:0;left:50%;transform:translate(-50%);z-index:50;background:#152d25f5;border:1px solid #7a8b6450;border-bottom:0;color:#bfc9a9;font-size:11px;line-height:1.7;padding:8px 20px;border-radius:7px 7px 0 0;max-width:85%;cursor:pointer;pointer-events:auto}.notice:empty{display:none}.save-error{position:relative;z-index:20;padding:12px;background:#925c3f;color:#ffe2b0;font-size:12px}.save-error button{margin-left:12px}.game-shell .modal-backdrop{z-index:70;background:#0a2019aa}.dialogue,.activity-dialog{width:min(560px,95vw);padding:35px;background:#e1d8bf;color:#3e5743;border-radius:11px;border:1px solid #b9af84;box-shadow:0 20px 90px #001b1599}.dialogue>small,.activity-dialog>small{font-size:10px;letter-spacing:3px;color:#8a926f}.dialogue h2,.activity-dialog h2{font-family:serif;font-size:28px;letter-spacing:4px;font-weight:400;margin:15px 0}.dialogue p,.activity-dialog p{font-family:serif;font-size:16px;line-height:2;margin:20px 0}.dialogue button,.activity-dialog button{color:#3e5743;background:#bfc3a459;border-color:#99a17f}.activity-dialog select{background:#c6c9ad;color:#344f3b;font-size:12px}.activity-dialog label{font-size:12px}.activity-dialog .warning{color:#a55e42;font-size:13px}.loading-page{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:#233c32;color:#e0dcc4;text-align:center;padding:25px}.loading-page h1{font-family:serif;font-size:48px;font-weight:400;letter-spacing:15px}.loading-page p{line-height:2;font-size:14px}.loading-page small{letter-spacing:4px;color:#b7bd98}.loading-page>div{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.loading-page .button input{max-width:200px}.editor-window{background:#254134;color:#d9dec1;width:min(1200px,96vw);max-height:94dvh;overflow:auto;padding:25px;border:1px solid #8b9d6e88;border-radius:11px;box-shadow:0 20px 100px #051e1699}.editor-window header{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.editor-window header h2{font-family:serif;font-size:24px;font-weight:400;margin-top:10px;letter-spacing:3px}.editor-window small{font-size:9px;letter-spacing:3px;color:#a7b78e}.editor-window input,.editor-window select{background:#203c30;color:#dfdec4;border:1px solid #8d9a74;padding:8px;max-width:100%;border-radius:4px}.editor-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:15px 0}.editor-tools input{width:180px}.editor-tools input[type=checkbox]{width:auto}.editor-tools label{font-size:11px;display:flex;gap:6px;align-items:center}.editor-tools button{font-size:11px}.editor-body{display:flex;gap:25px;margin-top:20px}.pixel-scroll{max-height:58dvh;flex:1;overflow:auto;background:#172e25;padding:20px;display:flex;justify-content:flex-start}.pixel-editor{flex-shrink:0;touch-action:none;cursor:crosshair}.editor-body aside{width:230px;display:flex;flex-direction:column;gap:15px;max-height:58dvh;overflow-y:auto}.editor-body h3{font-size:14px;font-weight:400}.editor-body aside p{font-size:11px;line-height:1.9;color:#b6c39e}.editor-body aside label{font-size:11px;display:flex;align-items:center;justify-content:space-between;gap:7px}.editor-colors{display:grid;grid-template-columns:repeat(8,1fr);gap:5px}.editor-colors button{width:20px;height:20px;padding:0;border-radius:3px;border:1px solid #aac18c44}.editor-window footer{padding:20px 0 0;display:flex;justify-content:flex-end}.stitch-flash{animation:stitch-finish .22s ease-out}@keyframes stitch-finish{0%{opacity:1;stroke-width:.12}to{opacity:0;stroke-width:.02}}.reduce-motion *{animation:none!important;transition:none!important}.left-handed .edge-tabs{left:22px;right:auto}.left-handed .work-drawer{left:70px;right:auto}.benchmark{position:absolute;bottom:110px;left:15px;font-size:10px;border:0!important;background:#1b352bba;padding:10px}.game-shell select option{color:#e6e0c5;background:#274131}@media(min-width:1600px){.cloth-stage{inset:35px 6% 80px}}@media(max-width:1000px){.game-header{padding:0 20px}.game-header .brand strong{font-size:23px}.game-header .brand small{font-size:8px}.header-right{gap:10px}.life-main{gap:18px;padding:0 15px 70px}.life-nav{width:63px}.life-nav button{font-size:16px}.life-nav button span{font-size:9px}.shop-basics{grid-template-columns:repeat(2,1fr)}.card-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.people-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}.inspect-panel{right:65px;width:220px;padding:18px}.inspecting .cloth-stage{right:225px}.work-caption{left:25px}}@media(max-width:700px){.game-header{height:68px;padding:0 13px;gap:6px;flex-wrap:nowrap}.game-header .brand{gap:7px}.game-header .brand strong{font-size:21px;letter-spacing:4px}.game-header .brand small{font-size:6px;letter-spacing:0;max-width:130px}.game-header .seal{width:27px;height:32px;font-size:20px}.calendar-chip{font-size:9px;padding:7px 4px;max-width:125px;line-height:1.8;letter-spacing:0}.calendar-chip span{display:block;padding:0;font-size:8px}.header-right{gap:5px}.header-right small{display:none}.money{font-size:9px;white-space:nowrap}.header-right button{font-size:18px;padding:3px 7px}.stitch-page{height:calc(100dvh - 68px);min-height:450px}.work-caption{top:22px;left:20px}.work-caption h1{font-size:20px;margin:7px 0}.work-caption small{font-size:7px}.work-caption>span{font-size:8px}.cloth-stage{inset:80px 0 150px}.edge-tabs{right:9px;top:24%;gap:8px}.edge-tabs button{padding:12px 7px;font-size:10px;letter-spacing:2px}.stitch-bottom{bottom:35px;padding:5px;gap:0;max-width:98%;border-radius:7px}.stitch-bottom button{font-size:10px;padding:8px 6px;gap:4px}.stitch-bottom small{display:none}.compact-progress{padding:0 5px;font-size:9px}.stitch-bottom i{width:13px;height:18px}.game-shell .zoom-controls{bottom:155px;right:12px;z-index:50}.work-drawer{right:42px;top:16px;bottom:92px;width:min(280px,calc(100% - 65px));padding:18px}.work-drawer h2{font-size:18px}.cloth-mark{font-size:8px;bottom:10px}.game-menu{right:12px;top:61px;max-width:calc(100vw - 24px);padding:12px;gap:6px}.game-menu button{padding:11px 16px;font-size:12px}.life-main{padding:0 12px 70px;display:block}.life-nav{width:auto;position:relative;top:0;display:flex;flex-direction:row;overflow-x:auto;gap:3px;padding:12px 0;border-bottom:1px solid #8c9f6a33;scrollbar-width:thin}.life-nav button{flex:0 0 auto;gap:6px;padding:8px 9px;font-size:15px}.life-nav button span{font-size:10px}.life-content{padding-top:25px}.page-title{margin-bottom:23px}.page-title h1{font-size:25px;letter-spacing:3px}.page-title p{font-size:11px}.page-title>small{font-size:8px}.card-grid{grid-template-columns:1fr 1fr;gap:12px}.work-card{padding:10px;gap:7px}.work-card h3{font-size:16px;letter-spacing:1px}.work-card p,.work-card small{font-size:9px}.work-card button{font-size:10px;padding:7px 8px}.card-grid .button-row{gap:5px;margin:8px 0}.order-card{gap:12px;padding:15px}.order-art{flex-basis:75px}.order-card h3{font-size:18px}.order-card p{font-size:10px}.order-card .button-row{gap:6px}.order-card button{font-size:10px;padding:7px 8px}.people-grid{grid-template-columns:1fr;gap:13px}.person-card{padding:18px;gap:18px}.portrait{width:85px;flex-basis:85px;height:100px}.shop-basics{gap:12px}.shop-card{padding:17px}.shop-card h3{font-size:15px}.shop-colors{grid-template-columns:repeat(4,1fr);gap:7px}.furniture-shop{grid-template-columns:repeat(3,1fr);gap:9px}.furniture-shop button{padding:14px 6px}.furniture-shop strong,.furniture-shop small{font-size:9px}.settings-grid{grid-template-columns:1fr;gap:18px}.settings-grid section{padding:20px}.job-form{gap:12px}.job-form label{flex:1 1 130px}.job-form button{font-size:11px}.apprentice-status{gap:12px}.apprentice-status article{padding:15px}.apprentice-status p{font-size:10px}.annual{padding:24px}.annual p{font-size:11px}.game-shell h2{font-size:20px}.letters article{padding:20px;gap:15px}.letters p{font-size:14px}.room-summary{gap:14px;flex-wrap:wrap;font-size:10px}.map-places{gap:6px;padding:10px}.map-places button{font-size:9px;padding:7px 9px}.floor-grid{padding:5px;gap:2px}.floor-grid button{font-size:7px;padding:0;overflow:hidden}.notice{font-size:9px;padding:6px 12px;max-width:96%;width:max-content}.dialogue,.activity-dialog{padding:25px}.dialogue p,.activity-dialog p{font-size:14px}.activity-dialog h2,.dialogue h2{font-size:24px}.inspecting .cloth-stage{inset:80px 0 280px}.inspect-panel{inset:auto 12px 85px;width:auto;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.inspect-panel h2,.inspect-panel p{display:none}.inspect-panel input{width:100%;font-size:11px}.inspect-panel label{font-size:10px;gap:4px}.inspect-panel button{font-size:10px;padding:7px 5px}.inspect-panel input[type=range]{width:100%}.editor-window{padding:17px}.editor-window header h2{font-size:18px;letter-spacing:1px}.editor-window header button{font-size:10px}.editor-body{flex-direction:column;gap:16px}.pixel-scroll{max-height:35dvh;padding:10px}.editor-body aside{width:100%;max-height:28dvh;display:grid;grid-template-columns:1fr 1fr;gap:10px}.editor-body aside h3,.editor-body aside .editor-colors,.editor-body aside p{grid-column:1/-1}.editor-colors{grid-template-columns:repeat(16,1fr)}.editor-colors button{width:16px;height:16px}.editor-tools{gap:6px}.editor-tools input{width:135px}.editor-tools button{font-size:9px;padding:7px}.editor-tools label{font-size:9px}.editor-window header>div>small{font-size:7px}.left-handed .edge-tabs{left:9px}.left-handed .work-drawer{left:42px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.carrier-preview{width:90px;float:right;margin:0 0 12px 12px}.carrier-preview canvas{width:90px;height:90px;border-radius:8px}.editor-toolbar input[type=number]{width:56px}.motif-thumb{width:100%;aspect-ratio:1;object-fit:contain}:root{color-scheme:light;--paper: #f1e7d0;--ink: #463e31;--muted-ink: #726750;--seal: #984c3c;--rule: #b4a480}body{background:var(--paper);color:var(--ink)}.game-shell .stitch-page{background:radial-gradient(ellipse at 50% 40%,#f8f0df,#e5d8bb 75%,#d9c8a7)}.game-shell .life-nav button span,.game-shell .zoom-controls button,.game-shell .zoom-controls span{color:var(--ink)}.game-shell .life-nav .active span{color:#fff3d7}.game-shell{color:var(--ink);background:radial-gradient(ellipse at 30% 0,#fcf7e8,#eee3c9 70%,#e2d6b9)}.game-shell :is(h1,h2,h3,.brand strong,.calendar-chip){font-family:STKaiti,KaiTi,"Noto Serif SC",serif;color:var(--ink)}.game-shell :is(p,small,label,.money,.cloth-mark,.compact-progress,.progress-copy,.room-summary,.work-caption>span,.page-title>small){color:var(--muted-ink)}.game-shell :is(button,input,textarea,select),.editor-window :is(button,input,select){color:var(--ink);border-color:var(--rule);background:#f6edd9;border-radius:3px}.game-shell button:hover{background:#e6d9b8}.game-shell button:focus-visible{outline:3px solid var(--seal);outline-offset:3px}.game-shell :is(.primary,.selected,.active){background:#97523f;color:#fff5df;border-color:#7c4233}.game-shell .primary:hover{background:#7d4435}.game-shell :is(.game-header,.game-menu,.work-drawer,.stitch-bottom,.edge-tabs button,.zoom-controls,.inspect-panel,.notice,.activity-dialog,.editor-window){background:#f4ead4f5;color:var(--ink);border-color:var(--rule);box-shadow:0 4px 15px #57452818;-webkit-backdrop-filter:none;backdrop-filter:none}.game-shell :is(.brand small,.header-right small,.calendar-chip span,.thread-grid small,.work-drawer p,.work-drawer h2,.work-card small,.order-card small,.order-card p,.person-card p,.person-card small,.shop-card p,.shop-colors small,.furniture-shop small,.job-card p,.letters p,.settings-grid p,.annual p,.editor-window small,.editor-body aside p,.activity-dialog p,.activity-dialog>small){color:var(--muted-ink)}.game-shell .seal{color:#fff1da;background:var(--seal);border:2px solid #a46b51;border-radius:2px}.game-shell :is(.work-card,.order-card,.person-card,.shop-card,.job-card,.settings-grid section,.letters article,.apprentice-status article,.annual,.ending,.editor-body aside){background:#f8f0dc;color:var(--ink);border:1px solid #b4a48088;border-radius:3px}.game-shell .life-nav{border-color:var(--rule)}.game-shell .life-nav button{color:var(--ink)}.game-shell .life-nav .active{color:#fff3d7}.game-shell .work-caption h1{color:var(--ink)}.game-shell :is(.town-map,.room-scene){border:6px solid #c9b78f;border-radius:2px;box-shadow:0 2px #88734e,0 10px 30px #5b492a22}.game-shell .map-places{background:#eee2c6;padding:12px}.game-shell .notice{border-radius:3px}.game-shell select option{background:#f6edd9;color:var(--ink)}.game-shell .benchmark{background:#f6edd9e8;color:var(--ink)}.prologue{min-height:100dvh;display:grid;grid-template-columns:56% 44%;background:#f4ead3}.prologue-art{min-height:100dvh;background-size:cover;background-position:43% center;position:relative;border-right:5px solid #9c8152}.prologue-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#302e1f88,transparent 35%);pointer-events:none}.prologue-art>p{position:absolute;z-index:1;bottom:6%;left:8%;color:#fff2d5;font:30px Georgia,serif;letter-spacing:.12em}.prologue-art p span{display:block;font:16px KaiTi,serif;margin-top:16px}.prologue-letter{align-self:center;padding:60px clamp(25px,5vw,90px)}.prologue-letter>small{display:inline-block;color:var(--seal);letter-spacing:.25em;border-bottom:1px solid var(--seal);padding-bottom:12px}.prologue-letter h1{font-size:clamp(30px,3vw,48px);line-height:1.5;font-weight:500;margin:25px 0 18px;outline:none}.prologue-speaker{font-size:13px;letter-spacing:.12em}.game-shell .prologue-copy{font:19px/2.2 STKaiti,KaiTi,serif;color:var(--ink);margin:30px 0}.prologue-note{font-size:13px;line-height:1.9}.prologue-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:34px}.prologue-actions button{padding:13px 22px;min-height:46px}.prologue-actions button:not(.primary){border:0;background:transparent;padding-left:0;font-size:13px;text-decoration:underline}.prologue-page{display:block;font-size:12px;color:#8a795b;margin-top:42px}.guide-strip{position:relative;z-index:11;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 4%;background:#f7eed9;border-bottom:1px solid var(--rule)}.guide-strip strong{display:block;margin-top:5px;font-family:KaiTi,serif;font-size:21px}.guide-strip p{margin:6px 0 0;line-height:1.7;max-width:650px;font-size:13px}.guide-strip small{color:var(--seal)}.guide-actions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0;max-width:40%}.guide-actions button{padding:10px;font-size:12px;min-height:40px}.guide-strip+.stitch-page{min-height:760px}@media(max-width:700px){.prologue{display:block}.prologue-art{min-height:32dvh;border-right:0;border-bottom:4px solid #9c8152;background-position:center 48%}.prologue-art>p{bottom:10%;margin:0;font-size:23px}.prologue-letter{padding:28px 25px 36px}.prologue-letter h1{margin:14px 0;font-size:30px}.game-shell .prologue-copy{font-size:17px;line-height:1.95;margin:19px 0}.prologue-actions{margin-top:23px;gap:10px}.prologue-page{margin-top:22px}.guide-strip{display:block;padding:12px 18px}.guide-actions{max-width:none;margin-top:9px}.guide-strip+.stitch-page{min-height:680px}}.game-shell .life-nav button.active{background:var(--seal);color:#fff3d7}.game-shell .life-nav button.active span{color:#fff3d7}.game-shell .prologue-art>p,.game-shell .prologue-art>p span{color:#fff2d5}.ink-icon{width:25px;height:25px;flex-shrink:0;vertical-align:middle}.game-shell .game-menu button{display:flex;align-items:center;gap:12px}.game-shell :is(.page-title,.work-caption) h1{letter-spacing:.1em}.game-shell .page-title{border-bottom:1px solid #b19c7544;padding-bottom:18px;margin-bottom:24px}.game-shell :is(.work-card,.order-card,.person-card,.shop-card,.job-card,.settings-grid section,.letters article,.apprentice-status article,.annual,.ending){background:linear-gradient(135deg,#fbf4e3,#f1e4c7);border:1px solid #b8a47d;outline:1px solid #b8a47d40;outline-offset:-5px;box-shadow:0 3px 10px #70562a12}.game-shell :is(.work-drawer,.inspect-panel,.activity-dialog,.dialogue,.editor-window,.job-form,.floor-grid){color:var(--ink);background:#f6ecd6;border-color:#b7a079}.game-shell :is(.work-drawer,.inspect-panel,.activity-dialog,.dialogue,.editor-window,.job-form) :is(p,small,label,h2,h3,span){color:var(--ink)}.game-shell :is(.thread-grid button,.shop-colors button,.furniture-shop button,.editor-tools button,.piece-actions button){color:var(--ink);background:#f7edd7;border:1px solid #b8a47d;box-shadow:inset 0 0 0 3px #fff8e844}.game-shell :is(.thread-grid button,.shop-colors button,.furniture-shop button):disabled{opacity:.72}.game-shell :is(.thread-grid,.shop-colors) :is(span,small),.game-shell .furniture-shop :is(strong,small){color:var(--ink)}.game-shell :is(.selected,.active,[aria-pressed=true]){border-color:#9c503c;box-shadow:inset 0 0 0 2px #9c503c55}.game-shell .furniture-shop button{padding:10px}.game-shell .furniture-shop strong{font:18px KaiTi,serif}.game-shell .person-card{display:grid;grid-template-columns:42% 1fr;padding:10px;align-items:center;gap:18px}.painted-portrait{width:100%;aspect-ratio:1;background-image:url(/art/qinghe-portraits.png);background-size:400% 200%;background-repeat:no-repeat;border-radius:2px;min-width:0}.painted-furniture{display:block;width:100%;aspect-ratio:1;background-image:url(/art/qinghe-furniture.png);background-size:500% 200%;background-repeat:no-repeat}.game-shell .furniture-shop .painted-furniture{height:auto;font-size:inherit}.story-tracker{display:flex;align-items:center;gap:14px;padding:10px 3%;background:#f0e3c7;border-bottom:1px solid #b7a078}.story-tracker strong{display:block;font:20px KaiTi,serif;margin-top:3px}.story-tracker small{font-size:10px;letter-spacing:.12em}.story-tracker button{padding:9px 12px;font-size:12px}.story-seal{display:grid;place-items:center;width:31px;height:37px;border:1px solid #a75a43;color:#a75a43;font:25px KaiTi,serif;transform:rotate(-4deg)}.story-tracker+.stitch-page{height:calc(100dvh - 145px)}.chapter-current{display:grid;grid-template-columns:minmax(150px,26%) 1fr;gap:30px;padding:26px;border:1px solid #b7a079;background:linear-gradient(120deg,#faf2df,#f0e2c3);outline:1px solid #b7a07955;outline-offset:-7px}.chapter-current .painted-portrait{align-self:start}.chapter-current h2{font-size:29px;margin:10px 0 20px}.chapter-current p{font:18px/1.9 KaiTi,serif}.chapter-current ul{padding-left:20px;line-height:1.9;font-size:13px;color:#8a4937}.chapter-current button{padding:12px 16px}.chapter-timeline{margin-top:30px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.chapter-timeline article{padding:20px;display:flex;gap:20px;border:1px solid #b7a07977;background:#f9f1dd}.chapter-number{font:30px KaiTi,serif;color:#96513e;border-right:1px solid #b7a079;padding-right:18px}.chapter-timeline h3{margin:6px 0 12px;font-size:22px}.chapter-timeline p{font-size:14px;line-height:1.9}.chapter-locked{opacity:.6}.chapter-timeline .chapter-open{border-color:#9a4b35}.conversation{padding:0;width:min(950px,94vw);max-height:90dvh;border:6px double #a58d63;background:#f5ead1;color:var(--ink);box-shadow:0 15px 80px #201d1866}.conversation[open]{display:grid;grid-template-columns:38% 62%}.conversation::backdrop{background:#25251988;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.conversation .painted-portrait{align-self:start;margin-top:45px}.conversation-paper{padding:30px;overflow:auto}.conversation h2{font:36px KaiTi,serif;margin:10px 0 20px}.game-shell .conversation-topic{color:#9b523d;font-size:13px;letter-spacing:.1em}.game-shell .spoken-line{font:21px/1.9 KaiTi,serif;color:#483c2d;min-height:100px}.conversation-questions{display:flex;flex-direction:column;gap:8px;align-items:flex-start;margin:24px 0}.conversation-questions button{background:none;border:none;border-bottom:1px solid #c2ac85;text-align:left;padding:8px 3px;color:#694c34}.conversation button{min-height:40px}.conversation .primary{background:#94513e;color:#fff2d8}.conversation-requirements{border-left:2px solid #b79561;padding-left:12px;font-size:12px;line-height:1.8}.game-shell .shop-basics .shop-card>span{font:32px KaiTi,serif;color:#997f56}.game-shell .room-gallery button{background:#f4e8cd;border:3px double #8e744d}.game-shell .editor-window{background:#f4e8ce}.game-shell .editor-window :is(h2,h3,small,p,label,select,button){color:var(--ink)}.game-shell .editor-window :is(select,input,.editor-body aside){background:#f9f0dd;border-color:#b8a17b}@media(max-width:700px){.story-tracker{gap:9px;padding:9px 12px;flex-wrap:wrap}.story-tracker strong{font-size:17px}.story-tracker button{font-size:11px;padding:8px}.story-seal{display:none}.chapter-current{grid-template-columns:90px 1fr;padding:17px;gap:15px}.chapter-current h2{font-size:24px}.chapter-current p{font-size:16px}.chapter-timeline{grid-template-columns:1fr}.conversation[open]{grid-template-columns:1fr;width:94vw}.conversation .painted-portrait{width:130px;height:130px;margin:18px auto 0}.conversation-paper{padding:18px 22px 25px}.conversation h2{font-size:28px;margin:4px 0 15px;text-align:center}.game-shell .spoken-line{font-size:19px}.conversation-questions{margin:14px 0}.game-shell .person-card{grid-template-columns:38% 1fr;gap:14px}}.skein-dock{position:absolute;left:50%;bottom:66px;transform:translate(-50%);display:flex;align-items:center;gap:2px;max-width:min(94vw,880px);padding:4px 8px;background:#f7f1e6f0;border:1px solid #7d6b5277;border-radius:12px;box-shadow:0 8px 24px #1c161047,inset 0 1px #fff9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:45;-webkit-user-select:none;user-select:none}.skein-scroll-track{display:flex;align-items:flex-end;gap:8px;overflow-x:auto;overflow-y:visible;scroll-behavior:smooth;padding:6px 4px 4px;scrollbar-width:thin;scrollbar-color:#8c7860 #f0e6d2}.skein-scroll-track::-webkit-scrollbar{height:4px}.skein-scroll-track::-webkit-scrollbar-thumb{background:#8c7860;border-radius:4px}.skein-scroll-btn{background:transparent;border:none;font-size:20px;line-height:1;color:#5c4939;cursor:pointer;padding:4px 6px;border-radius:4px;transition:all .15s ease}.skein-scroll-btn:hover{background:#5c49391f;color:#2b1f15}.skein-item{position:relative;display:flex;flex-direction:column;align-items:center;background:transparent;border:none;padding:0;cursor:pointer;outline:none;transition:transform .18s cubic-bezier(.2,.9,.3,1),filter .18s ease;flex-shrink:0}.skein-item:hover{transform:translateY(-5px)}.skein-item.active{transform:translateY(-9px) scale(1.06);filter:drop-shadow(0 6px 10px rgba(45,33,22,.32))}.skein-visual{position:relative;width:54px;height:65px;display:flex;justify-content:center;align-items:center}.skein-svg{overflow:visible}.skein-thread-tail{transition:d .25s cubic-bezier(.2,.9,.3,1)}.skein-tag{margin-top:-6px;display:flex;flex-direction:column;align-items:center;background:#faf4e8;border:1px solid #9c8870;border-radius:4px;padding:2px 5px;min-width:48px;box-shadow:0 2px 4px #23191229;font-family:inherit;transition:all .15s ease}.skein-item.active .skein-tag{background:#fffcf4;border-color:#b78d43;box-shadow:0 3px 6px #b78d434d}.skein-tag-code{display:flex;align-items:center;gap:3px;font-size:10px;font-weight:600;color:#2e261f;line-height:1.1}.skein-symbol{font-family:monospace;font-size:10px;color:#5c4939}.skein-code{font-size:10px;letter-spacing:-.2px}.skein-tag-status{font-size:9px;color:#6d5b4a;line-height:1.1;margin-top:1px}.skein-rem{color:#5c4939}.skein-name{color:#5c4939;font-size:9px}.skein-seal{display:inline-block;padding:0 3px;background:#c84935;color:#fff;border-radius:2px;font-size:8px;font-weight:700;letter-spacing:.5px;box-shadow:inset 0 0 2px #00000040}.skein-item.complete{opacity:.78}.skein-item.complete:hover{opacity:1}.skein-more-card{display:flex;flex-direction:column;align-items:center;justify-content:center;width:58px;height:82px;background:#f3ebdcbf;border:1px dashed #9c8870;border-radius:6px;padding:4px;cursor:pointer;flex-shrink:0;color:#4a3c2f;transition:all .15s ease}.skein-more-card:hover{background:#fff9ed;border-color:#5c4939;transform:translateY(-3px)}.skein-more-icon{font-size:18px;line-height:1;margin-bottom:2px}.skein-more-text{font-size:10px;font-weight:600;white-space:nowrap}.skein-more-sub{font-size:8px;color:#8c7860;margin-top:2px}.board.has-needle-cursor,.board.has-needle-cursor *{cursor:none!important}.needle-cursor-host{pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}@media(max-width:640px){.skein-dock{bottom:74px;padding:3px 6px;max-width:96vw}.skein-scroll-track{gap:6px}.skein-visual,.skein-svg{width:44px;height:52px}.skein-tag{min-width:40px;padding:1px 3px}.skein-tag-code{font-size:9px}.skein-tag-status{font-size:8px}}
