.app-nav-actions { display:flex; align-items:center; gap:10px; }
.app-shell { max-width:1160px; margin:0 auto; padding:40px 24px 72px; }
.app-hero { display:flex; justify-content:space-between; gap:32px; align-items:end; margin-bottom:28px; }
.app-hero h1 { font-size:2.2rem; line-height:1.15; color:var(--gray-900); margin-bottom:8px; }
.app-hero p { color:var(--gray-500); max-width:680px; }
.checker-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr); gap:24px; align-items:start; }
.app-card { background:#fff; border:1px solid var(--gray-200); border-radius:var(--radius-lg); box-shadow:var(--shadow); padding:26px; }
.app-card h2 { font-size:1.08rem; margin-bottom:16px; }
.checker-form label { display:block; font-size:.82rem; font-weight:700; color:var(--gray-700); margin:18px 0 6px; }
.checker-auth-notice { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:16px 0 20px; padding:14px 16px; border:1px solid #C7D2FE; border-radius:12px; background:#EEF2FF; color:var(--gray-800); }
.checker-auth-notice strong { display:block; margin-bottom:3px; font-size:.9rem; }
.checker-auth-notice p { margin:0; color:var(--gray-600); font-size:.8rem; line-height:1.45; }
.checker-auth-notice .btn { flex:none; white-space:nowrap; }
.checker-form label:first-child { margin-top:0; }
.checker-form select,.checker-form textarea,.fix-text { width:100%; border:1.5px solid var(--gray-200); border-radius:10px; padding:12px; font:inherit; outline:none; }
.checker-form textarea { min-height:340px; resize:vertical; line-height:1.65; }
.checker-form select:focus,.checker-form textarea:focus,.fix-text:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(79,70,229,.12); }
.inline-check { display:flex!important; align-items:center; gap:8px; font-weight:500!important; }
.inline-check input { width:17px; height:17px; accent-color:var(--primary); }
.checker-form .btn { width:100%; margin-top:18px; padding:13px; }
.form-footnote { font-size:.75rem; color:var(--gray-400); margin-top:9px; text-align:center; }
.empty-result { padding:70px 28px; text-align:center; color:var(--gray-400); }
.empty-result span { display:block; font-size:2.5rem; margin-bottom:12px; }
.score-head { display:flex; align-items:center; gap:22px; margin-bottom:20px; }
.score-ring { --score:0deg; width:116px; height:116px; flex:0 0 auto; border-radius:50%; background:conic-gradient(var(--primary) var(--score),var(--gray-100) 0); display:grid; place-items:center; position:relative; }
.score-ring::before { content:''; width:88px; height:88px; border-radius:50%; background:#fff; position:absolute; }
.score-ring strong { position:relative; font-size:1.65rem; color:var(--gray-900); }
.score-ring small { position:relative; color:var(--gray-400); }
.score-copy p { color:var(--gray-600); }
.score-copy small { color:var(--gray-400); }
.issue-card { border-left:4px solid; padding:14px; margin:12px 0; background:var(--gray-50); border-radius:8px; }
.issue-card--critical { border-color:#DC2626; }.issue-card--warning { border-color:#D97706; }.issue-card--suggestion { border-color:#2563EB; }
.issue-card h3 { font-size:.9rem; display:inline; margin-left:8px; }.issue-card p { font-size:.82rem; color:var(--gray-600); margin-top:6px; }
.severity { font-size:.63rem; text-transform:uppercase; font-weight:800; letter-spacing:.06em; color:var(--gray-500); }
.checklist { list-style:none; margin-top:20px; border-top:1px solid var(--gray-200); padding-top:14px; }
.checklist li { display:flex; gap:10px; padding:10px 0; border-bottom:1px solid var(--gray-100); font-size:.85rem; }.checklist li>span { font-weight:800; }.checklist .passed>span { color:#059669; }.checklist .failed>span { color:#DC2626; }.checklist small { display:block; color:var(--gray-400); margin-top:3px; }
.ai-fix-row { display:flex; justify-content:space-between; align-items:center; gap:14px; margin-top:20px; padding-top:18px; border-top:1px solid var(--gray-200); }.ai-fix-row p { font-size:.78rem; color:var(--gray-500); }
.fix-panel { margin-top:18px; }.fix-text { min-height:240px; }.all-clear { padding:18px; background:#ECFDF5; color:#047857; border-radius:8px; font-size:.85rem; }
.checker-message.error { color:#B91C1C; margin-top:10px; font-size:.82rem; }
.checker-message.info { color:#3730A3; margin-top:10px; font-size:.82rem; }
.credit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:22px 0; }.credit-stat { background:#fff; border:1px solid var(--gray-200); border-radius:14px; padding:20px; }.credit-stat strong { display:block; font-size:1.8rem; color:var(--primary); }.credit-stat span { color:var(--gray-500); font-size:.8rem; }
.data-card { margin-top:20px; overflow:auto; }.data-table { width:100%; border-collapse:collapse; font-size:.84rem; }.data-table th,.data-table td { padding:11px; border-bottom:1px solid var(--gray-100); text-align:left; }.data-table th { color:var(--gray-500); font-size:.72rem; text-transform:uppercase; }.credit-positive { color:#059669; font-weight:700; }
.pricing-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }.price-card { display:flex; flex-direction:column; }.price-card.featured { border:2px solid var(--primary); position:relative; }.price-card h2 { font-size:1.1rem; }.price { font-size:2rem; font-weight:800; color:var(--gray-900); }.price small { font-size:.8rem; color:var(--gray-400); }.price-card ul { list-style:none; margin:18px 0; flex:1; font-size:.84rem; color:var(--gray-600); }.price-card li { margin:8px 0; }.price-card li::before { content:'✓'; color:#059669; font-weight:800; margin-right:7px; }.pricing-note { max-width:760px; margin:28px auto 0; text-align:center; color:var(--gray-500); font-size:.84rem; }
@media(max-width:900px){.checker-grid{grid-template-columns:1fr}.pricing-grid{grid-template-columns:repeat(2,1fr)}.nav__links{display:none}.checker-auth-notice{align-items:flex-start;flex-direction:column}.checker-auth-notice .btn{width:100%}}
@media(max-width:600px){.app-hero{display:block}.app-hero .btn{margin-top:16px}.credit-grid,.pricing-grid{grid-template-columns:1fr}.score-head{align-items:flex-start}.app-card{padding:19px}}
