*{box-sizing:border-box}:root{--ink:#18324a;--muted:#66788a;--line:#dfe7ed;--panel:#fff;--bg:#f4f7f9;--accent:#2e7d70;--accent2:#e8f4f1;--warn:#c77720;--danger:#c94747}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.app-shell{max-width:1180px;margin:auto;min-height:100vh;padding:24px 24px 110px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.top-actions{display:flex;gap:9px;align-items:center}.eyebrow,.section-label{font-size:11px;letter-spacing:.13em;font-weight:800;color:var(--accent)}h1{margin:3px 0 0;font-size:34px;letter-spacing:-.04em}h2{font-size:34px;line-height:1.05;margin:7px 0 10px;letter-spacing:-.035em}h3{margin:4px 0 0;font-size:23px;letter-spacing:-.025em}.version-pill,.icon-action{border:1px solid var(--line);background:white;border-radius:999px;padding:9px 13px;color:var(--ink);font-weight:800;box-shadow:0 2px 8px #18324a0d}.icon-action{width:40px;height:40px;padding:0}.hero{background:linear-gradient(135deg,#17324d,#24566b);color:white;border-radius:25px;padding:28px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end;box-shadow:0 14px 34px #18324a18}.hero-kicker{margin:0;opacity:.72;font-weight:700}.hero-copy{max-width:680px;opacity:.83;margin:0;line-height:1.5}.status-card{background:#ffffff14;border:1px solid #ffffff25;border-radius:17px;padding:14px 16px;display:flex;gap:11px;align-items:center;min-width:230px}.status-card strong,.status-card span{display:block}.status-card span{font-size:12px;opacity:.72;margin-top:3px}.status-dot{width:11px;height:11px;border-radius:50%;background:#76e6bb;box-shadow:0 0 0 5px #76e6bb22}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:30px 2px 14px}.section-heading.compact{margin-top:24px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.summary-card{background:white;border:1px solid var(--line);border-radius:18px;padding:17px;box-shadow:0 8px 22px #18324a0a}.summary-card span{font-size:11px;letter-spacing:.09em;font-weight:800;color:var(--muted)}.summary-card strong{display:block;font-size:24px;margin:6px 0 4px}.summary-card small{color:var(--muted)}.space-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.space-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:19px;min-height:156px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 8px 22px #18324a0a;transition:.18s;cursor:pointer}.space-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #18324a12}.space-icon{font-size:27px}.space-card h4{font-size:20px;margin:13px 0 5px}.space-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.4}.space-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;color:var(--accent);font-size:12px;font-weight:800}.locked{color:var(--warn)}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick-link{background:white;border:1px solid var(--line);border-radius:16px;padding:15px;text-decoration:none;color:var(--ink);display:flex;justify-content:space-between;align-items:center}.quick-link.disabled{opacity:.55}.quick-link strong,.quick-link small{display:block}.quick-link small{color:var(--muted);margin-top:3px}.text-button,.icon-button{border:0;background:transparent;color:var(--accent);font-weight:800;cursor:pointer}.preserve-card{background:white;border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;justify-content:space-between;gap:20px;align-items:center}.preserve-card p{margin:5px 0 0;color:var(--muted);line-height:1.45}.preserve-badge{background:var(--accent2);color:var(--accent);font-weight:800;font-size:12px;border-radius:999px;padding:8px 11px}.bottom-nav{position:fixed;z-index:5;left:50%;bottom:16px;transform:translateX(-50%);width:min(650px,calc(100% - 28px));height:70px;background:#fff;border:1px solid var(--line);border-radius:22px;display:flex;justify-content:space-around;align-items:center;box-shadow:0 18px 44px #18324a25}.nav-item{border:0;background:none;color:#738392;display:flex;min-width:68px;flex-direction:column;gap:3px;align-items:center;font-weight:700}.nav-item span{font-size:22px}.nav-item small{font-size:10px}.nav-item.active{color:var(--accent)}.add-button span{width:42px;height:42px;border-radius:14px;background:var(--accent);color:white;display:grid;place-items:center;margin-top:-22px;box-shadow:0 8px 18px #2e7d7040}dialog{border:0;border-radius:22px;padding:0;width:min(560px,calc(100% - 28px));box-shadow:0 28px 80px #10283d4d}dialog::backdrop{background:#10283d99;backdrop-filter:blur(3px)}dialog form{padding:22px}.dialog-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:18px}.icon-button{font-size:26px;color:var(--muted)}label{display:block;font-size:13px;font-weight:800;margin:13px 0}input{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:12px;padding:12px;font:inherit}.dialog-note{font-size:12px;color:var(--muted);line-height:1.45}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.dialog-actions button{border:0;border-radius:12px;padding:11px 17px;background:var(--accent);color:white;font-weight:800}.dialog-actions .secondary{background:#edf2f5;color:var(--ink)}.version-details{background:var(--bg);border-radius:15px;padding:10px 15px}.version-details p{font-size:13px}.legacy-list{display:grid;gap:8px}.legacy-row{display:flex;justify-content:space-between;gap:20px;padding:11px 12px;background:var(--bg);border-radius:11px;font-size:13px}.empty-view{background:white;border:1px solid var(--line);border-radius:22px;padding:30px;margin-top:20px}.empty-view p{color:var(--muted);line-height:1.5}@media(max-width:850px){.summary-grid{grid-template-columns:repeat(2,1fr)}.space-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr}}@media(max-width:520px){.app-shell{padding:17px 15px 105px}.space-grid{grid-template-columns:1fr 1fr;gap:10px}.space-card{min-height:145px;padding:15px}.space-card h4{font-size:17px}.space-card p{font-size:12px}.summary-grid{grid-template-columns:1fr 1fr}.topbar h1{font-size:29px}.hero{padding:22px}.hero-copy{font-size:14px}.preserve-card{align-items:flex-start;flex-direction:column}}