:root{--ink:#1b1b1b;--line:#d9d9d9;--paper:#fff;--soft:#f8f8f6;--serif:'Noto Serif SC',Georgia,serif;--mono:'DM Mono',ui-monospace,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f3f1;color:var(--ink);font-family:var(--serif);letter-spacing:0}.site-shell{max-width:1280px;margin:36px auto;background:var(--paper);border:1px solid #cececc;box-shadow:0 22px 48px rgba(0,0,0,.14);min-height:calc(100vh - 72px)}.topbar{height:62px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;gap:38px}.brand,.footer-brand{font-family:var(--mono);font-weight:500;letter-spacing:2px;font-size:24px;color:var(--ink);text-decoration:none}.main-nav{display:flex;gap:28px;height:100%;align-items:center}.nav-link,.profile-menu,.icon-button,.small-link,.back-link{border:0;background:none;font:inherit;color:var(--ink);cursor:pointer}.nav-link{font-size:14px;height:100%;position:relative}.nav-link.active:after{content:'';position:absolute;height:2px;background:var(--ink);left:0;right:0;bottom:-1px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:20px;font-size:13px}.text-link{color:var(--ink);text-decoration:none}.icon-button{width:28px;height:28px;padding:4px}.icon-button svg,.upload-box svg,.button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.profile-menu{font-size:13px}.section-bar{height:36px;border-bottom:1px solid var(--line);padding:0 14px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#555}.section-bar span:last-child{color:#999}.hero{min-height:430px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:54px 24px}.pixel-word{font-family:var(--mono);font-size:clamp(54px,9vw,126px);letter-spacing:10px;font-weight:500;line-height:1;display:inline-block;background:repeating-linear-gradient(90deg,#222 0 11px,#777 11px 22px,#bbb 22px 33px,#eee 33px 44px);-webkit-background-clip:text;background-clip:text;color:transparent;image-rendering:pixelated}.hero h1{font-size:clamp(27px,3vw,43px);font-weight:600;margin:28px 0 12px}.hero p{max-width:520px;color:#888;line-height:1.8;margin:0;font-size:14px}.hero-actions{display:flex;gap:12px;margin-top:28px}.button{border:1px solid var(--ink);padding:11px 17px;min-height:42px;cursor:pointer;font:inherit;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s ease}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#444}.button-light{background:#fff;color:var(--ink)}.button-light:hover{background:#f2f2f2}.content-section{padding:46px 38px 64px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.eyebrow{font:11px var(--mono);letter-spacing:1.5px;color:#999;text-transform:uppercase}.section-heading h2,.panel-title h2{font-size:26px;margin:8px 0 0;font-weight:600}.small-link{font-size:13px;border-bottom:1px solid var(--ink);padding:0 0 4px}.pattern-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.pattern-card{border:1px solid var(--line);background:#fff;padding:0;text-align:left;cursor:pointer;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.pattern-card:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,.08)}.pattern-card img{width:100%;aspect-ratio:1.12;object-fit:cover;image-rendering:auto;filter:grayscale(18%)}.card-meta{padding:12px 14px 14px;display:flex;flex-direction:column;gap:5px}.card-meta strong{font-size:15px;font-weight:600}.card-meta small{font:11px var(--mono);color:#888}.pattern-card-empty{min-height:100%;align-items:center;justify-content:center;background:var(--soft);border-style:dashed}.plus-mark{font-size:42px;font-weight:300;color:#999}.editor-view{display:none}.editor-view.active-view{display:block}.view.active-view{display:block}.view:not(.active-view){display:none}.back-link{font-size:12px;color:#777}.editor-layout{display:grid;grid-template-columns:300px 1fr;min-height:680px}.editor-sidebar{border-right:1px solid var(--line);padding:34px 28px;display:flex;flex-direction:column;gap:18px}.panel-title h2{font-size:24px}.muted{font-size:13px;line-height:1.8;color:#888;margin:0}.upload-box{border:1px dashed #aaa;min-height:142px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;cursor:pointer;background:#fbfbfa}.upload-box:hover{border-color:var(--ink);background:#f5f5f2}.upload-box svg{width:22px;height:22px;margin-bottom:4px}.upload-box strong{font-size:15px}.upload-box span{font-size:11px;color:#999}.control-group{display:flex;flex-direction:column;gap:8px}.control-group label{font:11px var(--mono);color:#777}.control-group select{height:38px;border:1px solid var(--line);background:#fff;padding:0 10px;font:13px var(--serif);color:var(--ink)}.stats-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;display:flex;justify-content:space-between;font-size:11px;color:#888}.stats-row b{display:block;color:var(--ink);font:17px var(--mono);margin-top:5px}.button.full{width:100%;margin-top:auto}.canvas-panel{display:flex;flex-direction:column;padding:24px 28px}.canvas-toolbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px}.segmented{display:flex;border:1px solid var(--line)}.segment{border:0;background:#fff;padding:8px 15px;font:12px var(--serif);cursor:pointer}.segment+.segment{border-left:1px solid var(--line)}.segment.active{background:var(--ink);color:#fff}.toggle{display:flex;align-items:center;gap:7px;font-size:12px;color:#777;cursor:pointer}.toggle input{display:none}.toggle span{width:30px;height:16px;border:1px solid #aaa;position:relative}.toggle span:after{content:'';width:10px;height:10px;background:#777;position:absolute;left:2px;top:2px;transition:.2s}.toggle input:checked+span{background:var(--ink);border-color:var(--ink)}.toggle input:checked+span:after{background:#fff;left:16px}.canvas-wrap{flex:1;min-height:540px;background:#f4f4f2;border:1px solid var(--line);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.canvas-wrap canvas{width:min(100%,640px);height:auto;max-height:100%;object-fit:contain;image-rendering:pixelated}.empty-state{position:absolute;display:flex;flex-direction:column;align-items:center;gap:7px;color:#999;pointer-events:none}.empty-state strong{font-size:15px;color:#555}.empty-state span:last-child{font-size:12px}.empty-grid{font-size:34px;color:#bbb}.canvas-footer{padding-top:13px;display:flex;justify-content:space-between;font:11px var(--mono);color:#888}.footer{min-height:58px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;color:#999;font-size:11px}.footer>div{display:flex;align-items:center;gap:12px}.footer-brand{font-size:16px}.footer nav{display:flex;gap:22px}.footer a{color:#777;text-decoration:none}@media (max-width:760px){.site-shell{margin:0;border-left:0;border-right:0;min-height:100vh}.topbar{padding:0 16px;gap:20px}.top-actions{gap:11px}.text-link{display:none}.main-nav{gap:16px}.hero{min-height:390px;padding:40px 18px}.pixel-word{font-size:52px;letter-spacing:4px}.hero h1{font-size:27px}.content-section{padding:34px 16px 46px}.pattern-grid{grid-template-columns:repeat(2,1fr);gap:12px}.section-heading h2{font-size:22px}.editor-layout{grid-template-columns:1fr}.editor-sidebar{border-right:0;border-bottom:1px solid var(--line);padding:26px 18px}.button.full{margin-top:4px}.canvas-panel{padding:18px 14px}.canvas-wrap{min-height:400px}.canvas-footer{font-size:10px}.footer{padding:14px 16px;flex-wrap:wrap;gap:12px}.footer nav{order:3;width:100%;justify-content:center}.footer>span{margin-left:auto}}
@media(prefers-color-scheme:dark){body:not(.light){--ink:#f6f6f0;--line:#454541;--paper:#1c1c1a;--soft:#242421;background:#111}body:not(.light) .site-shell{box-shadow:0 22px 48px rgba(0,0,0,.45)}body:not(.light) .button-light,body:not(.light) .segment,body:not(.light) .control-group select,body:not(.light) .pattern-card{background:var(--paper);color:var(--ink)}body:not(.light) .canvas-wrap,body:not(.light) .upload-box{background:#252522}}
body.dark{--ink:#f6f6f0;--line:#454541;--paper:#1c1c1a;--soft:#242421;background:#111}body.dark .site-shell{box-shadow:0 22px 48px rgba(0,0,0,.45)}body.dark .button-light,body.dark .segment,body.dark .control-group select,body.dark .pattern-card{background:var(--paper);color:var(--ink)}body.dark .canvas-wrap,body.dark .upload-box{background:#252522}
.ai-view{display:none}.ai-view.active-view{display:block}.ai-layout{display:grid;grid-template-columns:1.1fr .9fr;min-height:680px}.ai-copy{padding:52px 48px;border-right:1px solid var(--line)}.ai-copy h2{font-size:38px;font-weight:600;line-height:1.35;margin:12px 0 16px;max-width:440px}.ai-copy>p{color:#888;line-height:1.9;font-size:14px;max-width:460px;margin:0 0 30px}.style-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px;max-width:520px}.style-card{border:1px solid var(--line);background:var(--paper);padding:0;cursor:pointer;text-align:left;position:relative}.style-card.selected{border:2px solid var(--ink)}.style-card img{display:block;width:100%;aspect-ratio:1;object-fit:cover;filter:grayscale(20%)}.style-card span{display:block;padding:9px 10px;font-size:13px}.ai-preview{padding:52px 42px;display:flex;flex-direction:column;align-items:center}.preview-label{width:min(100%,390px);display:flex;justify-content:space-between;font:11px var(--mono);color:#888;margin-bottom:12px}.preview-label span:first-child{color:var(--ink)}.preview-frame{width:min(100%,390px);aspect-ratio:1;border:1px solid var(--line);background:#f4f4f2;display:flex;align-items:center;justify-content:center;overflow:hidden}.preview-frame img{width:100%;height:100%;object-fit:cover;image-rendering:auto}.ai-preview .full{width:min(100%,390px);margin-top:16px}.text-action{border:0;background:none;font:12px var(--serif);color:#666;border-bottom:1px solid #aaa;padding:0 0 4px;margin-top:18px;cursor:pointer}@media(max-width:760px){.main-nav{gap:12px}.nav-link{font-size:12px}.ai-layout{grid-template-columns:1fr}.ai-copy{padding:34px 18px;border-right:0;border-bottom:1px solid var(--line)}.ai-copy h2{font-size:28px}.style-grid{grid-template-columns:repeat(2,1fr)}.ai-preview{padding:30px 18px 44px}}
.pattern-tools{display:flex;justify-content:flex-end;margin:-8px 0 16px}.view-switch{display:flex;border:1px solid var(--line)}.view-switch-button{width:34px;height:30px;border:0;border-left:1px solid var(--line);background:var(--paper);color:#888;cursor:pointer;font-size:18px;line-height:1}.view-switch-button:first-child{border-left:0}.view-switch-button.active{background:var(--ink);color:var(--paper)}.pattern-grid.gallery-view{background:#171717;padding:24px;grid-template-columns:repeat(4,1fr);gap:28px 22px}.gallery-view .pattern-card{border:0;background:transparent;color:#fff;box-shadow:none}.gallery-view .pattern-card img{aspect-ratio:1;object-fit:contain;background:#fff;filter:none}.gallery-view .card-meta{padding:9px 2px 0;text-align:center;gap:4px}.gallery-view .card-meta strong{font-size:13px;font-weight:400;line-height:1.45}.gallery-view .card-meta small{color:#aaa}.gallery-view .pattern-card-empty{background:#262626;border:1px dashed #555}@media(max-width:760px){.pattern-grid.gallery-view{padding:14px 10px;grid-template-columns:repeat(2,1fr);gap:20px 12px}}
.gallery-view .pattern-card{background:var(--paper);color:var(--ink)}
.mobile-nav{display:none}
.site-shell{max-width:none;margin:0;min-height:100vh;border:0;box-shadow:none;padding-left:218px}.side-rail{position:fixed;z-index:10;left:0;top:0;bottom:0;width:218px;background:var(--paper);border-right:1px solid var(--line);padding:28px 20px;display:flex;flex-direction:column}.rail-logo{font:700 22px var(--mono);color:var(--ink);text-decoration:none;letter-spacing:2px;margin:0 12px 58px}.rail-main,.rail-foot{display:flex;flex-direction:column;gap:8px}.rail-foot{margin-top:auto}.rail-item{display:flex;align-items:center;gap:16px;border:0;background:none;color:var(--ink);padding:14px 16px;border-radius:10px;font:600 16px var(--serif);text-align:left;cursor:pointer}.rail-item:hover,.rail-item.active{background:var(--soft)}.feed-search{max-width:860px;margin:24px auto 34px;height:112px;border:1px solid var(--line);border-radius:26px;display:flex;align-items:center;gap:20px;padding:0 28px;color:#888}.feed-search strong{font-size:18px;font-weight:500}.feed-search span{font-size:14px}.feed-search button{border:0;background:none;color:var(--ink);font-size:28px;cursor:pointer}.feed-search button:last-child{margin-left:auto}.feed-search small{background:#4aa99b;color:#fff;padding:2px 4px;border-radius:4px;font:10px var(--mono)}.feed-tabs{display:flex;justify-content:center;gap:34px;margin:0 auto 28px;overflow:auto;white-space:nowrap}.feed-tabs button{border:0;background:none;color:#777;font:16px var(--serif);padding:8px 0;cursor:pointer}.feed-tabs button.active{color:var(--ink);font-weight:700;border-bottom:3px solid #ef476f}.feed-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}.feed-grid .pattern-card{border:0;border-radius:16px;overflow:hidden;box-shadow:0 3px 14px rgba(0,0,0,.07)}.feed-grid .pattern-card img{aspect-ratio:.8;object-fit:cover}.feed-grid .pattern-card-empty{display:none}
@media(max-width:720px){.mobile-nav{position:fixed;display:flex;z-index:20;left:0;right:0;bottom:0;height:58px;background:var(--paper);border-top:1px solid var(--line);justify-content:space-around;align-items:center}.mobile-nav button{border:0;background:none;color:var(--ink);font:12px var(--serif);padding:14px 12px}.footer{padding-bottom:78px}}
@media(max-width:900px) and (min-width:721px){.site-shell{padding-left:178px}.side-rail{width:178px}.feed-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feed-tabs{gap:18px}}
@media(max-width:720px){.site-shell{padding-left:0}.side-rail{display:none}.feed-search{margin:16px 14px 22px;height:74px;border-radius:18px;padding:0 18px}.feed-search strong{font-size:15px}.feed-tabs{justify-content:flex-start;gap:24px;padding:0 16px;margin-bottom:18px}.feed-tabs button{font-size:14px}.feed-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.feed-grid .pattern-card{border-radius:10px}.home-feed .section-bar{display:none}}
.account-panel{max-width:980px;margin:0 auto;padding:36px 24px 70px}.account-panel h2{font-size:44px;margin:10px 0 8px}.account-stats{display:flex;gap:1px;margin:34px 0;border:1px solid var(--line);background:var(--line)}.account-stats div{flex:1;padding:24px;background:var(--paper);display:flex;flex-direction:column;gap:8px}.account-stats strong{font:600 28px var(--mono)}.account-stats span{color:#888;font-size:13px}.account-actions{display:flex;gap:12px}.recharge-web-hero{max-width:980px;margin:0 auto 34px;padding:44px 46px;display:flex;justify-content:space-between;align-items:center;border:1px solid #eedc94;background:#fff8dc;overflow:hidden}.recharge-web-hero h2{font-size:38px;margin:12px 0}.recharge-web-hero p{color:#647089}.recharge-web-hero strong{display:block;margin-top:24px;font:600 34px var(--mono)}.recharge-web-hero img{width:260px;height:220px;object-fit:contain;align-self:flex-end;margin-bottom:-44px}.web-products{max-width:980px;margin:0 auto 80px;display:grid;gap:16px;padding:0 24px}.web-product{position:relative;display:flex;align-items:center;gap:22px;padding:22px 26px;border:1px solid var(--line);background:var(--paper);box-shadow:0 10px 26px rgba(18,26,40,.06)}.web-product.recommended{border-color:#e7b52b;background:#fffdf3}.web-product img{width:108px;height:108px;object-fit:contain}.web-product h3{margin:0 0 9px;font-size:20px}.web-product p{margin:0 0 12px;color:#888;font-size:13px}.web-product strong{font:600 26px var(--mono);color:#d49300}.web-product .buy-product{margin-left:auto;white-space:nowrap}.web-badge{position:absolute;left:138px;top:-12px;padding:4px 12px;background:#e5a900;color:#fff;font-size:12px;border-radius:999px}
@media(max-width:720px){.main-nav{display:none}.topbar{height:56px;padding:0 14px}.site-shell{margin:0;box-shadow:none}.hero{min-height:340px;padding:32px 16px}.hero h1{font-size:25px}.content-section{padding:30px 14px}.pattern-grid{grid-template-columns:repeat(2,1fr);gap:10px}.editor-layout,.ai-layout{grid-template-columns:1fr}.editor-sidebar,.ai-copy{padding:24px 16px;border-right:0;border-bottom:1px solid var(--line)}.canvas-panel,.ai-preview{padding:16px 12px}.canvas-wrap{min-height:330px}.section-heading{align-items:flex-start;gap:12px;flex-direction:column}.account-panel{padding:28px 16px 60px}.account-panel h2{font-size:34px}.account-stats{margin:24px 0}.account-stats div{padding:16px 10px}.account-stats strong{font-size:20px}.account-stats span{font-size:11px}.account-actions{flex-direction:column}.recharge-web-hero{margin:0;padding:28px 18px 0;min-height:310px;position:relative}.recharge-web-hero h2{font-size:28px;max-width:230px}.recharge-web-hero img{width:190px;height:170px;position:absolute;right:-22px;bottom:0}.web-products{padding:0 14px}.web-product{gap:12px;padding:16px 14px}.web-product img{width:70px;height:70px}.web-product h3{font-size:16px}.web-product p{font-size:11px}.web-product strong{font-size:22px}.web-product .buy-product{padding:9px 10px;font-size:12px}.footer{padding:18px 14px;flex-wrap:wrap}.footer nav{order:3;width:100%;justify-content:center}}
 .convert-modes{display:grid;gap:8px}.convert-mode{display:grid;gap:4px;text-align:left;padding:12px;border:1px solid var(--line,#ddd);background:var(--surface,#fff);color:inherit;border-radius:8px;cursor:pointer}.convert-mode.selected{border-color:#111;box-shadow:0 0 0 1px #111}.convert-mode small{color:var(--muted,#777);line-height:1.4}.switch-row{display:flex;gap:8px;align-items:center;margin:14px 0;font-size:13px}
/* Desktop navigation is provided by the side rail; keep the compact mobile bar. */
@media (min-width:721px){.topbar{display:none}.site-shell{margin-top:0;min-height:100vh}}
 #postDialog{width:min(900px,94%);max-height:90vh;background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:20px}#postDialog::backdrop{background:rgba(0,0,0,.5)}#postDialog img{display:block;width:100%;height:auto;margin:16px 0}#postDialog h2{font-size:20px;overflow-wrap:anywhere}#postDialog select{margin:12px}.card-meta strong{overflow-wrap:anywhere}.ai-copy>label{display:block;margin-top:20px}#aiPrompt{width:100%;margin-top:8px;padding:10px;background:var(--paper);color:var(--ink);border:1px solid var(--line);font:inherit}.pattern-card img{filter:none}.style-card img{filter:none}
