:root{--bg: #05060a;--surface: rgba(255, 255, 255, .03);--surface-2: rgba(255, 255, 255, .055);--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .18);--text: #f4f5f9;--text-dim: #8f96aa;--text-faint: #5c6375;--accent: #5b7fff;--accent-soft: rgba(91, 127, 255, .35);--danger: #ff6b64;--live: #3fb950;--mono: "JetBrains Mono", ui-monospace, Menlo, monospace}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Apple SD Gothic Neo,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 40% at 50% -5%,rgba(91,127,255,.13),transparent 70%);pointer-events:none;z-index:0}h1{font-size:1.55rem;font-weight:800;letter-spacing:-.03em;margin:0;background:linear-gradient(180deg,#fff 40%,#aab2c8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}h2{font-size:1.05rem;font-weight:700;letter-spacing:-.01em;margin:0 0 .5rem}a{color:var(--accent);text-decoration:none}.layout{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:60px;border-bottom:1px solid var(--border);background:#05060ab8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.brand{font-size:1.2rem;font-weight:800;color:var(--text);letter-spacing:-.03em}.brand-dot{color:var(--accent)}.topbar-right{display:flex;align-items:center;gap:.75rem}.user-email{color:var(--text-dim);font-size:.85rem}.content{position:relative;z-index:1;flex:1;width:100%;max-width:760px;margin:0 auto;padding:2.5rem 1.5rem 4rem}.layout-nav{flex-direction:row}.layout-main{flex:1;min-width:0;display:flex;flex-direction:column}.layout-nav .layout-main{margin-left:244px}.layout-nav .topbar{display:none}.sidenav{position:fixed;top:0;bottom:0;left:0;z-index:60;width:244px;display:flex;flex-direction:column;padding:1.6rem .75rem 1.1rem;border-right:1px solid var(--border);background:#05060ad9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.sidenav-brand{font-size:1.45rem;padding:0 .85rem;margin-bottom:2rem}.sidenav-links{display:flex;flex-direction:column;gap:.3rem}.sidenav-item{display:flex;align-items:center;gap:.95rem;width:100%;padding:.75rem .85rem;border:0;border-radius:10px;background:transparent;color:var(--text-dim);font-family:inherit;font-size:.98rem;font-weight:500;text-align:left;cursor:pointer;transition:background .15s,color .15s}.sidenav-item:hover{background:var(--surface-2);color:var(--text)}.sidenav-item-active{color:var(--text);font-weight:700}.sidenav-item-active .sidenav-icon{stroke-width:2.6}.sidenav-icon{width:24px;height:24px;flex-shrink:0}.sidenav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidenav-upgrade{margin-top:.6rem;color:#b8c7ff;background:linear-gradient(120deg,#5b7fff29,#7c5bff29)}.sidenav-upgrade:hover{color:#fff;background:linear-gradient(120deg,#5b7fff4d,#7c5bff4d)}.sidenav-foot{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;padding-top:1rem;border-top:1px solid var(--border)}.sidenav-foot .plan-badge{margin-left:.85rem}.sidenav-email{max-width:100%;padding:0 .85rem;color:var(--text-faint);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidenav-logout{font-size:.9rem}@media(max-width:1100px){.layout-nav .layout-main{margin-left:76px}.sidenav{width:76px;align-items:center;padding-left:.6rem;padding-right:.6rem}.sidenav-brand{padding:0;font-size:1.2rem}.sidenav-item{justify-content:center;padding:.8rem}.sidenav-label,.sidenav-email,.sidenav-usage-label{display:none}.sidenav-foot{align-items:center}.sidenav-foot .plan-badge{margin-left:0}}@media(max-width:720px){.sidenav-usage{display:none}.layout-nav .layout-main{margin-left:0;padding-bottom:calc(60px + env(safe-area-inset-bottom))}.layout-nav .topbar{display:flex}.sidenav{top:auto;right:0;width:auto;height:calc(60px + env(safe-area-inset-bottom));flex-direction:row;padding:0 .5rem env(safe-area-inset-bottom);border-right:0;border-top:1px solid var(--border)}.sidenav-brand,.sidenav-foot{display:none}.sidenav-links{flex:1;flex-direction:row;justify-content:space-around;gap:0}.sidenav-item,.sidenav-upgrade{width:auto;flex:1;margin:0;padding:.9rem 0;background:transparent;-webkit-tap-highlight-color:transparent}.sidenav-upgrade{color:#9db4ff}}.btn{padding:.55rem 1.1rem;border:1px solid var(--border-strong);border-radius:9px;background:transparent;color:var(--text);font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:#fff;border-color:#fff;color:#0a0b10}.btn-primary:hover:not(:disabled){background:#fff;transform:translateY(-1px);box-shadow:0 8px 30px #ffffff1f}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-dim)}.btn-ghost:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.btn-danger{background:transparent;border-color:#ff6b6466;color:var(--danger)}.btn-danger:hover:not(:disabled){background:#ff6b6414;border-color:var(--danger)}.link-button{background:none;border:none;padding:0;color:var(--accent);font-family:inherit;font-size:inherit;cursor:pointer}form{display:flex;flex-direction:column;gap:1.1rem}label{display:flex;flex-direction:column;gap:.45rem;font-size:.82rem;color:var(--text-dim);font-weight:600}input,textarea{padding:.65rem .85rem;border:1px solid var(--border);border-radius:9px;background:#00000059;color:var(--text);font-family:inherit;font-size:.95rem;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #5b7fff2e}input::placeholder,textarea::placeholder{color:var(--text-faint)}.form-error{color:var(--danger);font-size:.85rem;margin:0}.form-info{color:var(--live);font-size:.85rem;margin:0}.auth-page{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem}.auth-card{position:relative;width:100%;max-width:400px;background:#0d0f16d9;border:1px solid var(--border-strong);border-radius:16px;padding:2.25rem;box-shadow:0 30px 80px #0000008c}.auth-card:before{content:"";position:absolute;top:-12%;right:-18%;bottom:-12%;left:-18%;background:radial-gradient(ellipse 60% 60% at 50% 40%,var(--accent-soft),transparent 70%);filter:blur(60px);opacity:.35;pointer-events:none;z-index:-1}.auth-brand{display:block;margin-bottom:1.1rem}.auth-card h1{margin-bottom:1.4rem}.auth-desc{color:var(--text-dim);font-size:.9rem;margin:-.9rem 0 1.3rem}.auth-alt{margin:1.4rem 0 0;font-size:.85rem;color:var(--text-dim)}.legal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1.1rem;padding:1.5rem;font-size:.8rem;color:var(--text-faint)}.legal-footer a{color:var(--text-dim)}.legal-footer a:hover{color:var(--text)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.75rem}.page-loading{padding:4rem;text-align:center;color:var(--text-dim)}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1.4rem;transition:border-color .2s,background .2s}.create-form{margin-bottom:1.5rem}.subroute-input{display:flex;align-items:center;gap:.5rem}.subroute-input input{flex:1;font-family:var(--mono);font-size:.88rem}.subroute-suffix{color:var(--text-dim);font-family:var(--mono);font-size:.85rem;font-weight:500}.empty-state{text-align:center;padding:4.5rem 1rem;color:var(--text-dim);border:1px dashed var(--border-strong);border-radius:14px}.project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.project-card{display:flex;align-items:center;justify-content:space-between;gap:1rem}.project-card:hover{border-color:var(--border-strong);background:var(--surface-2)}.project-link{color:var(--text);flex:1;min-width:0}.project-name{font-weight:700;letter-spacing:-.01em;margin-bottom:.3rem}.project-url{color:var(--text-dim);font-family:var(--mono);font-size:.8rem;display:flex;align-items:center;gap:.6rem}.badge{font-family:Inter,sans-serif;font-size:.66rem;font-weight:700;letter-spacing:.04em;padding:.16rem .55rem;border-radius:999px}.badge-live{background:#3fb95021;border:1px solid rgba(63,185,80,.35);color:var(--live)}.badge-empty{background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim)}.badge-danger{background:#f8514924;border:1px solid rgba(248,81,73,.4);color:#f85149}.deploy-policy-note{font-size:.78rem;color:var(--text-dim);line-height:1.5;margin:.25rem 0 0}.deploy-policy-note a{color:var(--text-dim);text-decoration:underline}.project-suspended-notice{margin-top:.6rem;padding:.6rem .75rem;border-radius:.5rem;background:#f851491a;border:1px solid rgba(248,81,73,.3);color:#f85149;font-size:.82rem;line-height:1.5}.project-suspended-reason{margin-top:.35rem;font-weight:600}.project-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.live-card{display:flex;flex-direction:column;gap:.85rem;margin-bottom:1.25rem;border-color:#3fb95059;background:linear-gradient(180deg,rgba(63,185,80,.07),var(--surface))}.live-card-idle{border-style:dashed;border-color:var(--border-strong);background:var(--surface)}.live-head{display:flex;align-items:center;gap:.55rem;font-size:.85rem;font-weight:600;color:var(--text-dim)}.live-url{display:block;font-family:var(--mono);font-size:1.25rem;font-weight:600;letter-spacing:-.02em;color:var(--text);overflow-wrap:anywhere;transition:color .15s}.live-url:hover{color:var(--accent)}.live-card-idle .live-url{color:var(--text-dim)}.live-actions{display:flex;gap:.5rem;flex-wrap:wrap}.live-card-flash{animation:live-flash 1.4s ease}@keyframes live-flash{0%{border-color:var(--live);box-shadow:0 0 #3fb95073}to{border-color:#3fb95059;box-shadow:0 0 0 14px #3fb95000}}.page-msg{margin:-.5rem 0 1.1rem}.back-link{display:inline-block;margin-bottom:1.25rem;color:var(--text-dim);font-size:.85rem;transition:color .15s}.back-link:hover{color:var(--text)}.project-url-link{font-family:var(--mono);font-size:.85rem}.upload-card{display:flex;flex-direction:column;gap:.8rem}.upload-desc{color:var(--text-dim);font-size:.875rem;margin:0}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding:2.2rem 1.5rem;border:1.5px dashed var(--border-strong);border-radius:12px;background:#00000040;cursor:pointer;text-align:center;transition:border-color .15s,background .15s,transform .15s;-webkit-user-select:none;user-select:none}.dropzone:hover{border-color:var(--accent);background:#5b7fff0d}.dropzone-active{border-color:var(--accent);background:#5b7fff1a;transform:scale(1.01);box-shadow:0 0 0 4px #5b7fff1f}.dropzone-busy{opacity:.6;cursor:default}.dropzone-icon{font-size:1.6rem;margin-bottom:.2rem}.dropzone-title{font-weight:600;font-size:.95rem}.dropzone-hint{color:var(--text-dim);font-size:.82rem}.paste-label{margin-top:.4rem}.html-editor-compact{min-height:180px}.create-form h2{margin-bottom:.2rem}.upload-actions{display:flex;gap:.75rem;flex-wrap:wrap}.history-card{margin-top:1rem}.history-list{list-style:none;margin:.25rem 0 0;padding:0;display:flex;flex-direction:column}.history-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .25rem;border-bottom:1px solid var(--border)}.history-row:last-child{border-bottom:none}.history-meta{display:flex;flex-direction:column;gap:.1rem;min-width:0}.history-date{font-size:.875rem;font-weight:600}.history-detail{font-size:.75rem;color:var(--text-dim);display:flex;align-items:center;gap:.4rem}.history-detail code{font-family:var(--mono);font-size:.72rem;background:#ffffff0d;border-radius:4px;padding:.05rem .35rem}.history-source{margin-left:.2rem}.history-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.btn-sm{padding:.3rem .75rem;font-size:.8rem}.traffic-card{margin-top:1rem;display:flex;flex-direction:column;gap:1rem}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.stat-tile{background:#00000040;border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem}.stat-label{font-size:.75rem;font-weight:600;color:var(--text-dim);margin-bottom:.25rem}.stat-value{font-size:1.45rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-sub{font-size:.8rem;font-weight:600;color:var(--text-dim);letter-spacing:0}.overview-card{margin-top:0;margin-bottom:1.25rem}.chart-wrap{position:relative}.chart-tooltip{position:absolute;top:-8px;transform:translate(-50%,-100%);background:#12141c;border:1px solid var(--border-strong);border-radius:8px;padding:.45rem .7rem;font-size:.78rem;white-space:nowrap;pointer-events:none;z-index:10;box-shadow:0 8px 24px #00000080}.chart-tooltip-date{color:var(--text-dim);font-size:.72rem;margin-bottom:.15rem}.chart-tooltip-swatch{display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--accent);margin-right:2px}.chart-tooltip-sub{color:var(--text-dim);font-size:.72rem}.traffic-empty{color:var(--text-dim);font-size:.875rem;text-align:center;padding:1.5rem 0;margin:0}.html-editor{min-height:340px;font-family:var(--mono);font-size:.84rem;line-height:1.6;resize:vertical;white-space:pre;background:#00000073}.upgrade-card{margin-bottom:1rem;text-align:center;border-color:#5b7fff66;position:relative;overflow:hidden}.upgrade-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 90% at 50% 110%,rgba(91,127,255,.18),transparent 70%);pointer-events:none}.upgrade-card>*{position:relative}.upgrade-card p{color:var(--text-dim);font-size:.9rem;margin:.25rem 0 1.1rem}.upgrade-actions{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap}.plan-badge{font-size:.66rem;font-weight:800;letter-spacing:.06em;padding:.2rem .55rem;border-radius:999px;border:1px solid var(--border-strong);color:var(--text-dim);background:transparent;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.plan-badge:hover{border-color:var(--accent-soft);color:var(--text)}.plan-badge.plan-pro{border-color:#5b7fff80;color:#9db4ff;background:#5b7fff1a}.plan-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#030408b8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:plan-fade .15s ease}@keyframes plan-fade{0%{opacity:0}to{opacity:1}}.plan-modal{position:relative;width:100%;max-width:880px;max-height:calc(100vh - 2.5rem);overflow-y:auto;background:#0b0d14;border:1px solid var(--border-strong);border-radius:18px;padding:1.6rem 1.5rem 1.5rem;box-shadow:0 24px 70px #0000008c}.plan-modal-close{position:absolute;top:.85rem;right:.95rem;width:1.9rem;height:1.9rem;display:flex;align-items:center;justify-content:center;font-size:1.35rem;line-height:1;border:none;border-radius:8px;background:transparent;color:var(--text-dim);cursor:pointer}.plan-modal-close:hover{background:var(--surface-2);color:var(--text)}.plan-modal-head{text-align:center;margin-bottom:1.3rem}.plan-modal-head h2{margin:0 0 .35rem;font-size:1.3rem}.plan-modal-head p{margin:0;color:var(--text-dim);font-size:.9rem}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}.plan-col{border:1px solid var(--border);border-radius:14px;padding:1.15rem 1.1rem;background:var(--surface);display:flex;flex-direction:column}.plan-col-pro{border-color:#5b7fff73;background:linear-gradient(180deg,rgba(91,127,255,.08),var(--surface))}.plan-col-current{outline:1px solid var(--accent-soft)}.plan-col-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.7rem}.plan-col-name{font-size:1.05rem;font-weight:700}.plan-col-tag{font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.15rem .45rem;border-radius:999px;border:1px solid var(--border-strong);color:var(--text-dim)}.plan-col-price{display:flex;align-items:baseline;gap:.4rem}.plan-col-amount{font-size:1.9rem;font-weight:800;letter-spacing:-.02em}.plan-col-note{color:var(--text-dim);font-size:.85rem}.plan-col-year{color:var(--text-faint);font-size:.78rem;margin-top:.15rem}.plan-col-features{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem;flex:1}.plan-col-features li{position:relative;padding-inline-start:1.3rem;font-size:.86rem;color:var(--text)}.plan-col-features li:before{content:"✓";position:absolute;inset-inline-start:0;color:var(--accent);font-weight:700}.plan-col-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:1.15rem}.plan-col-actions .btn{width:100%}@media(max-width:820px){.plan-grid{grid-template-columns:1fr}}.btn-upgrade{background:linear-gradient(120deg,#5b7fff,#7c5bff);border-color:transparent;color:#fff;padding:.4rem .9rem;font-size:.82rem}.btn-upgrade:hover:not(:disabled){background:linear-gradient(120deg,#6b8dff,#8c6bff);transform:translateY(-1px)}.usage-chip{font-size:.8rem;color:var(--text-dim);border:1px solid var(--border);border-radius:999px;padding:.25rem .75rem;align-self:center}.usage-chip.usage-full{color:var(--danger);border-color:#ff6b6466}.page-head-right{display:flex;align-items:center;gap:.75rem}.referral-card{margin-top:1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;border-color:#5b7fff59}.referral-info{flex:1;min-width:260px}.referral-info p{color:var(--text-dim);font-size:.875rem;margin:.2rem 0 .9rem}.referral-link-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.referral-link{font-family:var(--mono);font-size:.78rem;color:var(--text-dim);background:#00000059;border:1px solid var(--border);border-radius:8px;padding:.45rem .7rem;overflow-wrap:anywhere}.referral-progress{text-align:center;flex-shrink:0}.referral-count{font-size:.8rem;font-weight:600;color:var(--text-dim);margin-bottom:.5rem}.referral-dots{display:flex;gap:.4rem}.referral-dot{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--border-strong)}.referral-dot.filled{background:var(--accent);border-color:var(--accent);box-shadow:0 0 8px #5b7fff99}.ref-welcome{margin:-.6rem 0 1.2rem;padding:.7rem .9rem;font-size:.85rem;color:#9db4ff;background:#5b7fff1a;border:1px solid rgba(91,127,255,.35);border-radius:10px}.google-signin{margin-top:1.2rem}.or-divider{display:flex;align-items:center;gap:.8rem;color:var(--text-faint);font-size:.78rem;margin-bottom:1rem}.or-divider:before,.or-divider:after{content:"";flex:1;height:1px;background:var(--border)}.google-btn-holder{display:flex;justify-content:center;color-scheme:light}.google-btn-holder.is-blocked{opacity:.4;filter:grayscale(1);pointer-events:none}.google-agree-hint{margin:.6rem 0 0;text-align:center;font-size:.78rem;color:var(--text-faint)}label.consent-check{flex-direction:row;align-items:flex-start;gap:.55rem;font-weight:500;font-size:.84rem;line-height:1.5;cursor:pointer}.consent-check input{flex-shrink:0;width:1rem;height:1rem;margin:.15rem 0 0;padding:0;accent-color:var(--accent);cursor:pointer}.consent-check a{text-decoration:underline;text-underline-offset:2px}.legal-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#030408cc;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:plan-fade .15s ease}.legal-modal{width:100%;max-width:460px;max-height:calc(100vh - 2.5rem);overflow-y:auto;display:flex;flex-direction:column;gap:1rem;background:#0b0d14;border:1px solid var(--border-strong);border-radius:16px;padding:1.6rem 1.5rem 1.4rem;box-shadow:0 24px 70px #0000008c}.legal-modal h2{margin:0;font-size:1.2rem}.legal-modal-desc{margin:-.4rem 0 0;color:var(--text-dim);font-size:.88rem}.legal-doc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.legal-doc-list li{display:flex;flex-direction:column;gap:.1rem;padding:.7rem .9rem;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.legal-doc-title{font-weight:600;font-size:.92rem}.legal-doc-meta{color:var(--text-dim);font-size:.78rem}.legal-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.legal-modal-logout{color:var(--text-dim);font-size:.85rem}.legal-modal-logout:hover{color:var(--text)}.legal-notices{position:relative;z-index:2;display:flex;flex-direction:column}.legal-notice{display:flex;align-items:flex-start;justify-content:center;gap:.75rem;padding:.5rem 1.5rem;background:#5b7fff1a;border-bottom:1px solid rgba(91,127,255,.28);color:#cfe3ff;font-size:.82rem;line-height:1.5}.legal-notice-text{margin:0;max-width:760px;overflow-wrap:anywhere}.legal-notice-title{font-weight:600}.legal-notice-text a{font-weight:600;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.legal-notice-close{flex-shrink:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--text-dim);font-size:1.1rem;line-height:1;cursor:pointer}.legal-notice-close:hover{background:var(--surface-2);color:var(--text)}.api-card{margin-top:1.25rem}.api-desc{color:var(--text-dim);font-size:.875rem;margin:.2rem 0 1rem}.api-once{color:#ffd166;font-size:.82rem;margin:0 0 .6rem}.api-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.api-example{margin:1.1rem 0 0;padding:.9rem 1rem;background:#00000073;border:1px solid var(--border);border-radius:10px;font-family:var(--mono);font-size:.74rem;line-height:1.7;color:var(--text-dim);overflow-x:auto}.api-docs-link{display:inline-block;margin-top:.8rem;margin-inline-start:1.1rem;font-family:var(--mono);font-size:.8rem}.section-label{font-size:.85rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);margin:1.6rem 0 .7rem}.team-section{margin-top:.4rem}.team-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.team-head .section-label{margin:1.6rem 0 .4rem}.team-members{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.7rem}.member-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--text-dim);background:#ffffff0a;border:1px solid var(--border);border-radius:999px;padding:.2rem .65rem}.member-chip em{font-style:normal;color:var(--text-faint)}.member-remove{background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:.9rem;padding:0 .1rem}.member-remove:hover{color:#ff7b72}.team-create-form{display:flex;gap:.6rem;align-items:center;margin-bottom:1rem;padding:1rem 1.25rem}.team-name-input{flex:1;background:#00000059;border:1px solid var(--border);border-radius:10px;padding:.6rem .8rem;color:var(--text);font-family:inherit;font-size:.9rem}.team-pick{display:flex;align-items:center;gap:.6rem;font-size:.85rem;color:var(--text-dim);margin-bottom:1rem}.team-pick select{background:#00000059;border:1px solid var(--border);border-radius:8px;color:var(--text);padding:.45rem .6rem;font-family:inherit;font-size:.85rem}.team-joined-msg{color:#7ee787;font-size:.85rem;margin:.6rem 0}.history-actor{color:var(--text-faint);margin-inline-start:.4rem}.collab-card{margin-top:1.25rem}.collab-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.project-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border);margin:.5rem 0 1.5rem}.project-tab{padding:.55rem .9rem;font-size:.875rem;font-weight:600;color:var(--text-dim);border-bottom:2px solid transparent;margin-bottom:-1px}.project-tab:hover{color:var(--text)}.project-tab-active{color:var(--text);border-bottom-color:var(--accent)}.seo-card{margin-top:1.25rem}.seo-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.6rem}.seo-state{font-size:.72rem;color:var(--text-faint);background:#ffffff0a;border:1px solid var(--border);border-radius:999px;padding:.15rem .6rem}.seo-state.on{color:#7ee2a8;border-color:#7ee2a859}.seo-desc{font-size:.82rem;color:var(--text-dim);line-height:1.6;margin-bottom:.85rem}.seo-toggle{display:flex;align-items:center;gap:.55rem;font-size:.85rem;cursor:pointer}.seo-toggle input{accent-color:var(--accent);cursor:pointer}.seo-toggle input:disabled{cursor:default}.seo-nudge{margin-top:.85rem;padding:.7rem .9rem;font-size:.82rem;line-height:1.55;color:#cfe3ff;background:#5b7fff1a;border:1px solid rgba(91,127,255,.3);border-radius:10px}.seo-nudge-blocked{color:#ffd3d3;background:#ff636314;border-color:#ff63634d}.danger-card{margin-top:1.25rem;border-color:#ff7b7259}.danger-card h2{margin-bottom:.9rem}.preview-toolbar{display:flex;gap:.5rem;margin-bottom:1rem}.preview-stage{display:flex;justify-content:center;background:repeating-conic-gradient(rgba(255,255,255,.03) 0% 25%,transparent 0% 50%) 0 0 / 24px 24px;border:1px solid var(--border);border-radius:12px;padding:1rem;overflow:auto}.preview-frame{background:#fff;border:none;border-radius:8px;height:68vh;transition:width .25s ease}.preview-desktop{width:100%}.preview-tablet{width:768px;max-width:100%}.preview-mobile{width:390px;max-width:100%}.preview-draft-note{color:#ffd166;font-size:.8rem;margin:-.4rem 0 .8rem}.preview-loading{display:flex;align-items:center;justify-content:center;min-height:40vh;color:var(--text-dim);font-size:.9rem;width:100%}.api-callout{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.7rem 1rem;margin-bottom:1.25rem;background:linear-gradient(120deg,#5b7fff17,#7c5bff17);border:1px solid var(--accent-soft);border-radius:12px;color:var(--text-dim);font-size:.9rem;transition:border-color .15s,background .15s}.api-callout:hover{border-color:var(--border-strong);background:var(--surface-2)}.api-callout-badge{flex:none;font-family:var(--mono);font-size:.68rem;font-weight:600;letter-spacing:.05em;color:#b9c6ff;padding:.14rem .5rem;border:1px solid var(--accent-soft);border-radius:999px}.api-callout-text{flex:1;min-width:12rem}.api-callout-cta{flex:none;color:#8aa4ff;font-weight:600;white-space:nowrap}.api-callout-cta:after{content:" →"}[dir=rtl] .api-callout-cta:after{content:" ←"}.show-sm{display:none}@media(max-width:720px){body,.layout,.auth-page{min-height:100dvh}h1{font-size:1.35rem}.topbar{padding:0 .9rem;height:54px;gap:.5rem}.topbar-right{gap:.35rem}.user-email,.hide-sm{display:none}.show-sm{display:inline;font-size:1rem;line-height:1}.btn{padding:.5rem .8rem;font-size:.85rem;min-height:40px;-webkit-tap-highlight-color:transparent}.btn-sm{padding:.35rem .7rem;font-size:.8rem;min-height:34px}.topbar .btn{padding:.4rem .6rem;min-height:36px}.btn-upgrade{padding:.4rem .7rem;font-size:.78rem}.content{padding:1.5rem 1rem 3.5rem}.card{padding:1.1rem;border-radius:12px}input,textarea,select,.team-name-input{font-size:16px}.page-head{flex-direction:column;align-items:stretch;gap:.85rem;margin-bottom:1.35rem}.page-head-right{flex-wrap:wrap;gap:.5rem}.page-head-right .btn{flex:1 1 auto}.usage-chip{align-self:center}.project-tabs{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.project-tabs::-webkit-scrollbar{display:none}.project-tab{flex:0 0 auto;padding:.55rem .7rem}.live-url{font-size:1.05rem}.live-actions .btn{flex:1 1 auto;text-align:center}.project-card{flex-wrap:wrap;gap:.75rem}.project-link{flex:1 1 100%}.project-url{overflow-wrap:anywhere}.project-actions{width:100%;justify-content:flex-end}.dropzone{padding:1.6rem 1rem}.html-editor{min-height:240px;font-size:.8rem}.html-editor-compact{min-height:160px}.upload-actions .btn{flex:1 1 auto}.stats-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.stat-tile{padding:.7rem .8rem}.stat-value{font-size:1.2rem}.chart-tooltip{max-width:70vw;white-space:normal}.preview-stage{padding:.5rem}.preview-frame{height:60vh}.preview-toolbar{overflow-x:auto;scrollbar-width:none}.preview-toolbar::-webkit-scrollbar{display:none}.preview-toolbar .btn{flex:0 0 auto}.history-row{flex-direction:column;align-items:flex-start;gap:.6rem}.history-actions{align-self:flex-end}.history-detail{flex-wrap:wrap}.team-create-form{flex-wrap:wrap;padding:1rem}.team-name-input{flex:1 1 100%}.team-create-form .btn{width:100%}.team-head-actions{display:flex;gap:.4rem}.member-chip{max-width:100%;overflow-wrap:anywhere}.referral-card{flex-direction:column;align-items:stretch;gap:1rem}.referral-info{flex:1 1 100%;min-width:0}.referral-progress{text-align:start}.referral-link-row .btn,.api-row .btn{flex:1 1 auto}.referral-link{flex:1 1 100%;font-size:.72rem}.api-example{font-size:.68rem;padding:.75rem .8rem}.collab-head{flex-wrap:wrap}.auth-page{padding:1rem}.auth-card{padding:1.6rem 1.25rem;border-radius:14px}.plan-modal-overlay,.legal-modal-overlay{padding:.75rem}.legal-modal{padding:1.3rem 1.1rem 1.2rem;max-height:calc(100dvh - 1.5rem)}.legal-modal-actions .btn-primary{flex:1 1 100%}.legal-notice{justify-content:space-between;padding:.5rem .9rem;font-size:.78rem}.plan-modal{padding:1.3rem 1.1rem 1.2rem;max-height:calc(100dvh - 1.5rem)}.empty-state{padding:3rem 1rem}.api-callout{font-size:.85rem}}@media(max-width:380px){.topbar{padding:0 .7rem}.brand{font-size:1.05rem}.stats-row{grid-template-columns:1fr}.live-actions .btn{flex:1 1 100%}}.folder-bar{display:flex;justify-content:flex-end;margin:1.6rem 0 .2rem}.folder-section{margin-top:.4rem}.folder-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.folder-toggle{display:flex;align-items:center;gap:.5rem;background:none;border:none;padding:0;margin:1.6rem 0 .4rem;cursor:pointer;font-family:inherit;min-width:0}.folder-toggle .section-label{margin:0;text-transform:none;font-size:.95rem;letter-spacing:-.01em;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-caret{color:var(--text-faint);font-size:.6rem;line-height:1;transition:transform .15s ease}.folder-caret-open{transform:rotate(90deg)}.folder-toggle:hover .folder-caret,.folder-toggle:hover .section-label{color:var(--accent)}.folder-count{font-size:.75rem;color:var(--text-faint);font-variant-numeric:tabular-nums;border:1px solid var(--border);border-radius:999px;padding:.05rem .45rem}.folder-empty{color:var(--text-faint);font-size:.85rem;margin:0 0 .6rem}.folder-create-form,.folder-rename-form{display:flex;gap:.6rem;align-items:center}.folder-create-form{margin:.8rem 0 1rem;padding:1rem 1.25rem}.folder-rename-form{margin:1.6rem 0 .4rem;flex:1;max-width:480px}.project-folder-pick,.folder-select{font-family:inherit;font-size:.78rem;color:var(--text-dim);background:#00000059;border:1px solid var(--border);border-radius:8px;padding:.3rem .5rem;max-width:10rem;cursor:pointer}.project-folder-pick:hover,.folder-select:hover{border-color:var(--border-strong);color:var(--text)}.folder-select{font-size:.9rem;padding:.5rem .7rem;max-width:100%}.folder-card h2{margin-top:0}@media(max-width:720px){.folder-create-form{flex-wrap:wrap;padding:1rem}.project-folder-pick{max-width:100%;width:100%}}.owner-badge{flex-shrink:0;font-size:.66rem;font-weight:700;letter-spacing:.02em;line-height:1;padding:.22rem .45rem;border-radius:5px;color:#f2c85b;background:#f2b84b1f;border:1px solid rgba(242,184,75,.3)}.owner-badge-sm{font-size:.6rem;padding:.16rem .35rem}.sidenav-team-head{position:relative;display:flex;align-items:center}.sidenav-team-add{position:absolute;right:.45rem;display:grid;place-items:center;width:28px;height:28px;border-radius:7px;color:var(--text-faint);opacity:0;transition:opacity .15s,background .15s,color .15s}.sidenav-team-add .sidenav-icon{width:16px;height:16px}.sidenav-team-head:hover .sidenav-team-add,.sidenav-team-add:focus-visible{opacity:1}.sidenav-team-add:hover{color:var(--text);background:var(--surface-2)}.sidenav-teams{list-style:none;margin:0 0 .35rem;padding:0;display:flex;flex-direction:column;gap:1px;max-height:40vh;overflow-y:auto}.sidenav-team{display:flex;align-items:center;gap:.6rem;padding:.42rem .6rem .42rem 1.1rem;border-radius:8px;color:var(--text-dim);font-size:.86rem;transition:background .15s,color .15s}.sidenav-team:hover{background:var(--surface-2);color:var(--text)}.sidenav-team-active{background:#5b7fff24;color:var(--text);font-weight:600}.sidenav-team-avatar{flex-shrink:0;display:grid;place-items:center;width:22px;height:22px;border-radius:6px;color:#fff;font-size:.7rem;font-weight:800}.sidenav-team-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidenav-team-count{flex-shrink:0;display:inline-flex;align-items:center;gap:.2rem;color:var(--text-faint);font-size:.74rem;font-variant-numeric:tabular-nums}.sidenav-team-person{width:11px;height:11px}.sidenav-sub-icon{flex-shrink:0;display:grid;place-items:center;width:22px;height:22px;color:var(--text-faint)}.sidenav-sub-icon .sidenav-icon{width:17px;height:17px}.sidenav-team-active .sidenav-sub-icon{color:#9db4ff}.folder-title{display:flex;align-items:center;gap:.5rem}.folder-title .folder-count{-webkit-text-fill-color:var(--text-dim);font-size:.85rem}@media(max-width:1100px){.sidenav-team-add,.sidenav-team-name,.sidenav-team .owner-badge,.sidenav-team-count{display:none}.sidenav-teams{align-items:center}.sidenav-team{padding:.4rem}.sidenav-team-avatar{width:28px;height:28px;font-size:.8rem}}@media(max-width:720px){.sidenav-team-head{display:contents}.sidenav-teams{display:none}}.team-avatar{flex-shrink:0;display:grid;place-items:center;color:#fff;font-weight:800}.team-avatar-md{width:40px;height:40px;border-radius:10px;font-size:1.05rem}.team-avatar-lg{width:56px;height:56px;border-radius:14px;font-size:1.5rem}.team-hero{display:flex;align-items:center;gap:1rem;margin-bottom:1.75rem}.team-hero-text{flex:1;min-width:0}.team-hero-title{display:flex;align-items:center;gap:.6rem}.team-hero-title h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-hero-meta{display:flex;align-items:center;gap:.4rem;margin-top:.3rem;color:var(--text-dim);font-size:.85rem}.team-hero-actions{display:flex;gap:.5rem;flex-shrink:0}.dot-sep{color:var(--text-faint)}.member-stack{display:inline-flex;margin-right:.25rem}.member-dot{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;border:2px solid var(--bg);background:#2a2f45;color:var(--text);font-size:.62rem;font-weight:700}.member-stack .member-dot+.member-dot{margin-left:-7px}.member-dot-lg{width:32px;height:32px;border:0;font-size:.8rem;flex-shrink:0}.team-block{margin-top:2rem}.team-block-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.team-block-head .section-label{margin:0}.member-list{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:12px;overflow:hidden}.member-row{display:flex;align-items:center;gap:.75rem;padding:.7rem 1rem;background:var(--surface)}.member-row+.member-row{border-top:1px solid var(--border)}.member-email{flex:1;min-width:0;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-you{color:var(--text-faint)}.team-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem}.team-card{display:flex;align-items:center;gap:.85rem;color:var(--text);transition:border-color .15s,background .15s}.team-card:hover{border-color:var(--border-strong);background:var(--surface-2)}.team-card-body{min-width:0}.team-card-title{display:flex;align-items:center;gap:.45rem}.team-card-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-card-meta{display:flex;gap:.35rem;color:var(--text-dim);font-size:.8rem}.invite-card{margin-bottom:1.25rem;border-color:#5b7fff59}.invite-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.invite-head h2{margin:0}.invite-desc{margin:.35rem 0 .9rem;color:var(--text-dim);font-size:.85rem}.invite-row{display:flex;gap:.5rem;align-items:flex-start}.invite-field{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-height:42px;padding:.35rem .5rem;border:1px solid var(--border-strong);border-radius:9px;background:#00000040;cursor:text}.invite-field:focus-within{border-color:var(--accent)}.invite-field input,.invite-field input:focus{flex:1;width:auto;min-width:160px;margin:0;border:0;outline:0;box-shadow:none;background:transparent;color:var(--text);font-family:inherit;font-size:.9rem;padding:.2rem}.invite-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .3rem .2rem .6rem;border-radius:999px;background:#5b7fff29;color:#c9d5ff;font-size:.82rem}.invite-chip button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:.95rem;line-height:1;padding:0 .2rem}.invite-msg{margin:.65rem 0 0;color:var(--live);font-size:.85rem}@media(max-width:720px){.team-hero{flex-wrap:wrap}.team-hero-actions{width:100%}.team-hero-actions .btn{flex:1}.invite-row{flex-direction:column;align-items:stretch}.invite-field input{font-size:16px}}.usage-banner{display:flex;align-items:center;justify-content:center;gap:.9rem;padding:.55rem 1.5rem;background:#5b7fff1a;border-bottom:1px solid rgba(91,127,255,.28);color:#cfe3ff;font-size:.84rem;line-height:1.5}.usage-banner-warn{background:#f0b43c1a;border-bottom-color:#f0b43c4d;color:#f6dfae}.usage-banner-paused{background:#ff6b641f;border-bottom-color:#ff6b6459;color:#ffd2cf}.usage-banner-text{margin:0;max-width:760px;overflow-wrap:anywhere}.usage-banner-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.usage-card{margin-bottom:1.25rem}.usage-card h2{margin-bottom:.9rem}.usage-meter{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}.usage-meter-fill{display:block;height:100%;border-radius:inherit;background:var(--accent)}.usage-meter-warn{background:#f0b43c}.usage-meter-over{background:var(--danger)}.usage-figures{display:flex;justify-content:space-between;gap:1rem;margin:.6rem 0 .2rem;font-size:.92rem}.usage-views,.usage-note{color:var(--text-dim);font-size:.84rem}.usage-note{margin:.35rem 0 0}.usage-overage{color:#f6dfae}@media(max-width:640px){.usage-banner{flex-wrap:wrap;justify-content:space-between;padding:.5rem .9rem;font-size:.8rem}}.usage-banner-pending{background:#ff8c3c1f;border-bottom-color:#ff8c3c59;color:#ffd9b8}.badge-warn{background:#f0b43c24;color:#f0b43c;border:1px solid rgba(240,180,60,.35)}.usage-callout{display:flex;align-items:center;gap:1.25rem;margin-bottom:1.25rem;padding:1rem 1.2rem}.usage-callout-main{flex:1;min-width:0}.usage-callout-head{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.45rem;font-size:.86rem;color:var(--text-dim)}.usage-callout-head strong{color:var(--text)}.usage-callout-warn{border-color:#f0b43c59}.usage-callout-pending,.usage-callout-paused{border-color:#ff6b6466}.usage-site-notice{display:flex;align-items:center;justify-content:space-between;gap:.9rem;margin-top:.75rem;padding:.65rem .8rem;border-radius:.5rem;font-size:.84rem;line-height:1.5}.usage-site-notice p{margin:0}.usage-site-paused{background:#f851491a;border:1px solid rgba(248,81,73,.3);color:#ffb4ae}.usage-site-pending{background:#ff8c3c1a;border:1px solid rgba(255,140,60,.3);color:#ffd9b8}.usage-deploy-note{margin:0 0 .9rem;padding:.55rem .75rem;border-radius:.5rem;background:#f0b43c1a;border:1px solid rgba(240,180,60,.3);color:#f6dfae;font-size:.84rem}.sidenav-usage{display:flex;flex-direction:column;gap:.35rem;margin:.25rem .6rem 0;padding:.5rem .6rem;border-radius:8px;color:var(--text-dim);font-size:.78rem}.sidenav-usage:hover{background:var(--surface-2);color:var(--text)}.sidenav-usage .usage-meter{height:5px}@media(max-width:640px){.usage-callout,.usage-site-notice{flex-direction:column;align-items:stretch}}.welcome-card{margin-bottom:1.25rem;border-color:var(--accent-soft)}.welcome-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.welcome-steps{margin:.8rem 0 0;padding-left:1.2rem;display:grid;gap:.35rem;font-size:.9rem;line-height:1.55}.welcome-plan{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--border)}.welcome-plan h3{margin:0 0 .4rem;font-size:.92rem}.welcome-plan ul{margin:0 0 .4rem;padding-left:1.2rem;font-size:.88rem;line-height:1.6}.welcome-plan .btn{margin-top:.7rem}.plan-modal-error{margin:0 0 .9rem;text-align:center}.plan-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.plan-card h2{margin-bottom:.5rem}
