:root{--paper:#f7f7fa;--panel:#fff;--ink:#252338;--muted:#858297;--line:#e9e7f0;--purple:#7955db;--purple-dark:#6542c5;--lavender:#f0eafa;--radius:20px;--shadow:0 8px 30px #34245807;font-family:'DM Sans',sans-serif;font-size:15px;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bba3ef;outline-offset:3px}img{max-width:100%;display:block}button svg{flex-shrink:0}h1,h2,h3,h4{font-family:Manrope,sans-serif;margin:0;letter-spacing:-.04em}h1{font-size:35px;line-height:1.2;font-weight:800}h2{font-size:23px;font-weight:750}h3{font-size:17px;font-weight:750}p{line-height:1.65}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow{color:var(--purple);font-weight:700;letter-spacing:.12em;font-size:11px;text-transform:uppercase}.skip{position:fixed;top:-100px;left:12px;z-index:50;padding:14px;background:#fff}.skip:focus{top:10px}
#sidebar{position:fixed;inset:0 auto 0 0;width:228px;background:var(--panel);border-right:1px solid var(--line);padding:30px 18px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:9px;font:800 23px Manrope,sans-serif;letter-spacing:-1px;margin:0 12px 40px}.brand-mark{height:34px;width:34px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(140deg,#e6c3f2,#8158d9);color:white;box-shadow:0 3px 10px #7855c829}.nav-label{font-size:10px;letter-spacing:.15em;color:#aaa5b7;font-weight:700;margin:0 15px 12px}.nav-link{display:flex;align-items:center;gap:12px;padding:13px 15px;border-radius:11px;margin:4px 0;color:#797589;font-size:13px;font-weight:550;transition:background .16s}.nav-link:hover{background:#f7f4fc}.nav-link.active{background:var(--lavender);color:var(--purple);font-weight:700}.nav-link .new{font-size:9px;letter-spacing:.04em;padding:3px 5px;background:#f1eafa;border-radius:5px;margin-left:auto;color:var(--purple)}.sidebar-foot{margin-top:auto}.sidebar-note{padding:18px;border:1px solid #eee8f5;border-radius:14px;background:linear-gradient(145deg,#fbf8ff,#fff);font-size:12px;line-height:1.7;margin:25px 0 12px}.sidebar-note strong{display:block;margin-bottom:7px;color:var(--purple)}.sidebar-note a{font-weight:700;display:flex;gap:5px;align-items:center;margin-top:12px}.copyright{font-size:10px;color:#b0aabd;padding:12px 15px}.app{margin-left:228px}#topbar{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;gap:16px;background:#ffffffa6}.breadcrumb{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}.breadcrumb strong{color:var(--ink);font-weight:500}.top-actions{display:flex;align-items:center;gap:12px}.credit-chip{display:flex;align-items:center;gap:7px;background:var(--lavender);border:1px solid #e8dcf9;border-radius:24px;padding:8px 12px;color:var(--purple);font-size:11px;font-weight:700}.avatar{border:1px solid var(--line);background:#e9e3f4;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;color:var(--purple);font-weight:700}.icon-btn{display:inline-grid;place-items:center;padding:8px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--muted)}.icon-btn:hover{color:var(--purple);border-color:#c7b0f3}#workspace{padding:35px 42px 65px;max-width:1600px;margin:auto;min-height:calc(100vh - 86px)}#workspace:focus{outline:none}.loading-page{padding:120px 30px;text-align:center;color:var(--muted)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;border-radius:10px;border:1px solid transparent;padding:12px 18px;font-weight:650;font-size:12px;line-height:1.4;transition:background .15s,transform .15s}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn.primary{background:var(--purple);color:white;box-shadow:0 4px 10px #7955db20}.btn.primary:hover{background:var(--purple-dark)}.btn.secondary{background:white;border-color:var(--line);color:var(--ink)}.btn.ghost{color:var(--muted);background:transparent}.btn.danger{color:#b74f61;background:#fff1f4}.btn.wide{width:100%}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.page-heading p{margin:9px 0 0;color:var(--muted);font-size:13px}.welcome-line{font-size:13px;color:var(--muted);margin-bottom:10px}.welcome-line span{color:#ae9874}.hero{position:relative;display:grid;grid-template-columns:1fr 1.08fr;background:#ede9f3;border:1px solid #e5deed;border-radius:20px;overflow:hidden;min-height:300px;margin-bottom:35px}.hero-copy{padding:34px 35px;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;background:linear-gradient(110deg,#f1ecf7,#ede7f100)}.hero h2{font-size:35px;line-height:1.22;max-width:350px}.hero h2 em{font-style:normal;color:var(--purple)}.hero p{max-width:320px;font-size:13px;color:#807689;margin:14px 0 22px}.hero-photo{position:relative;min-height:300px}.hero-photo>img{width:100%;height:100%;object-fit:cover}.hero-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#ede9f3,transparent 22%)}.hero-photo .image-label{position:absolute;right:18px;top:18px}.hero-inset{position:absolute;bottom:20px;left:16px;width:128px;border:5px solid #fff;border-radius:12px;box-shadow:0 5px 20px #27213630;overflow:hidden}.hero-inset img{aspect-ratio:1.3;object-fit:cover}.hero-inset span{position:absolute;bottom:5px;left:5px;font-size:9px;background:#fff;padding:4px 7px;border-radius:5px}.image-label{font-size:10px;background:#ffffffde;color:#52465b;border-radius:20px;padding:6px 10px;display:flex;align-items:center;gap:5px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:30px 0 18px;gap:18px}.section-heading p{color:var(--muted);font-size:12px;margin:5px 0 0}.segmented{display:flex;gap:3px;padding:4px;background:#eeecf3;border:1px solid #e5e2ed;border-radius:10px}.segmented button{background:transparent;border:0;color:#91889f;font-size:11px;font-weight:650;padding:8px 18px;border-radius:7px}.segmented button.active{background:white;box-shadow:0 2px 5px #3424430a;color:var(--purple)}.tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.tool-card{padding:0;border:1px solid var(--line);background:white;border-radius:14px;text-align:left;overflow:hidden;transition:transform .2s,box-shadow .2s;position:relative;color:var(--ink)}.tool-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #39254512}.tool-photo{aspect-ratio:1.6;position:relative;overflow:hidden;background:#eae7ed}.tool-photo>img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.tool-card:hover .tool-photo>img{transform:scale(1.04)}.tool-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 70%,#25183718)}.tool-copy{padding:14px 14px 16px;display:flex;align-items:center;gap:10px}.tool-copy h3{font-size:12px;letter-spacing:-.025em;margin-bottom:4px}.tool-copy p{font-size:10px;margin:0;color:var(--muted);line-height:1.5}.tool-copy>svg{color:#b9b0ca;margin-left:auto;flex-shrink:0}.tool-badge{position:absolute;top:10px;left:10px;font-size:8px;font-weight:700;background:#ffffffea;padding:5px 7px;border-radius:5px;color:var(--purple)}.mini-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;border:1px solid var(--line);border-radius:14px;padding:22px 25px;background:#ffffffa8;margin-top:30px}.guide-step{display:flex;gap:12px}.guide-step>span{width:30px;height:30px;flex-shrink:0;border:1px solid var(--line);border-radius:9px;display:grid;place-items:center;color:var(--purple);font-size:12px;background:white}.guide-step b{font-size:12px}.guide-step p{font-size:11px;margin:5px 0 0;color:var(--muted)}
/* Design editor */
.editor-heading{margin-bottom:24px}.editor-heading h1{font-size:26px}.editor-heading .back-link{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--muted);margin-bottom:14px}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:25px;align-items:start}.canvas-panel,.control-panel,.panel{background:white;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.canvas-top{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);font-size:12px}.canvas-top span{color:var(--muted);font-size:11px}.upload-zone{min-height:430px;margin:20px;border:1.5px dashed #dcd4e8;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;text-align:center;background:linear-gradient(145deg,#fcfbfe,#f9f8fc);transition:background .2s}.upload-zone.dragging{background:var(--lavender);border-color:var(--purple)}.upload-icon{width:60px;height:60px;display:grid;place-items:center;background:#eee7fb;color:var(--purple);border-radius:18px;margin-bottom:20px}.upload-zone h2{font-size:19px}.upload-zone p{font-size:12px;color:var(--muted);margin:9px 0 20px;max-width:260px}.upload-zone .file-hint{font-size:10px;margin:13px 0 0;color:#aaa2b5}.canvas-photo{position:relative;margin:20px;border-radius:12px;overflow:hidden;min-height:330px;display:grid;place-items:center;background:#f1eff5}.canvas-photo>img{width:100%;max-height:560px;object-fit:contain}.canvas-photo .replace-photo{position:absolute;bottom:15px;right:15px;background:#fff}.canvas-foot{border-top:1px solid var(--line);padding:14px 20px;font-size:11px;color:var(--muted);display:flex;align-items:center;gap:7px}.sample-row{display:flex;gap:10px;margin-top:17px;align-items:center}.sample-row span{font-size:10px;color:var(--muted);margin-right:5px}.sample-row button{padding:0;border:2px solid #fff;border-radius:7px;overflow:hidden;width:62px;height:47px}.sample-row img{width:100%;height:100%;object-fit:cover}.control-panel{padding:20px}.control-panel h3{margin-bottom:20px;font-size:14px}.field{display:block;margin-bottom:22px}.field>span,.field-label{display:block;font-size:11px;font-weight:700;margin:0 0 9px}.field select,.field input,.field textarea,.text-input{width:100%;border:1px solid var(--line);background:#fcfbfe;border-radius:8px;padding:11px 12px;color:var(--ink);font-size:12px}.field textarea{resize:vertical;min-height:82px;line-height:1.6}.style-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;max-height:296px;overflow:auto;padding:2px;margin:0 -2px 14px}.style-option{padding:0;border:2px solid transparent;background:transparent;border-radius:9px;text-align:center;overflow:hidden;color:#82798e;font-size:9px}.style-option img{aspect-ratio:1;object-fit:cover;border-radius:6px;width:100%}.style-option span{display:block;padding:7px 2px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.style-option.active{border-color:var(--purple);background:var(--lavender);color:var(--purple)}.style-option:hover{border-color:#ccb9ed}.style-search{width:100%;border:1px solid var(--line);border-radius:7px;padding:8px 10px;font-size:11px;margin-bottom:10px;background:#fcfbfe}.count-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:15px}.count-choice{padding:11px;border:1px solid var(--line);background:#fff;border-radius:8px;text-align:left;font-size:12px;color:var(--ink)}.count-choice span{display:block;font-size:10px;color:var(--muted);margin-top:4px}.count-choice.active{border-color:var(--purple);background:#f9f5ff;color:var(--purple)}.control-divider{border:0;border-top:1px solid var(--line);margin:20px 0}.generate-note{font-size:10px;line-height:1.6;text-align:center;color:var(--muted);margin:10px 0 0}.tip{display:flex;gap:10px;padding:18px;background:#f0eef7;border-radius:12px;color:#92859f;font-size:11px;line-height:1.65;margin-top:17px}.tip svg{flex-shrink:0;color:var(--purple);margin-top:1px}.tip strong{display:block;font-size:12px;color:#6e587e;margin-bottom:4px}.progress-card{min-height:430px;padding:40px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.progress-card h2{font-size:22px;margin:22px 0 0}.progress-card p{font-size:12px;color:var(--muted);max-width:300px}.spinner{width:52px;height:52px;border:3px solid #ece3f7;border-top-color:var(--purple);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
/* Results and projects */
.result-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px 18px;border-top:1px solid var(--line);flex-wrap:wrap}.result-actions{display:flex;gap:8px}.compare{position:relative;overflow:hidden;border-radius:12px;background:#eee;margin:20px;touch-action:pan-y}.compare .after-img{width:100%;max-height:580px;object-fit:contain}.compare .before-wrap{position:absolute;inset:0;clip-path:inset(0 50% 0 0)}.compare .before-wrap img{height:100%;width:100%;object-fit:contain}.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;z-index:3}.compare-line{position:absolute;left:50%;top:0;bottom:0;width:2px;background:white;pointer-events:none;filter:drop-shadow(0 0 3px #0003)}.compare-line:after{content:'↔';display:grid;place-items:center;position:absolute;left:-17px;top:48%;width:36px;height:36px;border-radius:50%;background:white;color:#7e638d;font-size:19px}.compare .before-label,.compare .after-label{position:absolute;top:12px;padding:5px 9px;border-radius:6px;background:#ffffffdf;font-size:10px}.compare .before-label{left:12px}.compare .after-label{right:12px}.result-thumbs{display:flex;gap:8px;padding:0 20px 18px}.result-thumbs button{width:72px;height:53px;border:2px solid transparent;padding:0;border-radius:7px;overflow:hidden;background:#eee}.result-thumbs button.active{border-color:var(--purple)}.result-thumbs img{width:100%;height:100%;object-fit:cover}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;text-align:left;padding:0;color:var(--ink)}.project-card>img,.project-card .project-placeholder{width:100%;aspect-ratio:1.5;object-fit:cover;background:#e8e1f1}.project-info{padding:17px;display:flex;justify-content:space-between;align-items:center}.project-info h3{font-size:14px}.project-info p{font-size:10px;margin:5px 0 0;color:var(--muted)}.project-actions{display:flex;gap:8px}.project-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.creation{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.creation>img{width:100%;aspect-ratio:1.4;object-fit:cover}.creation .creation-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:14px}.creation h3{font-size:13px}.creation p{font-size:10px;color:var(--muted);margin:5px 0}.empty{padding:80px 20px;text-align:center;max-width:500px;margin:0 auto}.empty-icon{display:inline-grid;place-items:center;width:70px;height:70px;border:1px solid #e9e0f4;border-radius:22px;background:#f0eaf8;color:var(--purple);margin-bottom:22px}.empty h2{font-size:24px}.empty p{font-size:13px;color:var(--muted);margin:13px 0 22px}.account-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:25px}.account-card{padding:28px;border:1px solid var(--line);border-radius:16px;background:white}.account-card h2{font-size:19px;margin-bottom:20px}.account-card p{font-size:13px;color:var(--muted)}.usage-number{font:800 42px Manrope,sans-serif;letter-spacing:-2px;color:var(--purple)}.usage-number small{font-size:15px;letter-spacing:0;color:#a499b3;font-weight:500}.usage-track{background:#eee8f5;height:6px;border-radius:5px;margin:20px 0 13px;overflow:hidden}.usage-track i{display:block;height:100%;background:var(--purple);border-radius:5px}.account-row{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.account-row span{color:var(--muted)}.notice{display:flex;gap:12px;padding:18px 22px;background:#fff8e9;border:1px solid #f0e2c8;border-radius:12px;margin-bottom:25px;color:#8e7444;font-size:12px;line-height:1.7}.notice .btn{margin-left:auto;white-space:nowrap;align-self:center}.error-text{color:#b85565;font-size:12px;line-height:1.6}.chat-layout{max-width:850px;margin:auto}.chat-messages{min-height:350px;display:flex;flex-direction:column;gap:20px;padding:20px 0}.message{max-width:85%;padding:17px 20px;border-radius:16px;background:#fff;border:1px solid var(--line);font-size:13px;line-height:1.75;white-space:normal;flex-shrink:0}.message-text{white-space:pre-wrap;overflow-wrap:anywhere}.message.user{align-self:flex-end;background:var(--lavender);border-color:#e8dcf6}.chat-compose{display:flex;gap:12px;align-items:flex-end;background:white;border:1px solid var(--line);padding:13px;border-radius:15px;position:sticky;bottom:20px}.chat-compose textarea{flex:1;resize:none;border:0;padding:9px;background:transparent;min-height:44px;max-height:140px;font-size:13px}.chat-compose .btn{height:43px}.chat-context{display:flex;align-items:center;gap:12px;font-size:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:white}.chat-context img{width:58px;height:45px;object-fit:cover;border-radius:7px}.explore-grid{columns:3;column-gap:20px}.explore-card{break-inside:avoid;border:1px solid var(--line);background:white;border-radius:15px;overflow:hidden;margin:0 0 20px}.explore-card>img{width:100%;height:auto}.explore-card .project-info{gap:8px}.mask-wrap{position:relative;line-height:0}.mask-wrap canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}.mask-controls{display:flex;align-items:center;gap:12px;padding:15px;line-height:1;font-size:11px}.mask-controls input{width:100px;accent-color:var(--purple)}
/* Dialogs and responsive app shell */
#dialog{border:1px solid var(--line);border-radius:22px;padding:35px;max-width:450px;width:calc(100% - 32px);box-shadow:0 30px 90px #25153725;color:var(--ink)}#dialog::backdrop{background:#29213f60;backdrop-filter:blur(5px)}#dialog h2{font-size:26px;line-height:1.25;margin:15px 0}#dialog p{font-size:13px;color:var(--muted)}#dialog label{display:block;font-size:11px;font-weight:600;margin:20px 0 9px}#dialog .text-input{padding:13px;font-size:14px;margin-bottom:16px}.dialog-close{position:absolute;right:15px;top:15px;border:0}.auth-mark{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:13px;background:var(--lavender);color:var(--purple)}#toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);max-width:calc(100% - 32px);background:#30253d;color:white;padding:13px 22px;border-radius:10px;box-shadow:0 5px 25px #0002;font-size:12px;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}#toast.visible{opacity:1;transform:translate(-50%,0)}#mobile-nav{display:none}.skeleton{background:linear-gradient(90deg,#f2eff5,#faf8fc,#f2eff5);background-size:200%;animation:shimmer 2s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}
@media(min-width:1500px){#workspace{padding-top:42px}.hero{min-height:360px}.hero-photo{min-height:360px}.hero-copy{padding:45px}.hero h2{font-size:42px}.tool-photo{aspect-ratio:1.65}}
@media(max-width:1200px){#sidebar{width:200px;padding:28px 13px}.app{margin-left:200px}#topbar{padding:0 26px}#workspace{padding:28px 26px 60px}.tool-grid{gap:13px;grid-template-columns:repeat(3,minmax(0,1fr))}.hero h2{font-size:30px}.hero-copy{padding:26px}.editor-grid{grid-template-columns:minmax(0,1fr) 270px;gap:17px}.control-panel{padding:17px}.upload-zone{margin:15px;min-height:360px}.mini-guide{padding:20px;gap:15px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){#sidebar{width:78px;padding:26px 12px}.brand{margin:0 9px 35px}.brand .brand-name,.nav-label,.nav-link span,.sidebar-note,.copyright{display:none}.nav-link{padding:14px;justify-content:center}.app{margin-left:78px}.hero{grid-template-columns:1fr 1fr}.hero h2{font-size:27px}.hero-copy{padding:25px}.hero-photo{min-height:290px}.editor-grid{grid-template-columns:minmax(0,1fr) 260px}.mini-guide{gap:10px;padding:18px}.guide-step{gap:8px}.guide-step b{font-size:11px}.guide-step p{font-size:10px}.explore-grid{columns:2}.account-grid{grid-template-columns:1fr}}
@media(max-width:680px){:root{font-size:14px}#sidebar{display:none}.app{margin-left:0}#topbar{height:70px;padding:0 20px}.breadcrumb{font:800 20px Manrope,sans-serif;color:var(--ink);letter-spacing:-.8px}.breadcrumb svg,.breadcrumb strong{display:none}.top-actions{gap:9px}.credit-chip{font-size:10px;padding:7px 10px}.top-actions>.btn{padding:9px 13px;font-size:11px}#workspace{padding:25px 18px 100px;min-height:calc(100vh - 70px)}h1{font-size:27px}.page-heading{gap:12px;margin-bottom:22px}.page-heading p{font-size:12px;max-width:280px}.welcome-line{font-size:11px}.hero{display:flex;flex-direction:column-reverse;margin-bottom:25px}.hero-photo{height:200px;min-height:0}.hero-photo:before{background:linear-gradient(0deg,#ede9f3,transparent 25%)}.hero-copy{padding:20px 24px 27px}.hero h2{font-size:29px;max-width:310px}.hero p{margin:11px 0 17px;font-size:12px;max-width:100%}.hero-inset{width:91px;bottom:12px;left:20px;border-width:4px}.hero .image-label{font-size:9px}.hero .eyebrow{font-size:9px}.section-heading{margin:27px 0 15px;gap:10px}.section-heading h2{font-size:20px}.section-heading p{font-size:10px}.segmented button{padding:7px 12px;font-size:10px}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.tool-photo{aspect-ratio:1.4}.tool-copy{padding:12px 11px}.tool-copy h3{font-size:11px}.tool-copy p{font-size:9px}.tool-copy>svg{width:14px}.mini-guide{display:flex;flex-direction:column;gap:18px;padding:22px}.guide-step{gap:12px}.guide-step b{font-size:12px}.guide-step p{font-size:11px}.guide-step>span{width:32px;height:32px}.editor-grid{display:flex;flex-direction:column}.canvas-panel,.control-panel{width:100%}.editor-heading h1{font-size:25px}.upload-zone{min-height:290px;margin:15px}.sample-row{margin-top:5px}.canvas-photo{min-height:220px;margin:12px}.control-panel{padding:20px}.style-grid{grid-template-columns:repeat(4,1fr);max-height:260px}.style-option{font-size:10px}.control-panel h3{font-size:16px}.field>span,.field-label{font-size:12px}.tip{margin-bottom:5px}.project-grid{gap:13px}.project-info{padding:12px}.project-info h3{font-size:12px}.project-detail-grid{grid-template-columns:1fr}.explore-grid{column-gap:12px}.explore-card{margin-bottom:12px}.explore-card .project-info{display:block}.compare{margin:12px}.result-toolbar{padding:12px}.result-toolbar .btn{font-size:10px;padding:10px}.account-card{padding:22px}.account-row{font-size:11px;overflow-wrap:anywhere}.notice{display:block;padding:17px}.notice .btn{margin:13px 0 0}.chat-compose{bottom:80px}.chat-compose textarea{font-size:14px}.message{font-size:12px;padding:13px 15px}.chat-messages{min-height:270px}.page-heading .btn{font-size:10px;padding:10px 12px}#mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;background:#ffffffef;backdrop-filter:blur(15px);border-top:1px solid var(--line);justify-content:space-around;padding:9px 10px calc(9px + env(safe-area-inset-bottom))}#mobile-nav a{display:flex;align-items:center;gap:4px;flex-direction:column;color:#a199ad;font-size:9px;padding:5px 10px;border-radius:8px;min-width:55px}#mobile-nav a.active{color:var(--purple);font-weight:700}#mobile-nav a svg{width:20px;height:20px}#toast{bottom:90px;width:max-content;max-width:calc(100% - 30px)}#dialog{padding:30px 25px}.project-actions .btn span{display:none}.mask-controls{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition:none!important;scroll-behavior:auto!important}}

.material-swatch{display:block;width:100%;aspect-ratio:1;border-radius:6px;border:1px solid #e9e4ed}.field[hidden],.style-option[hidden]{display:none}.field input[type=color]{height:43px;padding:4px;cursor:pointer}

@media(max-width:680px){.editor-grid>aside{width:100%}.field select,.field textarea,.text-input,#signin-email{font-size:16px}.compare:focus-within{outline:3px solid #bba3ef;outline-offset:3px}}
.result-actions{flex-wrap:wrap}
.assistant-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}
.assistant-grid .chat-layout{min-width:0;width:100%;margin:0}
.conversation-panel{padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:16px;position:sticky;top:94px;max-height:calc(100dvh - 130px);overflow:auto}
.conversation-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}
.conversation-heading h3{font-size:12px}.conversation-heading .btn{padding:8px}
.conversation-link{display:flex;flex-direction:column;gap:6px;width:100%;padding:12px;border:0;border-radius:9px;text-align:left;background:transparent;color:var(--ink);margin:3px 0}
.conversation-link b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;font-weight:500}
.conversation-link small{font-size:10px;color:var(--muted)}.conversation-link:hover,.conversation-link.active{background:var(--lavender)}
.assistant-grid .chat-messages{overflow:auto;min-height:300px;max-height:calc(100dvh - 340px);scrollbar-gutter:stable}
.assistant-grid .chat-compose{position:static}.chat-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;white-space:normal}
.chat-suggestions .btn{font-size:11px;padding:9px 11px;text-align:left}.chat-progress{display:block;font-size:11px;color:var(--muted);margin-top:10px}
.chat-image{display:block;width:100%;max-width:420px;padding:0;margin-top:12px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--paper);color:var(--ink)}
.chat-image img{display:block;max-width:100%;width:100%;aspect-ratio:1.5;object-fit:contain}.chat-image span{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;padding:11px 13px}
.thinking{color:var(--muted)}.explore-tabs{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.explore-tabs select{border:1px solid var(--line);border-radius:9px;padding:9px 12px;background:var(--panel);color:var(--ink);font:inherit;font-size:12px}
.community-photo{display:block;position:relative;width:100%;padding:0;border:0;background:var(--paper)}.community-photo img{width:100%;aspect-ratio:1.35;object-fit:cover;display:block}
.community-photo .image-label{position:absolute;bottom:12px;left:12px;font-size:9px}.community-actions{display:flex;align-items:center;gap:2px;padding:0 9px 12px;flex-wrap:wrap}
.community-actions .btn{padding:8px;font-size:10px}.community-actions .voted{color:var(--purple);background:var(--lavender)}.community-actions [data-inspire]{margin-left:auto}
.load-more{display:block;margin:26px auto}.community-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.community-comparison figure{margin:0;min-width:0}
.community-comparison img{width:100%;aspect-ratio:1.25;object-fit:contain;background:var(--paper);border-radius:10px}.community-comparison figcaption{text-align:center;margin:9px 0;font-size:12px;color:var(--muted)}
#dialog.wide-dialog{max-width:850px;max-height:90dvh;overflow:auto}.shopping-search{display:flex;gap:10px;align-items:start}.shopping-search .text-input{min-width:0;flex:1}
.shopping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.shopping-card{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:12px;padding:12px;color:var(--ink)}
.shopping-card img{width:100%;aspect-ratio:1;object-fit:contain;background:var(--paper);border-radius:8px}.shopping-card b{font-size:12px;line-height:1.5;font-weight:500}.shopping-card span{font-size:10px;line-height:1.5;color:var(--muted)}
@media(max-width:1100px){.assistant-grid{grid-template-columns:190px minmax(0,1fr);gap:16px}}
@media(max-width:680px){.assistant-grid{grid-template-columns:minmax(0,1fr);gap:16px}.conversation-panel{position:static;padding:12px;max-height:none}.conversation-heading{margin-bottom:4px}.conversation-heading h3{font-size:11px}#conversation-list{display:flex;gap:6px;overflow:auto}.conversation-link{flex:0 0 170px;margin:0;padding:9px}.conversation-link b{font-size:11px}.assistant-grid .chat-messages{min-height:260px;max-height:55dvh}.assistant-grid .chat-compose{position:sticky;bottom:84px}.chat-compose textarea,#dialog .text-input,#dialog input[type=email]{font-size:16px}.explore-tabs{gap:10px}.explore-tabs select{max-width:130px;font-size:12px}.explore-tabs .segmented button{padding:8px 10px}.community-comparison{grid-template-columns:1fr}.shopping-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shopping-card{padding:10px}.community-actions [data-inspire]{margin-left:0}.chat-image span{font-size:10px}}

.mask-wrap{min-height:0}.mask-wrap>img{height:auto;max-height:none}

/* consent panel open: the mobile nav rides above it; the settings pill clears the nav */
html.rg-consent-open #mobile-nav{bottom:var(--rg-consent-h,0px)}
@media(max-width:680px){body .rg-cookie-settings{bottom:calc(env(safe-area-inset-bottom,0px) + 66px);left:8px;right:auto}}
