:root{--color-bg: #f5f6f7;--color-surface: #ffffff;--color-elevated: #eceff1;--color-text: #171a1d;--color-muted: #626970;--color-border: #d9dee2;--color-brand: #2457e6;--color-brand-hover: #1942b8;--color-brand-subtle: #e9efff;--color-success: #198754;color:var(--color-text);background:var(--color-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{min-width:320px;margin:0;background:var(--color-bg)}button,select,textarea,input{font:inherit}button,select{cursor:pointer}button:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgb(36 87 230 / 32%);outline-offset:3px}input:focus-visible{outline:3px solid rgb(36 87 230 / 32%);outline-offset:3px}.page-shell{min-height:100vh}.discover{display:grid;gap:18px;width:min(100%,458px);min-height:100vh;margin:0 auto;padding:24px 22px 32px}.brand-bar{position:relative;display:flex;align-items:center;gap:10px;min-height:44px}.brand-mark{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;color:#fff;background:#5c7dff;font-size:18px;font-weight:800}.brand-name{font-size:22px;font-weight:800}.mascot-avatar{width:44px;height:44px;margin-left:auto;border:1px solid rgb(255 255 255 / 22%);border-radius:50%;object-fit:cover;box-shadow:0 4px 12px #050d173d}.hero-copy{display:grid;gap:14px}.eyebrow{margin:0;color:#5c7dff;font-size:12px;font-weight:700;letter-spacing:.02em}h1,h2,p{margin-top:0}h1{max-width:11ch;margin-bottom:0;font-size:clamp(34px,9vw,48px);line-height:1.12;letter-spacing:-.025em}h2{margin-bottom:0;font-size:22px}.hero-copy>p:last-child{max-width:38ch;margin-bottom:0;color:var(--color-muted);font-size:15px;line-height:1.45}.vehicle-selector{display:grid;overflow:hidden;padding:8px 16px;border-radius:18px;background:var(--color-surface);box-shadow:0 8px 24px #0d14291a}.vehicle-selector label{display:grid;grid-template-columns:minmax(7rem,1fr) minmax(0,1.5fr);min-height:52px;align-items:center;gap:16px;border-bottom:1px solid var(--color-border);color:#66708a;font-size:14px}.vehicle-selector label:last-child{border-bottom:0}.vehicle-selector select{min-width:0;padding:8px 26px 8px 8px;border:0;color:var(--color-text);background:transparent;font-weight:700;text-align:right}.vehicle-selector select:disabled{cursor:default;opacity:1}.catalog-pending{color:var(--color-muted);font-size:13px;font-weight:600;text-align:right}.actions{display:grid;gap:16px}.button{min-height:49px;padding:14px 16px;border-radius:12px;font-size:14px;font-weight:700}.button-primary{border:1.5px solid var(--color-brand);color:#fff;background:var(--color-brand)}.button-primary:hover{border-color:var(--color-brand-hover);background:var(--color-brand-hover)}.button:disabled{cursor:not-allowed;opacity:.48}.button-secondary{border:1.5px solid var(--color-brand);color:var(--color-brand);background:transparent}.button-secondary:hover{background:var(--color-brand-subtle)}.featured{display:grid;gap:16px}.problem-card{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:12px;padding:16px;border:0;border-radius:20px;color:var(--color-text);background:var(--color-elevated);text-align:left}.problem-card:hover{box-shadow:inset 0 0 0 1.5px var(--color-brand)}.problem-status{color:var(--color-success);font-size:12px;font-weight:700}.problem-card strong{font-size:22px;line-height:1.27}.problem-context{color:var(--color-muted);font-size:14px}.problem-stats{font-size:14px;font-weight:700}.problem-open{color:var(--color-brand);font-size:13px;font-weight:700}.assistant-panel,.empty-state{display:grid;gap:14px;padding:18px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-surface)}.assistant-panel textarea{width:100%;min-height:112px;resize:vertical;padding:14px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);background:var(--color-bg);line-height:1.45}.assistant-panel p,.empty-state p{margin-bottom:0;color:var(--color-muted);font-size:14px;line-height:1.45}.grounded-answer{display:grid;gap:12px;padding:18px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-bg)}.grounded-answer p{color:var(--color-text)}.grounded-answer span{color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.02em}.assistant-quick-actions{display:flex;flex-wrap:wrap;gap:8px}.assistant-quick-actions button{min-height:42px;padding:9px 12px;border:1px solid var(--color-border);border-radius:999px;color:var(--color-brand);background:var(--color-surface);font-size:12px;font-weight:700}.assistant-quick-actions button:hover{border-color:var(--color-brand);background:var(--color-brand-subtle)}.problem-shell{padding:0}.problem-page{display:grid;gap:22px;width:min(100%,1040px);min-height:100vh;margin:0 auto;padding:18px 22px 48px}.problem-nav{display:flex;align-items:center;justify-content:space-between}.back-button,.text-link{padding:8px 0;border:0;color:var(--color-brand);background:transparent;font-weight:700}.problem-hero,.problem-summary,.story-section,.community-section{display:grid;gap:16px}.impact-badge{width:fit-content;padding:9px 12px;border-radius:999px;color:#fff;background:#c83c3c;font-size:12px;font-weight:800}.vehicle-visual{position:relative;display:grid;min-height:150px;overflow:hidden;padding:12px 13px;border:1px solid #2e3652;border-radius:20px;background:var(--color-surface)}.vehicle-visual>strong{font-size:12px}.vehicle-visual>span:not(.taxonomy-icon){align-self:end;color:var(--color-muted);font-size:10px}.vehicle-silhouette{position:absolute;top:42px;left:50%;width:min(68%,250px);height:78px;transform:translate(-50%)}.taxonomy-icon{position:absolute;top:13px;right:13px;display:grid;width:48px;height:48px;place-items:center;border:1px solid rgb(92 125 255 / 70%);border-radius:14px;background:#1a2038}.taxonomy-icon img{width:24px;height:24px}.problem-summary h1{max-width:15ch;margin:0;font-size:clamp(31px,8vw,52px);line-height:1.08}.problem-meta{margin:0;color:var(--color-muted);font-size:14px}.impact-panel{display:grid;min-height:190px;align-content:center;gap:6px;padding:20px;border-radius:20px;background:var(--color-elevated)}.impact-panel p{margin:0;color:var(--color-success);font-size:12px;font-weight:800}.impact-panel strong{font-size:clamp(50px,14vw,68px);line-height:1}.impact-panel span{color:var(--color-muted);font-size:14px}.petition-progress{display:grid;gap:10px}.petition-progress>div:first-child{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;font-size:13px}.petition-progress>div:first-child span{color:var(--color-muted)}.progress-track{height:10px;overflow:hidden;border-radius:999px;background:#2e3652}.progress-track span{display:block;height:100%;border-radius:inherit;background:#2ed6a3}.problem-actions{display:grid;gap:10px}.button-share{display:flex;align-items:center;justify-content:center;gap:8px;border:1.5px solid transparent;color:var(--color-brand);background:var(--color-brand-subtle)}.button-share:hover{border-color:var(--color-brand)}.button-share img{width:18px;height:18px}.button-confirmed{border-color:var(--color-success);background:var(--color-success)}.share-notice{min-height:18px;color:var(--color-muted);font-size:12px;text-align:center}.story-section,.community-section{padding-top:22px;border-top:1px solid var(--color-border)}.story-section>p,.solution-card>p,.comment-card>p{margin:0;color:var(--color-muted);line-height:1.55}.latest-update,.solution-card,.comment-card,.comment-form{display:grid;gap:12px;padding:16px;border-radius:16px;background:var(--color-surface)}.latest-update span,.author-row span{color:var(--color-muted);font-size:12px}.author-row{display:flex;align-items:center;gap:10px}.author-row>div{display:grid;gap:3px}.generic-avatar{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:50%;color:#fff!important;background:#2e3652;font-size:11px!important;font-weight:800}.solution-label{margin-left:auto;color:var(--color-success)!important;font-weight:800}.reaction-row{display:flex;flex-wrap:wrap;gap:8px}.reaction-row button{min-height:40px;padding:8px 12px;border:1px solid var(--color-border);border-radius:999px;color:var(--color-text);background:var(--color-bg);font-size:12px;font-weight:700}.comment-form label{font-weight:800}.comment-form textarea{min-height:110px;resize:vertical;padding:14px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg);line-height:1.45}.modal-backdrop{position:fixed;z-index:10;top:0;right:0;bottom:0;left:0;display:grid;padding:20px;place-items:center;background:#090e1c94}.login-gate{display:grid;width:min(100%,430px);gap:16px;padding:24px;border-radius:22px;background:var(--color-surface);box-shadow:0 24px 80px #050d174d}.login-gate p{margin:0;color:var(--color-muted);line-height:1.5}.login-form{display:grid;gap:14px}.form-error{color:var(--color-danger, #c83c3c);font-size:.9rem;font-weight:700}.button-ghost{border:0;color:var(--color-brand);background:transparent}.report-shell{padding:0}.report-flow,.report-success{display:grid;width:min(100%,720px);min-height:100vh;margin:0 auto;gap:22px;padding:20px 22px 42px}.report-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.report-progress span{height:5px;border-radius:999px;background:var(--color-border)}.report-progress .is-active{background:var(--color-brand)}.report-step{display:grid;align-content:start;gap:18px}.report-step h1,.report-success h1{max-width:14ch}.assistant-message,.match-reasons,.no-match-card,.first-problem-notice{padding:16px;border-radius:18px;line-height:1.5}.assistant-message{width:min(90%,460px);color:#1f2b59;background:#e5ebff}.classification-card,.report-summary{display:grid;gap:16px;padding:18px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-surface)}.classification-card>div:first-child,.report-summary>div,.first-problem-notice{display:grid;gap:5px}.classification-card>div:first-child span,.report-summary span,.prototype-note,.photo-field small,.report-success>p,.first-problem-notice span,.no-match-card p{color:var(--color-muted);font-size:13px;line-height:1.5}.field,.photo-field{display:grid;gap:8px;color:var(--color-text);font-size:13px;font-weight:700}.field textarea,.field select,.field input,.photo-field input{width:100%;min-height:48px;padding:12px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);background:var(--color-bg)}.field textarea{min-height:150px;resize:vertical;font-weight:400;line-height:1.5}.field input,.field select{font-weight:600}.match-badge{width:fit-content;padding:9px 12px;border-radius:999px;color:var(--color-success);background:#e8f5ee;font-size:12px;font-weight:800}.match-reasons,.no-match-card,.first-problem-notice{border:1px solid var(--color-border);background:var(--color-surface)}.no-match-card{display:grid;gap:8px}.no-match-card p,.report-summary p,.prototype-note,.report-success>p{margin:0}.photo-field img{width:100%;max-height:260px;border-radius:14px;object-fit:cover}.prototype-note{padding:0 4px}.report-success{align-content:center}.success-mascot{width:96px;height:96px;border-radius:50%;object-fit:cover;box-shadow:0 10px 32px #050d172e}.share-shell{padding:0}.share-page{display:grid;width:min(100%,720px);min-height:100vh;margin:0 auto;align-content:start;gap:18px;padding:20px 22px 42px}.share-heading{display:grid;gap:16px}.share-heading h1{max-width:14ch}.signature-card{display:grid;min-height:380px;align-content:start;gap:14px;overflow:hidden;padding:24px;border-radius:22px;color:#f7fbff;background:#090e1c;box-shadow:0 18px 44px #090e1c33}.signature-brand{color:#2ed6a3;font-size:20px}.signature-card h2{max-width:13ch;margin:0;font-size:clamp(27px,7vw,38px);line-height:1.18}.signature-count{margin-top:8px;color:#ff737a;font-size:46px;line-height:1}.signature-card p{margin:0;color:#a6b2d1;font-size:14px;line-height:1.5}.share-section{display:grid;gap:12px;font-size:13px}.share-channels{display:flex;flex-wrap:wrap;gap:10px}.share-channels button{min-height:44px;padding:11px 14px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);background:var(--color-surface);font-size:12px;font-weight:700}.share-channels button:hover{border-color:var(--color-brand)}.share-native{display:flex;align-items:center;justify-content:center;gap:8px}.share-native img{width:18px;height:18px;filter:brightness(0) invert(1)}@media(min-width:900px){.page-shell{display:grid;padding:48px;place-items:start center}.discover{width:min(100%,980px);min-height:auto;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);padding:40px;border-radius:28px;box-shadow:0 18px 60px #171a1d14}.brand-bar,.hero-copy,.vehicle-selector,.actions{grid-column:1}.featured,.assistant-panel{grid-column:2}.featured{grid-row:2 / span 4;align-content:start}.assistant-panel{grid-row:5}.problem-shell,.report-shell,.share-shell{padding:48px}.share-page,.report-flow,.report-success{min-height:auto;padding:36px 42px 48px;border-radius:28px;box-shadow:0 18px 60px #171a1d14}.problem-page{min-height:auto;padding:36px 42px 56px;border-radius:28px;background:var(--color-bg);box-shadow:0 18px 60px #171a1d14}.problem-hero{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);align-items:end;gap:30px}.problem-actions{grid-template-columns:1fr 1fr}.share-notice{grid-column:1 / -1}.story-section,.community-section,.petition-progress,.problem-actions{width:min(100%,760px);margin-inline:auto}}
