:root{color-scheme:light;--bg: #f6f5ef;--surface: #ffffff;--surface-2: #f1efe6;--surface-3: #e9e6da;--border: #e2ded1;--border-strong: #cfcab8;--text: #1b2a20;--text-muted: #56665b;--text-subtle: #6b7a70;--primary: #1d7343;--primary-hover: #165b35;--primary-soft: #e3f1e8;--on-primary: #ffffff;--accent: #b5651d;--accent-soft: #fbeedd;--info: #1f6aa5;--info-soft: #e4eff8;--warning: #9a5b00;--warning-soft: #fdf1d8;--danger: #b42318;--danger-soft: #fdeceb;--kharif: #1d7343;--rabi: #1f6aa5;--zaid: #b5651d;--annual: #6b5aa6;--radius-lg: 18px;--radius: 14px;--radius-sm: 10px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(27, 42, 32, .06);--shadow: 0 1px 2px rgba(27, 42, 32, .05), 0 6px 20px rgba(27, 42, 32, .06);--shadow-lg: 0 10px 40px rgba(27, 42, 32, .14);--focus: 0 0 0 3px rgba(31, 106, 165, .45);--font: "Plus Jakarta Sans", "Noto Sans Devanagari", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: ui-monospace, "SFMono-Regular", Consolas, monospace;--content-width: 1180px;--gutter: 24px;--nav-height: 68px}[data-theme=dark]{color-scheme:dark;--bg: #0f1712;--surface: #16211a;--surface-2: #1c2a21;--surface-3: #243429;--border: #2a3b30;--border-strong: #3a4e41;--text: #e8efe9;--text-muted: #a9b8ad;--text-subtle: #93a398;--primary: #4cc27f;--primary-hover: #63d292;--primary-soft: rgba(76, 194, 127, .14);--on-primary: #0b130e;--accent: #e3a35a;--accent-soft: rgba(227, 163, 90, .14);--info: #74b6ea;--info-soft: rgba(116, 182, 234, .14);--warning: #f0b955;--warning-soft: rgba(240, 185, 85, .14);--danger: #f08a80;--danger-soft: rgba(240, 138, 128, .14);--kharif: #4cc27f;--rabi: #74b6ea;--zaid: #e3a35a;--annual: #b3a4f0;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 1px 2px rgba(0, 0, 0, .25), 0 8px 24px rgba(0, 0, 0, .25);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .5);--focus: 0 0 0 3px rgba(116, 182, 234, .55)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);font-size:16px;line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;line-height:1.25;letter-spacing:-.01em;color:var(--text)}h1{font-size:clamp(1.75rem,1.4rem + 1.4vw,2.4rem);font-weight:800}h2{font-size:1.25rem;font-weight:700}h3{font-size:1.05rem;font-weight:700}p{margin:0}a{color:var(--primary)}img{max-width:100%;display:block}ul{margin:0}:lang(hi) body,[lang=hi]{line-height:1.7}::selection{background:var(--primary-soft)}:focus-visible{outline:none;box-shadow:var(--focus);border-radius:8px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:12px;top:-64px;z-index:400;padding:10px 16px;border-radius:var(--radius-sm);background:var(--primary);color:var(--on-primary);font-weight:700;text-decoration:none}.skip-link:focus{top:12px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.app-container{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;outline:none}.page{width:100%;max-width:var(--content-width);margin:0 auto;padding:32px var(--gutter) 64px}.navbar{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:saturate(140%) blur(10px);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--border)}.navbar-inner{max-width:var(--content-width);margin:0 auto;min-height:var(--nav-height);padding:0 var(--gutter);display:flex;align-items:center;gap:20px}.nav-brand-link{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);flex-shrink:0}.brand-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--primary);color:var(--on-primary)}.brand-text{font-size:1.2rem;font-weight:800;letter-spacing:-.02em}.nav-links{display:flex;align-items:center;gap:2px;flex:1}.nav-links>a{padding:8px 12px;border-radius:var(--radius-sm);color:var(--text-muted);font-weight:600;font-size:.95rem;text-decoration:none;white-space:nowrap;transition:background-color .15s ease,color .15s ease}.nav-links>a:hover{background:var(--surface-2);color:var(--text)}.nav-links>a.active-link{background:var(--primary-soft);color:var(--primary)}.nav-account-mobile{display:none}.nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.nav-account{display:flex;align-items:center;gap:6px}.avatar-link{text-decoration:none;border-radius:50%}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:800}.lang-toggle{min-height:40px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-weight:700;font-size:.9rem;cursor:pointer}.lang-toggle:hover{background:var(--surface-2)}.icon-button{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;transition:background-color .15s ease,color .15s ease}.icon-button:hover{background:var(--surface-2);color:var(--text)}.icon-button.danger:hover{background:var(--danger-soft);color:var(--danger);border-color:transparent}.icon-button svg,.btn-secondary svg,.btn-primary svg,.chat-toggle svg,.chat-window svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.theme-toggle-text,.menu-toggle{display:none}@media(max-width:1040px){.navbar-inner{flex-wrap:wrap;gap:12px;padding:0 16px}.nav-actions{margin-left:auto}.nav-account{display:none}.menu-toggle{display:inline-grid}.nav-links{display:none;order:3;flex-basis:100%;flex-direction:column;align-items:stretch;gap:4px;padding:4px 0 16px}.nav-links.open{display:flex}.nav-links>a{padding:12px;font-size:1rem;min-height:48px;display:flex;align-items:center}.nav-account-mobile{display:flex;flex-direction:column;gap:10px;margin-top:8px;padding-top:14px;border-top:1px solid var(--border)}.nav-user-name{color:var(--text-muted);font-weight:600;padding:0 4px}}.waking-banner{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 16px;background:var(--info-soft);color:var(--text);font-size:.9rem;text-align:center}.footer{border-top:1px solid var(--border);background:var(--surface);padding:24px var(--gutter);text-align:center;color:var(--text-muted);font-size:.875rem}.footer p+p{margin-top:6px}.footer a{color:var(--primary);font-weight:600}.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--radius-sm);border:1px solid transparent;font:inherit;font-weight:700;font-size:.95rem;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .1s ease}.btn-primary:active,.btn-secondary:active,.btn-danger:active{transform:translateY(1px)}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn-secondary:hover{background:var(--surface-2)}.btn-danger{background:var(--danger);color:#fff}[data-theme=dark] .btn-danger{color:#1a0d0b}.btn-danger:hover{filter:brightness(.92)}.btn-ghost{background:transparent;color:var(--text-muted);padding:0 12px}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-small{min-height:38px;padding:0 14px;font-size:.9rem}.btn-block{width:100%}button:disabled,.btn-primary[disabled]{opacity:.6;cursor:not-allowed;transform:none}.text-link{color:var(--primary);font-weight:700;text-decoration:none}.text-link:hover{text-decoration:underline}.text-link,.link-button,.link-danger,.photo-remove-btn{display:inline-flex;align-items:center;min-height:44px}.link-button,.link-danger{background:none;border:none;padding:4px 6px;font:inherit;font-weight:700;cursor:pointer;color:var(--primary);text-decoration:underline;text-underline-offset:3px}.link-danger{color:var(--danger)}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm)}.dashboard-header{margin-bottom:28px}.dashboard-header p{margin-top:6px;color:var(--text-muted);max-width:62ch}.eyebrow{color:var(--accent)!important;font-weight:700;font-size:.95rem;margin:0 0 4px!important}.section-help{color:var(--text-muted);font-size:.9rem;line-height:1.55;margin:4px 0 14px}.muted{color:var(--text-subtle)}.spacer-24{height:24px}.form-group{margin-bottom:16px}.form-group>label,.small-label{display:block;margin-bottom:6px;font-size:.9rem;font-weight:600;color:var(--text)}.optional{font-weight:500;color:var(--text-subtle)}input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=date],input:not([type]),select,textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-size:1rem;line-height:1.4;transition:border-color .15s ease,box-shadow .15s ease}textarea{min-height:110px;resize:vertical}input::placeholder,textarea::placeholder{color:var(--text-subtle);opacity:1}input:hover,select:hover,textarea:hover{border-color:var(--text-subtle)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--info);box-shadow:var(--focus)}input[readonly]{background:var(--surface-2);color:var(--text-muted)}select{appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%2356665b' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23a9b8ad' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E")}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:480px){.form-row{grid-template-columns:1fr}}.dashboard-sidebar .form-row{grid-template-columns:1fr;gap:0}.form-status{margin-top:12px;font-size:.9rem;font-weight:600}.form-status.success{color:var(--primary)}.form-status.error{color:var(--danger)}.inline-form .btn-primary,.inline-form .btn-danger{margin-top:4px}.toggle-row,.consent-row{display:flex;align-items:flex-start;gap:10px;margin:4px 0 16px;font-size:.95rem;color:var(--text-muted);cursor:pointer}.toggle-row input,.consent-row input,.checklist-item input{width:20px;height:20px;min-height:0;margin:2px 0 0;accent-color:var(--primary);flex-shrink:0}.state-message{margin:16px 0;padding:12px 14px;border-radius:var(--radius-sm);font-size:.95rem}.error-message{background:var(--danger-soft);color:var(--danger)}.success-message{background:var(--primary-soft);color:var(--primary)}.page-notice{max-width:var(--content-width);margin:16px auto 0}.segmented{display:inline-flex;padding:4px;gap:4px;border-radius:var(--radius);background:var(--surface-2)}.segmented button{min-height:40px;min-width:110px;padding:0 18px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font:inherit;font-weight:700;cursor:pointer}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.badge,.badge-featured,.rating-pill,.ph-badge,.registry-count,.pulse-text{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--radius-pill);font-size:.78rem;font-weight:700;line-height:1.5;white-space:nowrap}.badge-featured{background:var(--primary-soft);color:var(--primary)}.registry-count{background:var(--surface-2);color:var(--text-muted)}.ph-badge{background:var(--info-soft);color:var(--info)}.badge-kharif{background:color-mix(in srgb,var(--kharif) 14%,transparent);color:var(--kharif)}.badge-rabi{background:color-mix(in srgb,var(--rabi) 14%,transparent);color:var(--rabi)}.badge-zaid{background:color-mix(in srgb,var(--zaid) 14%,transparent);color:var(--zaid)}.badge-other{background:color-mix(in srgb,var(--annual) 14%,transparent);color:var(--annual)}.rating-low{background:var(--danger-soft);color:var(--danger)}.rating-medium{background:var(--warning-soft);color:var(--warning)}.rating-high{background:var(--primary-soft);color:var(--primary)}.home-container{width:100%}.hero{position:relative;display:grid;place-items:center;min-height:min(78vh,640px);padding:64px var(--gutter);background:linear-gradient(180deg,#0a160e8c,#0a160eb8),url(/assets/farm-bg-DnJiMntY.jpg) center/cover no-repeat;color:#fff;text-align:center}.hero-content{max-width:760px}.hero .badge-featured{background:#ffffff29;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hero h1{margin:18px 0 14px;color:#fff;font-size:clamp(2.1rem,1.5rem + 3vw,3.6rem);letter-spacing:-.02em}.hero p{color:#ffffffeb;font-size:clamp(1.02rem,.95rem + .4vw,1.2rem);max-width:60ch;margin:0 auto}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:28px}.hero .btn-primary{background:#fff;color:#12391f;min-height:50px;padding:0 24px;font-size:1rem}.hero .btn-primary:hover{background:#e9f3ec}.hero .btn-secondary{background:transparent;color:#fff;border-color:#ffffffb3;min-height:50px;padding:0 24px;font-size:1rem}.hero .btn-secondary:hover{background:#ffffff1f}.features-section{max-width:var(--content-width);margin:0 auto;padding:64px var(--gutter) 72px}.section-header{text-align:center;margin-bottom:32px}.section-header h2{font-size:1.6rem}.section-header p{color:var(--text-muted);margin-top:6px}.grid-3,.cards.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}@media(max-width:900px){.grid-3,.cards.grid-3{grid-template-columns:1fr}}.feature-card h3{margin:16px 0 6px;font-size:1.1rem}.feature-card p{color:var(--text-muted)}.feature-icon-container{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--primary-soft);color:var(--primary)}.feature-icon-container svg{width:24px;height:24px}.dashboard-content-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;align-items:start;margin-top:24px}.dashboard-content-layout>*,.profile-grid>*,.grid-2>*{min-width:0}@media(max-width:960px){.dashboard-content-layout{grid-template-columns:1fr}}.form-card h2{margin-bottom:18px}.main-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.widgets-grid{gap:20px}.widget-card{display:flex;flex-direction:column;gap:6px;min-height:210px}.widget-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.widget-title-block{display:flex;align-items:center;gap:10px}.widget-title-block h3{font-size:1rem}.widget-icon-container{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--info-soft);color:var(--info)}.widget-icon-container.emerald-icon{background:var(--accent-soft);color:var(--accent)}.widget-icon-container svg{width:20px;height:20px}.pulse-container{display:inline-flex}.pulse-dot{display:none}.pulse-text{background:var(--surface-2);color:var(--text-muted)}.widget-value{font-size:2.2rem;font-weight:800;letter-spacing:-.02em;line-height:1.1;color:var(--text)}.widget-value.muted{font-size:1.05rem;font-weight:700;color:var(--text-muted);line-height:1.4}.mandi-unit{font-size:1rem;font-weight:600;color:var(--text-muted)}.widget-meta{color:var(--text);font-weight:600;font-size:.95rem}.widget-meta.cyan-text{color:var(--info)}.widget-source{margin-top:auto;padding-top:6px;color:var(--text-subtle);font-size:.8rem;line-height:1.45}.widget-source a{color:var(--primary);font-weight:600}.compact-select{min-height:38px;padding-top:6px;padding-bottom:6px;font-size:.9rem;margin-bottom:6px}.widgets-grid .button-row{margin-top:auto}.crops-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.crop-card{position:relative;display:flex;flex-direction:column;padding:20px 20px 16px;border-left:4px solid var(--border-strong)}.badge-kharif-active{border-left-color:var(--kharif)}.badge-rabi-active{border-left-color:var(--rabi)}.badge-zaid-active{border-left-color:var(--zaid)}.badge-other-active{border-left-color:var(--annual)}.crop-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.crop-card-header h3{font-size:1.15rem}.crop-facts{margin:12px 0 0;font-size:.92rem}.crop-facts>div{display:flex;gap:6px;padding:2px 0}.crop-facts dt{color:var(--text-muted)}.crop-facts dt:after{content:":"}.crop-facts dd{margin:0;font-weight:600}.crop-notes{margin-top:6px}.crop-notes dd{font-weight:400;color:var(--text-muted);font-style:italic}.crop-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:14px;border-top:1px solid var(--border);margin-bottom:-2px}.crop-card-body+.crop-card-footer{margin-top:16px}.crop-card-icons{display:flex;gap:6px}.crop-card-icons .icon-button{width:36px;height:36px}.crop-card.edit-mode form{display:flex;flex-direction:column}.crop-fields.compact .form-group{margin-bottom:12px}.npk-card h3{font-size:1.05rem}.npk-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.npk-title-block{display:flex;align-items:center;gap:10px}.npk-title-block svg{stroke:var(--accent)}.soil-empty{padding-top:10px}.soil-empty .btn-secondary{margin-top:4px}.soil-values{margin:14px 0 6px}.soil-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);font-size:.95rem}.soil-row:last-child{border-bottom:none}.soil-row dt{color:var(--text-muted)}.soil-row dd{margin:0;font-weight:700;display:flex;align-items:center;gap:8px}.soil-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:4px}.soil-nutrient{margin:0;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.soil-nutrient legend{padding:0 6px;font-size:.85rem;font-weight:700;color:var(--text)}.input-with-unit{display:flex;align-items:center;gap:8px}.input-with-unit input{min-width:0;flex:1}.input-with-unit span{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.small-label{margin:10px 0 4px;font-size:.8rem;color:var(--text-muted)}.soil-grid .form-group{margin-bottom:0}.terminal-card{padding:0;overflow:hidden}.terminal-header{display:flex;align-items:center;gap:10px;padding:14px 20px;border-bottom:1px solid var(--border);background:var(--surface-2)}.terminal-dots{display:none}.terminal-title{font-weight:700}.demo-note{margin:12px 20px 0;padding:8px 12px;border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning);font-size:.85rem;font-weight:600}.terminal-body{max-height:420px;min-height:180px;overflow-y:auto;padding:12px 20px 16px;font-size:.9rem}.terminal-empty{padding:24px 0;text-align:center;color:var(--text-muted)}.terminal-empty strong{color:var(--text)}.log-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:9px 0;border-bottom:1px solid var(--border)}.log-line:last-child{border-bottom:none}.log-time{font-family:var(--font-mono);font-size:.82rem;color:var(--text-subtle)}.log-badge{padding:1px 8px;border-radius:var(--radius-pill);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.log-info{background:var(--info-soft);color:var(--info)}.log-success{background:var(--primary-soft);color:var(--primary)}.log-warn{background:var(--warning-soft);color:var(--warning)}.log-source{font-weight:700;color:var(--text)}.log-text{color:var(--text)}.code-block{overflow-x:auto;margin:10px 0 14px;padding:14px;border-radius:var(--radius-sm);background:#13201a;color:#cfe9d8;font-family:var(--font-mono);font-size:.8rem;line-height:1.6}.telemetry-page .card h2{margin-bottom:4px}.telemetry-page code{font-family:var(--font-mono);font-size:.85em}.photo-upload{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.file-input:focus-visible+.file-button{box-shadow:var(--focus)}.file-button{cursor:pointer}.photo-preview{width:64px;height:64px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border)}.photo-remove-btn{background:none;border:none;padding:4px;font:inherit;font-size:.9rem;font-weight:600;color:var(--danger);text-decoration:underline;cursor:pointer}.loading-advisor-card,.empty-advisor-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:240px;text-align:center}.empty-advisor-card p{color:var(--text-muted);max-width:46ch}.loading-advisor-text{color:var(--text-muted)}.advisor-results>.card+.card,.advisor-results>.grid-2-layout{margin-top:16px}.result-meta-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.result-header-card h2{font-size:1.5rem}.indicators-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.indicator-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--radius-pill);background:var(--surface-2);font-size:.88rem}.indicator-pill .label{color:var(--text-muted);font-weight:600}.badge-severity{padding:2px 10px;border-radius:var(--radius-pill);font-size:.8rem;font-weight:800}.badge-severity.high{background:var(--danger-soft);color:var(--danger)}.badge-severity.medium{background:var(--warning-soft);color:var(--warning)}.badge-severity.low{background:var(--primary-soft);color:var(--primary)}.advice-disclaimer{margin-top:16px;padding:12px 14px;border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--text);font-size:.9rem;border-left:4px solid var(--warning)}.detail-advisor-card h3{margin-bottom:12px}.treatment-checklist,.info-bullets,.history-list,.device-list,.place-results{list-style:none;padding:0;margin:0}.checklist-item{border-bottom:1px solid var(--border)}.checklist-item:last-child{border-bottom:none}.checklist-item label{display:flex;gap:12px;align-items:flex-start;padding:10px 0;cursor:pointer}.checklist-item.completed .step-text{color:var(--text-subtle);text-decoration:line-through}.info-bullets li{display:flex;gap:10px;padding:6px 0}.bullet-dot{flex-shrink:0;width:7px;height:7px;margin-top:10px;border-radius:50%;background:var(--primary)}.guidance-paragraph{color:var(--text)}.grid-2,.grid-2-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:720px){.grid-2,.grid-2-layout{grid-template-columns:1fr}}.history-card{margin-top:20px}.history-card h2{font-size:1.1rem;margin-bottom:8px}.history-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--border)}.history-list li:last-child{border-bottom:none}.history-open{flex:1;min-height:48px;padding:10px 0;background:none;border:none;text-align:left;font:inherit;font-size:.95rem;color:var(--text);cursor:pointer}.history-open:hover strong{color:var(--primary)}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:20px}.profile-section h2{font-size:1.15rem;margin-bottom:2px}.profile-section h2+form,.profile-section h2+.segmented{margin-top:14px}.current-value{display:inline-block;margin:4px 0 14px;padding:6px 12px;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary);font-weight:700;font-size:.9rem}.place-results{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:8px}.place-results button{width:100%;min-height:46px;padding:10px 14px;border:none;border-bottom:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}.place-results li:last-child button{border-bottom:none}.place-results button:hover{background:var(--primary-soft)}.key-reveal{margin:14px 0;padding:14px;border-radius:var(--radius-sm);background:var(--warning-soft);border:1px dashed var(--warning)}.key-reveal p{font-weight:600}.key-reveal code{display:block;margin:8px 0 10px;padding:8px 10px;border-radius:8px;background:var(--surface);font-family:var(--font-mono);font-size:.85rem;word-break:break-all}.device-list{margin-top:12px}.device-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);font-size:.92rem}.device-list li:last-child{border-bottom:none}#delete-title{color:var(--danger)}.danger-zone{padding-top:4px}.login-page{display:grid;place-items:center;min-height:calc(100vh - var(--nav-height) - 120px)}.login-container{width:100%;max-width:440px}.login-card{padding:32px;box-shadow:var(--shadow)}.login-card h1{font-size:1.8rem}.login-subtitle{color:var(--text-muted);margin:6px 0 20px}.consent-row a,.fine-print a{color:var(--primary);font-weight:600}.divider-with-text{display:flex;align-items:center;gap:12px;margin:22px 0 16px;color:var(--text-subtle);font-size:.85rem}.divider-with-text:before,.divider-with-text:after{content:"";flex:1;height:1px;background:var(--border)}.google-btn svg{fill:currentColor;stroke:none}.fine-print{margin-top:10px;text-align:center;font-size:.8rem;color:var(--text-muted)}.login-footer{margin-top:20px;text-align:center;color:var(--text-muted)}.about-card{max-width:860px;margin:0 auto;padding:36px}.about-card .lead{margin-top:12px;font-size:1.1rem;color:var(--text-muted)}.about-card h2{margin:4px 0 14px}.divider{border:none;border-top:1px solid var(--border);margin:28px 0}.features-list-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.feature-item{padding:18px;border-radius:var(--radius);background:var(--surface-2)}.feature-item h3{margin-bottom:6px}.feature-item p{color:var(--text-muted);font-size:.95rem}.limits-list{padding-left:20px;color:var(--text-muted);line-height:1.75}.limits-list li+li{margin-top:4px}.privacy-card section h2{margin-top:26px}.project-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.stat-card{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:var(--radius);border:1px solid var(--border)}.stat-label{font-size:.8rem;color:var(--text-muted);font-weight:600}.stat-value{font-weight:700}.developer-profile-card{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}.developer-avatar{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-size:1.4rem;font-weight:800}.developer-info{flex:1;min-width:240px}.developer-title{color:var(--accent);font-weight:700;margin:2px 0 8px}.developer-bio{color:var(--text-muted)}.developer-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.dev-link-btn{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);color:var(--text);font-weight:700;text-decoration:none}.dev-link-btn:hover{background:var(--surface-2)}.spinner{width:36px;height:36px;border:3px solid var(--surface-3);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.spinner.small{width:16px;height:16px;border-width:2px;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.loader-container,.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 16px;color:var(--text-muted)}.loading-screen{min-height:50vh}.empty-state-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:40px 24px;text-align:center;border-style:dashed;box-shadow:none}.empty-state-card p{color:var(--text-muted);max-width:46ch}.empty-state-icon svg{width:40px;height:40px;stroke:var(--text-subtle)}.toast-overlay{position:fixed;top:calc(var(--nav-height) + 12px);right:16px;z-index:500;max-width:min(400px,calc(100vw - 32px))}.toast-card{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--info);box-shadow:var(--shadow-lg)}.toast-card.success{border-left-color:var(--primary)}.toast-card.error{border-left-color:var(--danger)}.toast-icon svg{width:20px;height:20px}.toast-content{flex:1}.toast-content h4{font-size:.95rem}.toast-content p{color:var(--text-muted);font-size:.9rem;margin-top:2px}.toast-close{background:none;border:none;font-size:1.3rem;line-height:1;color:var(--text-muted);cursor:pointer;padding:2px 4px}.modal-backdrop{position:fixed;inset:0;z-index:600;display:grid;place-items:center;padding:16px;background:#0f171280}.modal-card{width:100%;max-width:420px;padding:24px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg)}.modal-header{display:flex;align-items:center;gap:12px}.modal-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--danger-soft);color:var(--danger)}.modal-icon.warning{background:var(--warning-soft);color:var(--warning)}.modal-body{margin:14px 0 20px;color:var(--text-muted)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.error-boundary-page{display:grid;place-items:center;min-height:70vh}.error-boundary-card{max-width:520px;text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center}.error-icon-box svg{stroke:var(--danger)}.chat-toggle{position:fixed;right:20px;bottom:20px;z-index:300;display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 20px;border:none;border-radius:var(--radius-pill);background:var(--primary);color:var(--on-primary);font:inherit;font-weight:800;box-shadow:var(--shadow-lg);cursor:pointer}.chat-toggle:hover{background:var(--primary-hover)}.chat-window{position:fixed;right:20px;bottom:84px;z-index:300;display:flex;flex-direction:column;width:390px;height:min(600px,calc(100vh - 120px));height:min(600px,calc(100dvh - 120px));overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg)}.chat-header{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface-2)}.chat-header h3{font-size:1rem}.chat-header-avatar,.msg-avatar{display:grid;place-items:center;flex-shrink:0;border-radius:50%;background:var(--primary-soft);color:var(--primary)}.chat-header-avatar{width:38px;height:38px}.msg-avatar{width:30px;height:30px;font-size:.75rem;font-weight:800}.chat-status-block{display:flex;align-items:center;gap:6px}.chat-status{font-size:.78rem;color:var(--text-muted);font-weight:600}.chat-lang-toggle{margin-left:auto;display:inline-grid;place-items:center;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer}.chat-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.bot-msg,.user-msg{display:flex;gap:8px;align-items:flex-end}.user-msg{flex-direction:row-reverse}.user-msg .msg-avatar{background:var(--accent-soft);color:var(--accent)}.msg-content{max-width:82%;padding:10px 14px;border-radius:16px;font-size:.93rem;line-height:1.55}.bot-msg .msg-content{background:var(--surface-2);color:var(--text);border-bottom-left-radius:4px}.user-msg .msg-content{background:var(--primary);color:var(--on-primary);border-bottom-right-radius:4px}.msg-content p+p,.msg-content ul+p,.msg-content p+ul{margin-top:6px}.msg-content ul{padding-left:18px}.msg-content h3,.msg-content h4{font-size:.95rem;margin:6px 0 2px;color:inherit}.msg-content a{color:inherit;font-weight:700}.typing-indicator{display:flex;gap:4px;padding:4px 0}.typing-indicator span{width:7px;height:7px;border-radius:50%;background:var(--text-subtle);animation:bounce 1s infinite ease-in-out}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.chat-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--border)}.chat-input input{flex:1;min-width:0}.chat-send-btn,.chat-mic-btn{display:inline-grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:var(--radius-sm);cursor:pointer}.chat-send-btn{border:none;background:var(--primary);color:var(--on-primary)}.chat-send-btn:hover{background:var(--primary-hover)}.chat-mic-btn{border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted)}.chat-mic-btn.listening{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}@media(max-width:480px){.chat-window{left:8px;right:8px;width:auto;top:calc(var(--nav-height) + 8px);bottom:80px;height:auto}.chat-toggle{right:12px;bottom:12px}.chat-label{display:none}.chat-toggle{width:56px;height:56px;padding:0;justify-content:center}}@media(max-width:640px){:root{--gutter: 16px}.page{padding-top:22px}.card{padding:18px;border-radius:var(--radius)}.about-card,.login-card{padding:22px}.widget-value{font-size:1.9rem}.widgets-grid .button-row>*{flex:1 1 100%}}@media print{.navbar,.footer,.chat-toggle,.chat-window,.dashboard-sidebar,.history-card,.button-row,.result-meta-top button{display:none!important}body{background:#fff;color:#000}.card{box-shadow:none;border-color:#ccc}}.password-field{position:relative}.password-field input{padding-right:76px}.password-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);min-height:34px;padding:0 10px;border:none;border-radius:8px;background:transparent;color:var(--primary);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.password-toggle:hover{background:var(--primary-soft)}.field-hint{margin-top:6px;font-size:.85rem;color:var(--text-muted)}.slow-hint{text-align:center;margin-top:10px}input[aria-invalid=true]{border-color:var(--danger)}.consent-row.has-error{color:var(--danger)}.consent-row.has-error input{outline:2px solid var(--danger);outline-offset:2px}.error-message:focus{outline:none;box-shadow:var(--focus)}
