:root{--bg:#f5f7fb;--panel:#fff;--ink:#172033;--muted:#6f7890;--accent:#4f46e5;--dark:#111827;--line:#e7eaf0}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink)}a{color:inherit}.public{min-height:calc(100vh - 55px);display:grid;place-items:center;padding:40px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 35px #1720330d}.install,.login{width:min(650px,94vw);padding:38px}.brand{font-weight:900;letter-spacing:-1px}.brand span{color:#818cf8}.brand.big{font-size:30px}.kicker{font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--accent)}h1{font-size:32px;letter-spacing:-.03em}label{display:block;font-size:13px;font-weight:700;margin:14px 0}input,textarea,select{width:100%;margin-top:7px;padding:12px;border:1px solid #d7dce5;border-radius:10px;font:inherit}textarea{min-height:110px}button,.button{border:0;border-radius:10px;background:var(--accent);color:#fff;padding:11px 16px;font-weight:800;text-decoration:none;cursor:pointer}.error{background:#fff1f2;color:#be123c;padding:10px;border-radius:10px}.muted,small{color:var(--muted)}footer{text-align:center;padding:18px;color:var(--muted);font-size:12px}.topbar{position:fixed;z-index:5;top:0;left:0;right:0;height:52px;background:#0b1220;color:#fff;display:flex;align-items:center;gap:20px;padding:0 20px}.topbar a{text-decoration:none;color:#dbe3f4;font-size:13px}.grow{flex:1}.sidebar{position:fixed;top:52px;bottom:0;left:0;width:235px;background:#111827;padding:22px 12px;overflow:auto}.sidebar .brand{color:#fff;font-size:22px;padding:0 12px 18px}.sidebar a{display:block;color:#cbd5e1;text-decoration:none;padding:10px 12px;border-radius:8px;font-size:14px}.sidebar a:hover{background:#1f2937;color:#fff}.content{margin:52px 0 0 235px;padding:30px;min-height:calc(100vh - 52px)}.pagehead{display:flex;align-items:center;justify-content:space-between}.badge{background:#eef2ff;color:#4338ca;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat{background:#fff;border:1px solid var(--line);padding:20px;border-radius:15px;display:grid;gap:8px}.stat strong{font-size:23px}.stat span{font-size:12px;color:var(--muted)}.panel{padding:24px;margin-top:20px}.row{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:14px;border-top:1px solid var(--line);padding:12px 0}.themegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:20px 0}.theme{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:grid;gap:10px}.theme input[type=radio]{width:auto;margin:0}.hero{max-width:900px;margin:auto;padding:80px 25px;text-align:center}.hero h1{font-size:52px}@media(max-width:800px){.sidebar{width:72px}.sidebar a{font-size:0}.sidebar a:before{content:"•";font-size:20px}.sidebar .brand{font-size:0}.sidebar .brand:after{content:"SP";font-size:20px}.content{margin-left:72px}.cards{grid-template-columns:1fr}.topbar{gap:10px}.hero h1{font-size:38px}}

/* SP Engine branding · V1.0.2 */
.install-logo{display:block;width:min(360px,85%);height:auto;margin:0 auto 26px}
.login-logo{display:block;width:min(310px,95%);height:auto;margin:0 auto 24px}
.topbar .topbrand{display:flex;align-items:center;gap:8px;color:white;text-decoration:none;font-size:14px;white-space:nowrap}
.topbrand img{height:33px;width:34px;object-fit:contain}
.sidebar .brand{display:flex;align-items:center;gap:10px;padding:4px 12px 22px;white-space:nowrap}
.sidebar .brand img{width:42px;height:42px;object-fit:contain}
.sidebar .brand span{color:#e8efff;font-size:18px}
@media(max-width:800px){.sidebar .brand{padding:0 2px 18px;justify-content:center}.sidebar .brand img{width:38px;height:38px}.sidebar .brand span{display:none}.sidebar .brand:after{content:none}}

/* SP Engine 1.1 navigation and themes */
.sidebar{padding:12px 0}.sp-nav{display:grid;gap:3px}.nav-heading{width:100%;border:0;border-radius:0;background:transparent;color:#dce3f0;display:flex;align-items:center;text-align:left;gap:12px;padding:12px 18px;font:600 13px Inter,system-ui,sans-serif}.nav-heading:hover,.nav-group.is-active>.nav-heading{background:#245be9;color:white}.nav-icon{width:20px;text-align:center;font-size:18px}.nav-arrow{margin-left:auto;font-size:12px}.nav-sub{display:none;background:#0b1220;padding:5px 0}.nav-group.is-active>.nav-sub{display:block}.sidebar .nav-sub a{font-size:12px;color:#b9c5d8;padding:9px 18px 9px 49px;border-radius:0}.sidebar .nav-sub a.selected{color:#8cb8ff;border-left:3px solid #477dff;background:#17233b}.sidebar .nav-external{font-size:13px;margin-top:18px}.theme-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.sp-theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px;margin-top:20px}.sp-theme-card{background:#fff;border:1px solid #e0e5ee;border-radius:14px;overflow:hidden;box-shadow:0 8px 24px #1720330a}.sp-theme-art{height:210px;background:linear-gradient(140deg,#eff5ff,#b9d8fc);padding:18px;color:#152d53}.sp-theme-art .art-top{font-size:12px;font-weight:800}.art-hero{padding:25px 15px 16px;text-align:center;font-size:21px;font-weight:800}.art-hero i{display:block;height:5px;width:65%;background:#fff9;border-radius:4px;margin:10px auto}.art-hero i:last-child{width:40%}.art-tiles{display:flex;gap:8px}.art-tiles i{height:35px;flex:1;background:#ffffff99;border-radius:6px}.theme-art-sp-clean{background:linear-gradient(140deg,#f8fafc,#d1d5db)}.theme-art-sp-business{background:linear-gradient(140deg,#0e294e,#257fc3);color:white}.theme-art-sp-modern{background:linear-gradient(140deg,#ebe2ff,#a88ed7)}.theme-art-sp-minimal{background:linear-gradient(140deg,#faf6ed,#e3d6c1)}.sp-theme-info{padding:15px;display:flex;justify-content:space-between;align-items:center;gap:10px}.sp-theme-info strong,.sp-theme-info small{display:block}.sp-theme-info small{font-size:11px;margin-top:4px}.sp-theme-info button{padding:8px 10px;font-size:12px}.sp-theme-actions{padding:10px 15px;border-top:1px solid #eef0f5;display:flex;justify-content:space-between;font-size:12px}.sp-preview{width:min(1050px,100%)}.sp-preview-site{background:white;box-shadow:0 20px 40px #0001}.sp-preview-site header{display:flex;justify-content:space-between;padding:24px 35px;font-weight:800}.sp-preview-site header span{font-weight:400;font-size:12px}.sp-preview-hero{background:linear-gradient(135deg,#e6f3ff,#d1dfff);padding:90px 40px;text-align:center}.sp-preview-tiles{display:flex;gap:15px;padding:30px}.sp-preview-tiles div{height:100px;background:#eef2f7;flex:1}.notice{padding:12px;background:#eef6ff;border-radius:8px}@media(max-width:800px){.sidebar{width:170px}.sidebar .nav-sub a{font-size:11px;padding-left:27px}.nav-heading{font-size:11px;padding:11px 8px;gap:6px}.content{margin-left:170px}.theme-toolbar{display:block}}

.sp-theme-live{position:relative;height:200px;overflow:hidden;background:#f4f5f8}.sp-theme-live iframe{width:1000px;height:700px;border:0;transform:scale(.32);transform-origin:top left;pointer-events:none}.sp-theme-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#081525aa;color:#fff;font-weight:800;text-decoration:none;opacity:0;transition:opacity .2s}.sp-theme-live:hover .sp-theme-overlay,.sp-theme-live:focus-within .sp-theme-overlay{opacity:1}
