:root{--bg: #f4f7fb;--panel: #ffffff;--panel2: #f8fbff;--text: #142033;--muted: #667792;--border: #d9e3f0;--accent: #2f6fec;--accent-soft: #eaf1ff;--accent-strong: #1f58c5;--danger: #d63251;--success: #2c8d5b;--shadow: 0 20px 50px rgba(20, 32, 51, .08);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{height:100%}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;background:#0000000f;padding:1px 5px;border-radius:4px;font-size:.9em}*{box-sizing:border-box}.appShell{min-height:100vh;display:grid;grid-template-rows:auto 1fr}.topbar{position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;border-bottom:1px solid var(--border);box-shadow:0 8px 30px #1420330d}.topbarInner{max-width:1240px;margin:0 auto;padding:14px 24px;display:flex;gap:24px;align-items:center;justify-content:space-between}.brand{display:flex;gap:8px;align-items:center}.brandTitle{font-weight:800;letter-spacing:-.02em;color:var(--accent);font-size:22px}.brandLink{text-decoration:none}.nav{display:flex;gap:28px;align-items:center}.topNavLink{display:inline-flex;align-items:center;height:50px;padding:0 4px;color:var(--text);font-size:15px;text-decoration:none;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}.topNavLink:hover{color:var(--accent)}.topNavLinkActive{color:var(--accent);font-weight:700;border-bottom-color:var(--accent)}.topNavLinkMuted{color:var(--muted);cursor:default}.userMenu{position:relative}.userMenu summary{list-style:none}.userMenu summary::-webkit-details-marker{display:none}.userMenuTrigger{display:inline-flex;align-items:center;gap:8px;height:50px;padding:0;border-radius:0;cursor:pointer;border:0;background:transparent}.userMenuChevron{color:var(--muted)}.userMenuDropdown{position:absolute;right:0;top:calc(100% + 10px);min-width:190px;padding:8px;border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:var(--shadow)}.menuItem{width:100%;text-align:left;border:0;background:transparent;border-radius:10px;padding:10px 12px;color:var(--text);cursor:pointer}.menuItem:hover{background:var(--accent-soft)}.menuItemDanger{color:var(--danger)}.pill{padding:10px 14px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--text);cursor:pointer;font-size:14px;transition:background .15s ease,border-color .15s ease,color .15s ease}.pill:hover{background:var(--accent-soft)}.pillActive{border-color:#2f6fec40;background:var(--accent-soft);color:var(--accent);font-weight:700}.container{max-width:1240px;margin:0 auto;padding:28px 24px 60px}.panel{border:1px solid var(--border);background:var(--panel);border-radius:24px;padding:24px;box-shadow:var(--shadow)}.h1{margin:0 0 8px;font-size:24px;letter-spacing:-.03em;color:var(--text)}.muted{color:var(--muted);font-size:14px}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:860px){.grid2{grid-template-columns:1fr}}.input,.select{width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:var(--panel2);color:var(--text);font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus{border-color:#2f6fec73;box-shadow:0 0 0 4px #2f6fec1f}.textarea{min-height:112px;resize:vertical}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:14px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;font-size:14px;font-weight:700;transition:background .15s ease,border-color .15s ease}.button:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.button:disabled{opacity:.4;cursor:not-allowed}.buttonGhost{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:14px;border:1px solid var(--border);background:#fff;color:var(--text);cursor:pointer;font-size:14px;transition:background .15s ease,border-color .15s ease}.buttonGhost:hover{background:var(--accent-soft);border-color:#2f6fec33}.buttonCompact{min-height:36px;padding:0 12px}.buttonDanger{border-color:#d6325138;color:var(--danger);background:#d632510d}.buttonDanger:hover{background:#d632511f}.cardGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}@media(max-width:980px){.cardGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.cardGrid{grid-template-columns:1fr}}.card{border:1px solid var(--border);border-radius:20px;background:var(--panel2);padding:18px;transition:box-shadow .15s ease,transform .15s ease}.card:hover{box-shadow:0 14px 30px #1420330f;transform:translateY(-1px)}.cardTitle{font-weight:700;margin:0 0 6px;font-size:16px}.cardActions{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}.hr{height:1px;background:var(--border);margin:18px 0}.error{color:var(--danger);font-size:14px;padding:12px 14px;background:#d6325112;border-radius:14px;border:1px solid rgba(214,50,81,.2)}.pageIntro{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}.pageTitle{margin:0;font-size:30px;line-height:1.1;letter-spacing:-.04em}.pageSubtitle{margin-top:10px;max-width:760px;color:var(--muted);font-size:15px}.sectionHeader{display:flex;justify-content:space-between;align-items:center;gap:12px}.sectionTitle{margin:0;font-size:20px;letter-spacing:-.03em}.toolbarRow{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.toolbarSearch{flex:1 1 320px}.toolbarFilter{width:240px}.createPanel{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.formStack{display:flex;flex-direction:column;gap:14px}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fieldLabel{margin-bottom:6px;font-size:12px;color:var(--muted)}.tableWrap{margin-top:16px;overflow-x:auto}.dataTable{width:100%;border-collapse:collapse;min-width:860px}.dataTable th,.dataTable td{padding:16px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.dataTable th{color:var(--muted);font-size:13px;font-weight:700;letter-spacing:0}.projectCellTitle{font-weight:700}.tableMuted{color:var(--muted)}.statusChip{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:13px;font-weight:700}.statusChipNeutral{background:#eef3fb;color:#48607f}.statusChipSuccess{background:#2c8d5b1a;color:var(--success)}.statusChipInfo{background:#c9e3ff;color:#1b4f8a}.statusChipWarning{background:#e6a81724;color:#9a6a00}.statusChipDanger{background:#d632511a;color:var(--danger)}.emptyState{padding:18px;border:1px dashed var(--border);border-radius:18px;color:var(--muted);background:#fbfdff}.successInline{margin-top:12px;padding:12px 14px;border-radius:14px;border:1px solid rgba(44,141,91,.2);background:#2c8d5b14;color:var(--success);font-size:14px}.panelSkeleton{border-radius:22px;border:1px solid var(--border);background:linear-gradient(90deg,#f6f8fb,#eef3fb,#f6f8fb);background-size:200% 100%;animation:skeletonPulse 1.4s ease infinite}@keyframes skeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.staleBadge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#e6a81724;color:#9a6a00;font-size:12px;font-weight:700}.productGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.productCard{border:1px solid var(--border);border-radius:24px;background:linear-gradient(180deg,#fff,#f8fbff);padding:22px;box-shadow:var(--shadow)}.productIcon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:var(--accent-soft);color:var(--accent);font-weight:800;margin-bottom:16px}.productResultLabel{margin-top:14px;color:var(--muted);font-size:13px}.textLink{color:var(--accent);font-weight:700}.breadcrumbs{margin-bottom:14px;color:var(--muted);font-size:13px}.sectionTabs{display:flex;gap:26px;align-items:center;border-bottom:1px solid var(--border)}.sectionTab{padding:0 0 10px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text);font-size:14px;cursor:pointer}.sectionTabActive{color:var(--accent);font-weight:700;border-bottom-color:var(--accent)}.projectHero{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px}.actionBlock{margin-top:20px;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid var(--border);border-radius:20px;background:var(--panel2)}.projectMetaGrid{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metaCard{padding:16px;border-radius:18px;background:var(--panel2);border:1px solid var(--border)}.metaLabel{color:var(--muted);font-size:12px}.metaValue{margin-top:6px;font-size:28px;font-weight:800}.statusList,.linkStack{display:flex;flex-direction:column;gap:10px}.resultCard{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px;border:1px solid var(--border);border-radius:20px;background:var(--panel2)}.setupLayout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px}.setupRail{align-self:start;position:sticky;top:92px;padding-top:18px}.setupSteps{display:flex;flex-direction:column;gap:14px}.setupStep{display:flex;align-items:center;gap:12px;color:var(--muted)}.setupStepCurrent{color:var(--text);font-weight:700}.setupStepDone{color:var(--accent)}.setupStepNumber{width:30px;height:30px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:#fff;font-size:13px;font-weight:700}.setupStepCurrent .setupStepNumber{background:var(--accent);border-color:var(--accent);color:#fff}.setupStepDone .setupStepNumber{color:var(--accent);border-color:#2f6fec3d;background:var(--accent-soft)}.setupStepLabel{font-size:14px}.setupCardGrid{display:grid;grid-template-columns:1fr;gap:14px}.setupChoiceCard{border:1px solid var(--border);border-radius:20px;background:#fff;text-align:left;padding:18px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.setupChoiceCard:hover:not(:disabled){border-color:#2f6fec59;box-shadow:0 10px 24px #1420330d;transform:translateY(-1px)}.setupChoiceCard:disabled{opacity:.65;cursor:not-allowed}.setupChoiceCardActive{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}.setupChoiceInner{display:flex;align-items:center;gap:14px}.setupChoiceIcon{width:42px;height:42px;flex:0 0 42px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#eef4ff;color:var(--accent);font-size:14px;font-weight:700}.choiceBadge{margin-top:14px;display:inline-flex;min-height:26px;align-items:center;padding:0 10px;border-radius:999px;background:#eef3fb;color:#48607f;font-size:12px;font-weight:700}.choicePills{display:flex;flex-wrap:wrap;gap:8px}.setupSectionStack{display:flex;flex-direction:column;gap:14px}.setupNote{padding:14px 16px;border-radius:18px;border:1px solid var(--border);background:var(--panel2);color:var(--muted);font-size:14px}.setupFormPanel{padding:14px 0 0}.setupDropzone{position:relative;display:flex;min-height:188px;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:2px dashed #b7c0cf;border-radius:18px;background:#fff;cursor:pointer;padding:20px;text-align:center}.setupDropzoneInput{position:absolute;inset:0;opacity:0;cursor:pointer}.setupDropzoneIcon{font-size:38px;color:#8f98a7;line-height:1}.setupDropzoneTitle{font-size:16px;font-weight:700}.setupPreviewPlaceholder{margin-top:14px;min-height:56px;border-radius:14px;background:#f2f4f8;color:#8a93a1;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 16px}.setupInlineLink{margin-top:4px}.reviewCard{padding:16px 18px;border-radius:18px;border:1px solid var(--border);background:#fff}.reviewLabel{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.reviewValue{font-size:15px;color:var(--text)}.setupActions{display:flex;justify-content:space-between;align-items:center;gap:12px}.setupSummaryCard{border:1px solid var(--border);border-radius:18px;background:#fff;overflow:hidden}.setupSummarySection{padding:18px}.setupSummarySection+.setupSummarySection{border-top:1px solid var(--border)}.setupSummaryGrid{display:flex;flex-direction:column;gap:10px}.setupSummaryRow{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px}.setupSummaryKey{color:var(--text);font-weight:600}.setupSummaryValue{color:var(--text)}.setupCheckList{display:flex;flex-direction:column;gap:12px}.setupCheckItem{position:relative;padding-left:26px}.setupCheckItem:before{content:"✓";position:absolute;left:0;top:0;color:var(--success);font-weight:700}.successState{padding:20px;border-radius:20px;border:1px solid rgba(44,141,91,.2);background:#2c8d5b14;text-align:center}.setupDoneCard{padding:28px 18px 18px;border:1px solid var(--border);border-radius:18px;background:#fff;text-align:center}.setupDoneIcon{width:72px;height:72px;margin:0 auto 18px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-size:42px;font-weight:700}.setupDoneResource{margin-top:24px;padding:16px;border:1px solid var(--border);border-radius:14px;text-align:left}.modalBackdrop{position:fixed;inset:0;background:#1420335c;display:flex;align-items:center;justify-content:center;padding:24px;z-index:40}.modalCard{width:min(560px,100%);border-radius:24px;border:1px solid var(--border);background:#fff;box-shadow:var(--shadow);padding:24px}@media(max-width:980px){.productGrid,.projectHero,.formGrid,.setupLayout,.setupCardGrid{grid-template-columns:1fr}}@media(max-width:720px){.topbarInner,.container{padding-left:16px;padding-right:16px}.nav{gap:8px}.pageTitle{font-size:28px}.actionBlock,.resultCard{flex-direction:column;align-items:stretch}.setupSummaryRow{grid-template-columns:1fr;gap:4px}.projectMetaGrid{grid-template-columns:1fr}}
