:root{--bg:#0e0e12;--panel:#14141a;--panel-2:#1a1a22;--line:#ffffff14;--text:#f3f4f8;--muted:#8b90a0;--accent:#6d8dff;--accent-2:#8ea4ff;--danger:#ff6b6b;--store:#1c1c1f;--radius:10px;--sans:"Outfit", "Inter", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--sans);margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.app{grid-template-rows:auto 1fr;height:100%;display:grid}.topbar{border-bottom:1px solid var(--line);background:#101016;flex-wrap:wrap;align-items:center;gap:14px;min-height:56px;padding:0 14px 0 12px;display:flex}.brand{align-items:center;gap:10px;min-width:168px;display:flex}.brand-btn{text-align:left;background:0 0;border:0;padding:0}.brand-mark{object-fit:cover;border-radius:7px;flex:none;width:28px;height:28px;display:block}.gate-logo{border-radius:16px;width:64px;height:64px;margin-bottom:8px}.brand strong{letter-spacing:-.02em;font-size:14px;display:block}.brand em{color:var(--muted);font-size:11px;font-style:normal;display:block}.project-name{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;width:240px;height:32px;padding:0 10px}.field{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.field select,.prop-field select,.prop-field input,.prop-field textarea{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;height:32px;padding:0 8px}.prop-field textarea{resize:vertical;width:100%;height:auto;padding:8px}.stepper{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;align-items:center;gap:6px;padding:2px;display:flex}.stepper button{width:24px;height:24px;color:var(--text);background:0 0;border:0}.stepper strong{text-align:center;min-width:18px;font-size:13px}.spec{color:var(--muted);margin:0;font-size:12px}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.icon-btn,.zoombar button,.align-row button,.layer-row button,.arrange-grid button,.edit-grid button{border:1px solid var(--line);background:var(--panel-2);min-width:32px;height:32px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;gap:6px;display:inline-flex}.icon-btn:disabled{opacity:.35;cursor:default}.toggle{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.export-btn{background:var(--accent);color:#0b0d14;border:0;border-radius:9px;align-items:center;gap:8px;height:34px;padding:0 12px;font-weight:650;display:inline-flex}.export-btn:disabled{opacity:.6}.shell{grid-template-columns:76px 1fr 280px;min-height:0;display:grid}.tool-rail{border-right:1px solid var(--line);background:var(--panel);flex-direction:column;gap:6px;padding:10px 8px;display:flex;overflow:auto}.tool-rail button{color:var(--muted);background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;font-size:11px;display:flex}.tool-rail button.is-active,.tool-rail button:hover{background:var(--panel-2);color:var(--text)}.rail-foot{color:var(--muted);margin-top:auto;padding:8px 4px;font-size:11px;line-height:1.45}.workspace{background:var(--store);min-width:0;min-height:0;position:relative}.store{flex-direction:column;height:100%;display:flex}.store.is-apple.is-preview{background:#1d1d1f}.store.is-google.is-preview{background:#202124}.store-meta{grid-template-columns:88px 1fr;gap:8px;padding:10px 18px 0;display:grid}.store.is-google .store-meta{grid-template-columns:1fr}.store-side{display:none}@media (width>=1280px){.store.is-apple.is-preview .store-side{color:#a1a1a6;flex-direction:column;gap:10px;padding-top:8px;font-size:12px;display:flex}.store-side .is-current{color:#fff;font-weight:650}}.store-head{align-items:center;gap:12px;min-height:64px;display:flex}.app-mark{background:linear-gradient(160deg,#7c6cff,#4f8cff);border-radius:14px;place-items:center;width:52px;height:52px;font-size:22px;font-weight:700;display:grid}.app-copy strong{font-size:18px;display:block}.app-copy em{color:var(--muted);font-size:12px;font-style:normal}.get-btn{color:#fff;pointer-events:none;background:#0a84ff;border:0;border-radius:16px;height:32px;margin-left:auto;padding:0 16px;font-size:13px;font-weight:700}.store.is-google .get-btn{background:#01875f;border-radius:8px}.store-stats{border-left:1px solid var(--line);gap:18px;margin:0;padding:0 0 0 12px;list-style:none;display:flex}@media (width<=1100px){.store-stats,.spec{display:none}}.store-stats li{color:var(--muted);flex-direction:column;font-size:11px;display:flex}.store-stats b{color:var(--text);font-size:13px}.store-stage{flex:1;min-height:0}.canvas-host{width:100%;height:100%;position:relative;overflow:hidden}.canvas-host canvas{display:block}.text-editor{border:1px dashed var(--accent);resize:none;background:0 0;outline:none;margin:0;padding:0;position:absolute}.zoombar{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#101016e0;border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px;max-width:calc(100% - 32px);padding:6px 10px;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.screen-strip{border-right:1px solid var(--line);align-items:center;gap:4px;margin-right:8px;padding-right:8px;display:flex}.zoombar span{text-align:center;min-width:48px;color:var(--muted);font-size:12px}.zoombar button.is-on,.chip-row button.is-on,.layer-list button.is-on{border-color:var(--accent);color:var(--text);background:#6d8dff29}.zoom-hint{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0 0 0 8px;font-size:12px;line-height:1.35;overflow:hidden}.props{border-left:1px solid var(--line);background:var(--panel);padding:16px 14px 24px;overflow:auto}.props h2{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-size:13px;font-weight:650}.props section+section{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.prop-field{color:var(--muted);flex-direction:column;gap:6px;margin-bottom:10px;font-size:12px;display:flex}.xywh{grid-template-columns:1fr 1fr;gap:8px;display:grid}.color-row{align-items:center;gap:8px;display:flex}.color-row input[type=color]{background:0 0;width:42px;height:32px;padding:2px}.swatches{flex-wrap:wrap;gap:6px;margin:0 0 8px;display:flex}.swatches button{border:1px solid #fff3;border-radius:99px;width:20px;height:20px}.swatches button.is-on{outline:2px solid var(--accent);outline-offset:2px}.compact-btn{height:32px;padding:0 10px;font-size:12px}.text-link{color:var(--muted);background:0 0;border:0;padding:0 0 10px;font-size:12px}.text-link:hover{color:var(--text)}.align-row,.layer-row{flex-wrap:wrap;gap:6px;margin:8px 0 12px;display:flex}.layer-row .danger,.edit-grid .danger{color:var(--danger);margin-left:auto}.prop-subhead{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:14px 0 0;font-size:11px;font-weight:600}.arrange-grid,.edit-grid{grid-template-columns:1fr 1fr;gap:6px;margin:8px 0 12px;display:grid}.arrange-grid button,.edit-grid button{width:100%;padding:0 8px;font-size:12px}.arrange-grid button:disabled{opacity:.35;cursor:default}.template-row{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.template-row button{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;flex:1;height:32px;font-size:12px}.prop-label{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.hint{color:var(--muted);margin:0;font-size:12px;line-height:1.5}input[type=range]{width:100%;accent-color:var(--accent)}.prop-field em{color:var(--text);font-size:12px;font-style:normal}.action-stack,.chip-row{flex-wrap:wrap;gap:6px;margin:8px 0 12px;display:flex}.action-stack button,.wide-btn,.chip-row button{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;height:32px;padding:0 10px;font-size:12px}.action-btn,.wide-btn{background:#6d8dff24;border-color:#6d8dff59;width:100%}.steps{color:var(--muted);margin:0;padding-left:18px;font-size:12px;line-height:1.55}.layer-list{flex-direction:column;gap:4px;max-height:180px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.layer-list button{text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;width:100%;height:30px;padding:0 8px;font-size:12px;display:flex}.layer-list em{color:var(--muted);text-transform:capitalize;flex:none;width:52px;font-style:normal}.modal-scrim{z-index:40;background:#06060ab8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--line);background:#16161d;border-radius:16px;width:min(1080px,100%);max-height:90vh;padding:20px;overflow:auto}.modal-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.modal-head h2{margin:0 0 6px;font-size:20px}.modal-head p,.modal .hint{color:var(--muted);margin:0;font-size:13px}.qa-list{color:#ffd7a8;margin:14px 0;padding-left:18px;font-size:13px;line-height:1.45}.preview-strip{gap:12px;padding:16px 0;display:flex;overflow:auto}.preview-strip figure{flex:none;margin:0}.preview-strip img{background:#111;border-radius:18px;width:auto;height:280px;display:block}.preview-strip figcaption{text-align:center;color:var(--muted);margin-top:8px;font-size:12px}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.ghost-btn{border:1px solid var(--line);height:34px;color:var(--text);background:0 0;border-radius:9px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.ghost-btn:disabled{opacity:.5}.project-switch{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;max-width:180px;height:32px;padding:0 8px}.gate{background:radial-gradient(circle at top, #6d8dff29, transparent 38%), var(--bg);place-items:center;min-height:100%;padding:32px;display:grid}.gate-card{border:1px solid var(--line);background:#16161d;border-radius:20px;width:min(420px,100%);padding:28px}.gate-card h1{margin:12px 0 6px;font-size:28px}.gate-card>p,.gate-note{color:var(--muted);line-height:1.5}.gate-tabs{gap:6px;margin:18px 0 12px;display:flex}.gate-tabs button{border:1px solid var(--line);background:var(--panel-2);border-radius:9px;flex:1;height:34px}.gate-tabs button.is-on{background:var(--accent);color:#0b0d14;border-color:#0000}.gate-form{gap:12px;display:grid}.gate-form label{color:var(--muted);gap:6px;font-size:12px;display:grid}.gate-form input{border:1px solid var(--line);background:var(--panel-2);height:38px;color:var(--text);border-radius:8px;padding:0 10px}.gate-error{color:var(--danger);font-size:13px}.gate-code{letter-spacing:.28em;color:var(--accent-2);margin:0;font-size:32px;font-weight:700}.dash,.wizard{min-height:100%;padding:20px 28px 48px}.dash-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.dash-actions{gap:8px;display:flex}.dash-hero{margin:28px 0 20px}.dash-hero h1,.wizard-pane h1{letter-spacing:-.03em;margin:0 0 8px;font-size:32px}.dash-hero p,.wizard-pane>p{color:var(--muted);margin:0}.empty-card{border:1px dashed var(--line);border-radius:16px;max-width:440px;margin-top:24px;padding:28px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.project-grid li{position:relative}.project-card{text-align:left;border:1px solid var(--line);background:#16161d;border-radius:16px;align-content:start;gap:8px;width:100%;min-height:140px;padding:18px 88px 20px 18px;display:grid}.project-card em,.project-card span{color:var(--muted);font-size:12px;font-style:normal}.project-card strong{font-size:18px}.project-grid .icon-btn{position:absolute;top:10px;right:10px}.project-card-actions{gap:6px;display:flex;position:absolute;top:10px;right:10px}.project-card-actions .icon-btn{position:static}.project-rename{background:var(--panel-2);border:1px solid #6d8dff73;border-radius:8px;width:100%;height:36px;padding:0 10px;font-size:18px;font-weight:600}.danger-ghost{background:#ff6b6b1f}.wizard-pane{max-width:880px;margin:32px auto 0}.family-grid,.size-grid,.template-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin:20px 0;display:grid}.family-grid button,.size-grid button,.template-grid button,.outline-card{text-align:left;border:1px solid var(--line);color:inherit;background:#16161d;border-radius:14px;padding:16px}.family-grid button.is-on,.size-grid button.is-on,.template-grid button.is-on,.outline-card:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.family-grid span,.size-grid span,.size-grid em,.template-grid span,.outline-card em{color:var(--muted);margin-top:6px;font-size:12px;font-style:normal;display:block}.wizard-nav{justify-content:flex-end;gap:8px;display:flex}.custom-size{border:1px solid var(--line);background:#16161d;border-radius:16px;margin:8px 0 18px;padding:20px}.custom-size h2{margin:0 0 4px;font-size:16px}.custom-size>p{color:var(--muted);margin:0 0 14px;font-size:13px}.custom-size-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.custom-size-field{gap:6px;display:grid}.custom-size-field span{color:var(--muted);font-size:12px}.custom-size-field input,.custom-size-field select{border:1px solid var(--line);width:128px;height:44px;color:var(--text);font:inherit;background:#0e0e12;border-radius:10px;padding:0 12px}.custom-size-lock{width:44px;height:44px}.custom-size-lock.is-on{border-color:var(--accent);color:var(--accent-2)}.custom-size-hint{color:var(--muted);margin:12px 0 0;font-size:13px}.device-modal{width:min(920px,100%)}.outline-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px;display:grid}.graphics-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px;margin-top:14px;display:grid}.graphic-card{border:1px solid var(--line);background:var(--panel-2);color:var(--text);text-align:left;border-radius:12px;padding:8px}.graphic-card:hover,.graphic-card:focus-visible{border-color:#6d8dff8c}.graphic-thumb{background:#101014;border-radius:10px;place-items:center;height:84px;margin-bottom:8px;display:grid}.graphic-thumb svg{width:52px;height:52px;display:block}.graphic-card strong{font-size:12px;font-weight:600;display:block}.text-modal{width:min(520px,100%)}.text-style-list{gap:10px;margin-top:16px;display:grid}.text-style-card{text-align:left;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:12px;gap:6px;padding:16px 18px;display:grid}.text-style-card:hover,.text-style-card:focus-visible{border-color:#6d8dff8c}.text-style-card em{color:var(--text);font-style:normal;display:block}.text-style-card em.is-heading{letter-spacing:-.04em;font-family:Fraunces,Georgia,serif;font-size:28px;font-weight:700}.text-style-card em.is-subheading{font-family:Outfit,Inter,sans-serif;font-size:18px;font-weight:700}.text-style-card em.is-paragraph{color:var(--muted);font-family:Outfit,Inter,sans-serif;font-size:14px;font-weight:500;line-height:1.45}.text-style-card strong{font-size:13px}.text-style-card span{color:var(--muted);font-size:12px}.outline-thumb{place-items:center;height:110px;margin-bottom:8px;display:grid}.outline-body{background:#111114;border:2px solid #5b6274;box-shadow:inset 0 0 0 3px #1c1d24}.outline-body.is-phone{border-radius:10px;width:42px;height:88px}.outline-body.is-tablet{border-radius:8px;width:68px;height:90px}.outline-body.is-watch{border-radius:16px;width:54px;height:66px}.outline-body.is-round{border-radius:50%;width:58px;height:58px}.template-row{flex-wrap:wrap}
