.sn-shell{min-height:100dvh;background:var(--gray-50)}.sn-side{display:none}.sn-mobilenav{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:10px 14px;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--gray-200);position:sticky;top:0;z-index:50}.sn-mobilenav::-webkit-scrollbar{display:none}.sn-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--gray-200);background:white;color:var(--gray-700);font-size:13.5px;font-weight:600;text-decoration:none;white-space:nowrap}.sn-chip.sn-active{background:#0066cc;border-color:#0066cc;color:white}@media (min-width:960px){.sn-shell{--sn-side-w:248px}.sn-mobilenav{display:none}.sn-side{position:fixed;left:0;top:0;bottom:0;width:var(--sn-side-w);display:flex;flex-direction:column;background:white;border-right:1px solid var(--gray-200);padding:0;z-index:70;overflow-y:auto}.sn-main{margin-left:var(--sn-side-w)}.sn-shell .qa-inputbar{left:var(--sn-side-w)}.sn-shell .qa-page{max-width:880px}.sn-shell .sn-hide-desktop{display:none}}.sn-side-header{padding:20px 20px 16px;border-bottom:1px solid var(--gray-100)}.sn-brand{gap:12px}.sn-brand,.sn-brand-icon{display:flex;align-items:center}.sn-brand-icon{width:36px;height:36px;border-radius:8px;background:var(--primary);justify-content:center;color:white;flex:0 0 auto}.sn-brand-name{color:var(--primary);font-size:18px;font-weight:700;line-height:1.2}.sn-brand-sub{color:var(--gray-500);font-size:11px}.sn-tenant-card{margin-top:12px;padding:12px;background:var(--gray-50);border-radius:8px;display:flex;align-items:center;gap:10px}.sn-tenant-avatar{width:32px;height:32px;background:var(--primary-light);color:var(--primary);border-radius:6px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex:0 0 auto}.sn-tenant-name{font-weight:600;font-size:13px;color:var(--gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sn-tenant-sub{font-size:11px;color:var(--gray-500)}.sn-nav{padding:16px 12px}.sn-section-title{color:var(--gray-500);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:0 12px;margin:14px 0 8px}.sn-nav .sn-section-title:first-child{margin-top:0}.sn-nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;color:var(--gray-700);font-size:14px;font-weight:500;text-decoration:none;transition:all .15s}.sn-nav-item:hover{background:var(--gray-100);color:var(--gray-900)}.sn-nav-item.sn-active{background:var(--primary-light);color:var(--primary)}.sn-nav-item svg{width:19px;height:19px;stroke:currentColor;fill:none;flex:0 0 auto}.sn-nav-item.sn-planned{color:var(--gray-400);cursor:default}.sn-nav-item.sn-planned:hover{background:transparent;color:var(--gray-400)}.sn-soon{margin-left:auto;font-size:10px;font-weight:600;color:var(--gray-500);border:1px solid var(--gray-300);border-radius:999px;padding:1px 7px;white-space:nowrap}.sn-foot{margin-top:auto;border-top:1px solid var(--gray-100);padding:14px 16px 16px}.sn-user{gap:10px;padding-bottom:10px}.sn-user,.sn-user-avatar{display:flex;align-items:center}.sn-user-avatar{width:32px;height:32px;border-radius:8px;background:var(--primary-light);color:var(--primary);font-weight:700;font-size:13px;justify-content:center;flex:0 0 auto}.sn-user-name{color:var(--gray-900);font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sn-user-role{color:var(--gray-500);font-size:11px}.sn-logout{width:100%;padding:9px 12px;border-radius:8px;border:1px solid var(--gray-200);background:white;color:var(--gray-700);font-size:13px;font-weight:500;cursor:pointer;text-align:left}.sn-logout:hover{background:var(--gray-50);color:var(--gray-900)}.sn-content{max-width:880px;margin:0 auto;padding:20px 16px calc(48px + env(safe-area-inset-bottom, 0px))}.sn-page-title{font-size:22px;font-weight:700;color:var(--gray-900);margin:6px 0 2px}.sn-page-lede{font-size:14px;color:var(--gray-600);margin-bottom:18px;line-height:1.7}.sn-card{background:white;border:1px solid var(--gray-200);border-radius:14px;padding:18px;margin-bottom:14px}.sn-card-title{font-size:15px;font-weight:700;color:var(--gray-900);margin-bottom:10px}.sn-feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.sn-feature{display:block;background:white;border:1px solid var(--gray-200);border-radius:14px;padding:16px;text-decoration:none;transition:border-color .15s,box-shadow .15s}a.sn-feature:hover{border-color:#0066cc;box-shadow:0 2px 10px rgba(16,24,40,.06)}.sn-feature-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.sn-feature-icon{width:34px;height:34px;border-radius:9px;background:#eff8ff;color:#0066cc;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.sn-feature-icon svg{width:18px;height:18px;stroke:currentColor;fill:none}.sn-feature-name{font-size:14.5px;font-weight:700;color:var(--gray-900)}.sn-feature-desc{font-size:12.5px;color:var(--gray-600);line-height:1.65}.sn-feature.sn-planned-card{background:var(--gray-50)}.sn-feature.sn-planned-card .sn-feature-icon{background:var(--gray-100);color:var(--gray-400)}.sn-feature.sn-planned-card .sn-feature-name,.sn-soon-dark{color:var(--gray-500)}.sn-soon-dark{font-size:10.5px;font-weight:600;border:1px solid var(--gray-300);border-radius:999px;padding:1px 8px;margin-left:auto;white-space:nowrap}.sn-steps{display:grid;gap:10px}.sn-step{display:flex;gap:12px;align-items:flex-start}.sn-step-no{width:26px;height:26px;border-radius:999px;background:#0066cc;color:white;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.sn-step-body{font-size:13.5px;color:var(--gray-700);line-height:1.7}.sn-step-body b{color:var(--gray-900)}.sn-row{width:100%;text-align:left;background:white;border:1px solid var(--gray-200);border-radius:12px;padding:14px 16px;margin-bottom:10px;cursor:pointer;font:inherit}.sn-row:hover{border-color:var(--gray-300)}.sn-row-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sn-row-title{font-size:14px;font-weight:600;color:var(--gray-900);flex:1;min-width:200px}.sn-row-meta{font-size:12px;color:var(--gray-500)}.sn-row-detail{margin-top:12px;border-top:1px solid var(--gray-100);padding-top:12px}.sn-search{width:100%;border:1px solid var(--gray-200);border-radius:10px;padding:10px 14px;font-size:14px;margin-bottom:14px;background:white}.sn-empty{padding:32px 16px;text-align:center;color:var(--gray-500);font-size:13.5px}