.proto-root{--proto-bg: #07091a;--proto-bg-soft: #0e1130;--proto-card: rgba(20, 22, 50, .65);--proto-card-border: rgba(124, 92, 255, .22);--proto-card-border-strong: rgba(124, 92, 255, .55);--proto-text: #e7ebff;--proto-text-soft: #9aa3c7;--proto-text-faint: #6b7398;--proto-accent: #7c5cff;--proto-accent-cyan: #22d3ee;--proto-accent-glow: rgba(124, 92, 255, .45);--proto-success: #34d399;--proto-warn: #fbbf24;--proto-danger: #f472b6;--proto-shadow-card: 0 18px 40px -22px rgba(124, 92, 255, .55), 0 1px 0 rgba(255, 255, 255, .04) inset;--proto-radius: 1.1rem;--proto-radius-tight: .55rem;--proto-radius-btn: .7rem;--proto-gap: 1rem;--proto-accent-gradient: linear-gradient(120deg, var(--proto-accent), #5d44e0);--proto-success-fill: linear-gradient(120deg, #10b981, #059669);--proto-warn-fill: linear-gradient(120deg, #f59e0b, #d97706);--proto-danger-fill: linear-gradient(120deg, #f43f5e, #e11d48);position:relative;min-height:100vh;padding:2.25rem clamp(1rem,4vw,3rem) 4rem;color:var(--proto-text);background:radial-gradient(900px 600px at 85% -10%,rgba(124,92,255,.22),transparent 60%),radial-gradient(700px 500px at 5% 105%,rgba(34,211,238,.16),transparent 65%),linear-gradient(180deg,#060819,#07091a 40%,#06081a);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;letter-spacing:.01em}.proto-root *,.proto-root *:before,.proto-root *:after{box-sizing:border-box}.proto-top-strip{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;gap:1rem}.proto-badge{display:inline-flex;align-items:center;gap:.55rem;padding:.4rem .9rem;border-radius:999px;background:linear-gradient(120deg,#7c5cff2e,#22d3ee2e);border:1px solid rgba(124,92,255,.4);font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#d8ddff}.proto-badge-dot{width:.42rem;height:.42rem;border-radius:50%;background:var(--proto-accent);box-shadow:0 0 12px var(--proto-accent-glow)}.proto-path-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.32rem .75rem;border-radius:999px;background:#0f122db3;border:1px solid rgba(255,255,255,.06);font-size:.72rem;color:var(--proto-text-soft)}.proto-page-header{margin-bottom:2rem}.proto-page-title{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:700;letter-spacing:-.01em;margin:0 0 .55rem;background:linear-gradient(120deg,#fff,#c4b8ff 60%,#7c5cff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.proto-page-subtitle{font-size:.95rem;color:var(--proto-text-soft);margin:0;max-width:60ch}.proto-chooser{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--proto-gap);margin-top:1rem}.proto-choice{position:relative;display:grid;grid-template-columns:auto 1fr;column-gap:.85rem;row-gap:.2rem;align-items:center;padding:.95rem 1.1rem;border-radius:var(--proto-radius);background:var(--proto-card);border:1px solid var(--proto-card-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:start;cursor:pointer;color:inherit;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;overflow:hidden}.proto-choice:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(130deg,rgba(124,92,255,.12) 0%,transparent 55%);pointer-events:none}.proto-choice:hover,.proto-choice:focus-visible{transform:translateY(-2px);border-color:var(--proto-card-border-strong);box-shadow:var(--proto-shadow-card);outline:none}.proto-choice-icon{grid-column:1;grid-row:1 / span 2;align-self:center;width:2.4rem;height:2.4rem;display:inline-flex;align-items:center;justify-content:center;border-radius:.7rem;background:linear-gradient(135deg,#7c5cff59,#22d3ee40);border:1px solid rgba(124,92,255,.45);font-size:1.2rem}.proto-choice-title{grid-column:2;grid-row:1;align-self:end;font-size:1rem;font-weight:700;margin:0}.proto-choice-sub{grid-column:2;grid-row:2;align-self:start;font-size:.8rem;color:var(--proto-text-soft);margin:0;line-height:1.45}.proto-choice--highlight{border-color:var(--proto-accent);box-shadow:0 0 0 1px var(--proto-accent-glow),0 10px 30px -18px var(--proto-accent-glow)}.proto-choice-badge{display:inline-block;margin-inline-start:.5rem;padding:.08rem .45rem;border-radius:999px;font-size:.66rem;font-weight:700;vertical-align:middle;color:#04121a;background:var(--proto-accent-cyan)}.proto-incomplete-escape{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .7rem;border-radius:.6rem;border:1px dashed rgba(251,191,36,.4);background:#fbbf2414}.proto-incomplete-escape-note{font-size:.78rem;color:var(--proto-text-soft)}.proto-secondary{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:600;padding:.32rem .7rem;border-radius:999px;color:var(--proto-warn);background:transparent;border:1px solid rgba(251,191,36,.5)}.proto-secondary:hover{background:#fbbf2429}.proto-field-hint{font-size:.74rem;color:var(--proto-text-faint);margin:.2rem 0 0}.proto-item-card{border:1px solid rgba(124,92,255,.22);border-radius:12px;padding:.55rem .7rem;margin:.55rem 0}.proto-item-card.is-active{border-color:#7c5cff8c;background:#7c5cff0f}.proto-item-card-head{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.proto-item-card-title{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:700;padding:.28rem .7rem;border-radius:999px;color:var(--proto-accent, #7c5cff);background:transparent;border:1px solid rgba(124,92,255,.5)}.proto-item-card.is-active .proto-item-card-title{background:#7c5cff29}.proto-item-card-summary{flex:1;min-width:10rem;font-size:.74rem;color:var(--proto-text-soft)}.proto-item-card-actions{display:inline-flex;gap:.35rem}.proto-add-procedure-item{margin-top:.4rem}.proto-item-editing-badge{font-size:.72rem;font-weight:700;color:var(--proto-accent, #7c5cff);padding:.28rem .7rem;border-radius:999px;border:1px dashed rgba(124,92,255,.5)}.proto-item-editor-title{margin:.55rem 0 .35rem;font-size:.86rem;font-weight:700;color:var(--proto-accent, #7c5cff)}.proto-item-duplicate-warning{color:var(--proto-warn)}.proto-pricing-mode-toggle{display:flex;align-items:center;gap:.45rem;cursor:pointer}.proto-input-static{display:flex;align-items:center;min-height:2.1rem;opacity:.9}.proto-stage-hint-item,.proto-field-hint-en{color:var(--proto-text-faint)}.proto-hint-warn{font-size:.74rem;color:var(--proto-warn);margin:.2rem 0 0}body:not(.theme-dark) .proto-incomplete-escape{background:#fef6e3;border-color:#e6c884}.proto-stepper{display:flex;align-items:center;gap:.6rem;margin:1.4rem 0 2rem;padding:.65rem 1rem;border-radius:999px;background:#0f122da6;border:1px solid rgba(255,255,255,.05);overflow-x:auto;scrollbar-width:none}.proto-stepper::-webkit-scrollbar{display:none}.proto-step{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .85rem;border-radius:999px;font-size:.78rem;color:var(--proto-text-faint);white-space:nowrap;border:1px solid transparent}.proto-step.is-active{color:#fff;background:linear-gradient(120deg,#7c5cff47,#22d3ee38);border-color:#7c5cff8c;box-shadow:0 0 18px -6px var(--proto-accent-glow)}.proto-step.is-done{color:var(--proto-text-soft)}.proto-step-num{width:1.4rem;height:1.4rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff0d;font-weight:700;font-size:.74rem}.proto-step.is-active .proto-step-num{background:var(--proto-accent);color:#fff}.proto-step.is-done .proto-step-num{background:var(--proto-success);color:#06281c}.proto-step-sep{width:1.2rem;height:1px;background:#ffffff14;flex-shrink:0}.proto-stage{position:relative;margin-bottom:.9rem;padding:1.1rem 1.35rem;border-radius:var(--proto-radius);background:var(--proto-card);border:1px solid var(--proto-card-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--proto-shadow-card);animation:proto-stage-in .36s ease-out}@keyframes proto-stage-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.proto-stage-head{display:flex;align-items:center;gap:.7rem;margin-bottom:.7rem}.proto-stage-token{width:1.9rem;height:1.9rem;display:inline-flex;align-items:center;justify-content:center;border-radius:.6rem;background:linear-gradient(135deg,var(--proto-accent),#4f3dd9);color:#fff;font-weight:700;font-size:.9rem;box-shadow:0 8px 22px -8px var(--proto-accent-glow);flex-shrink:0}.proto-stage-title{flex:1;margin:0;font-size:1.05rem;font-weight:700;color:#fff;letter-spacing:.005em}.proto-stage-hint{font-size:.78rem;color:var(--proto-text-faint)}.proto-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.6rem}.proto-field-label{font-size:.8rem;color:var(--proto-text-soft);font-weight:600;letter-spacing:.02em}.proto-input,.proto-select,.proto-textarea{width:100%;padding:.6rem .85rem;border-radius:.65rem;background:#080a1cb3;border:1px solid rgba(124,92,255,.18);color:var(--proto-text);font-size:.92rem;outline:none;transition:border-color .16s ease,box-shadow .16s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;color-scheme:dark}.proto-select option{background-color:#0e1130;color:#e7ebff}.proto-select option:checked,.proto-select option:hover{background-color:#4a3aaa;color:#fff}.proto-select option:disabled{color:#e7ebff66}.proto-select option[value=""]{color:#e7ebff8c}.proto-dropdown{position:relative;width:100%}.proto-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem .95rem;border-radius:.65rem;background:#080a1cb3;border:1px solid rgba(124,92,255,.18);color:var(--proto-text);font-size:.92rem;font-family:inherit;text-align:start;cursor:pointer;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.proto-dropdown-trigger:focus-visible,.proto-dropdown.is-open .proto-dropdown-trigger{border-color:var(--proto-accent);box-shadow:0 0 0 4px #7c5cff26}.proto-dropdown-trigger:disabled,.proto-dropdown.is-inactive .proto-dropdown-trigger{opacity:.6;cursor:not-allowed}.proto-dropdown-trigger-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proto-dropdown-trigger-label.is-placeholder{color:#e7ebff8c}.proto-dropdown-trigger-caret{flex-shrink:0;color:var(--proto-text-soft);font-size:.72rem;transition:transform .18s ease}.proto-dropdown.is-open .proto-dropdown-trigger-caret{transform:rotate(180deg);color:var(--proto-accent-cyan)}.proto-dropdown-popup{position:absolute;top:calc(100% + .35rem);inset-inline-start:0;inset-inline-end:0;z-index:50;list-style:none;margin:0;padding:.3rem 0;border-radius:.7rem;background:linear-gradient(180deg,#0e1130,#0a0c24);border:1px solid rgba(124,92,255,.32);box-shadow:0 18px 36px -14px #000000a6,0 0 0 1px #7c5cff14 inset;max-height:280px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(124,92,255,.45) transparent;animation:proto-dropdown-in .12s ease-out}@keyframes proto-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.proto-dropdown-popup::-webkit-scrollbar{width:8px}.proto-dropdown-popup::-webkit-scrollbar-thumb{background:#7c5cff73;border-radius:4px}.proto-dropdown-option{display:block;padding:.55rem .95rem;color:var(--proto-text);font-size:.9rem;cursor:pointer;-webkit-user-select:none;user-select:none}.proto-dropdown-option.is-highlighted{background:#7c5cff38;color:#fff}.proto-dropdown-option.is-selected{background:#22d3ee29;font-weight:700}.proto-dropdown-option.is-selected.is-highlighted{background:linear-gradient(120deg,#7c5cff47,#22d3ee38);color:#fff}.proto-dropdown-option.is-disabled{color:#e7ebff66;cursor:not-allowed}.proto-dropdown-empty{padding:.85rem .95rem;color:var(--proto-text-faint);font-size:.85rem;font-style:italic}.proto-input::placeholder,.proto-textarea::placeholder{color:var(--proto-text-faint)}.proto-input:focus,.proto-select:focus,.proto-textarea:focus{border-color:var(--proto-accent);box-shadow:0 0 0 4px #7c5cff26}.proto-select{background-image:linear-gradient(45deg,transparent 50%,var(--proto-text-soft) 50%),linear-gradient(135deg,var(--proto-text-soft) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-inline-end:2rem}[dir=rtl] .proto-select{background-position:16px 50%,11px 50%;padding-inline-end:.95rem;padding-inline-start:2rem}.proto-textarea{min-height:3.4rem;resize:vertical}.proto-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.proto-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.35rem}.proto-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.32rem .7rem;border-radius:999px;background:#7c5cff29;border:1px solid rgba(124,92,255,.35);font-size:.76rem;color:#e0d9ff}.proto-meta-row{display:flex;flex-wrap:wrap;gap:.65rem 1.3rem;margin:.4rem 0 0;font-size:.8rem;color:var(--proto-text-soft)}.proto-meta-row strong{color:var(--proto-text);font-weight:600}.proto-method{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:.75rem}.proto-method-btn{position:relative;padding:.75rem .95rem;border-radius:.75rem;background:#0b0e23b3;border:1px solid rgba(124,92,255,.18);color:var(--proto-text);cursor:pointer;text-align:start;transition:border-color .16s ease,transform .16s ease}.proto-method-btn:hover,.proto-method-btn:focus-visible{border-color:#7c5cff73;outline:none}.proto-method-btn.is-on{border-color:var(--proto-accent);background:linear-gradient(120deg,#7c5cff38,#22d3ee29);box-shadow:0 0 18px -6px var(--proto-accent-glow)}.proto-method-title{display:block;font-weight:700;margin-bottom:.15rem;font-size:.9rem}.proto-method-sub{font-size:.76rem;color:var(--proto-text-soft);line-height:1.4}.proto-preview{margin-top:.85rem;padding:.9rem 1rem;border-radius:.7rem;background:#080a1ca6;border:1px dashed rgba(124,92,255,.3)}.proto-preview-row{display:flex;justify-content:space-between;align-items:center;padding:.4rem 0;font-size:.85rem;border-bottom:1px solid rgba(255,255,255,.04)}.proto-preview-row:last-child{border-bottom:none}.proto-preview-label{color:var(--proto-text-soft)}.proto-preview-amount{font-weight:700;color:#fff}.proto-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--proto-gap);margin-top:1rem}.proto-plan-card{padding:1.4rem 1.45rem;border-radius:var(--proto-radius);background:var(--proto-card);border:1px solid var(--proto-card-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);cursor:pointer;text-align:start;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;color:inherit}.proto-plan-card:hover,.proto-plan-card:focus-visible{transform:translateY(-2px);border-color:var(--proto-card-border-strong);box-shadow:var(--proto-shadow-card);outline:none}.proto-plan-title{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:1rem;font-weight:700;margin:0 0 .35rem;color:#fff}.proto-plan-sub{font-size:.8rem;color:var(--proto-text-soft);margin:0 0 .85rem}.proto-plan-progress{position:relative;height:.45rem;border-radius:999px;background:#7c5cff2e;overflow:hidden;margin-bottom:.65rem}.proto-plan-progress:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:var(--progress, 0%);background:linear-gradient(90deg,var(--proto-accent),var(--proto-accent-cyan));border-radius:inherit;box-shadow:0 0 12px var(--proto-accent-glow)}[dir=rtl] .proto-plan-progress:after{right:0;left:auto}.proto-plan-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;font-size:.76rem}.proto-plan-meta-item{display:flex;flex-direction:column;gap:.15rem}.proto-plan-meta-label{color:var(--proto-text-faint);letter-spacing:.02em;text-transform:uppercase;font-size:.66rem}.proto-plan-meta-value{color:#fff;font-weight:600;font-size:.92rem}.proto-stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.7rem;margin-top:1rem}.proto-stat{padding:.95rem 1.05rem;border-radius:.85rem;background:#080a1ca6;border:1px solid rgba(255,255,255,.04)}.proto-stat-label{display:block;font-size:.7rem;color:var(--proto-text-faint);letter-spacing:.05em;text-transform:uppercase;margin-bottom:.3rem}.proto-stat-value{display:block;font-size:1.15rem;font-weight:700;color:#fff}.proto-stat-value.is-pos{color:var(--proto-success)}.proto-stat-value.is-warn{color:var(--proto-warn)}.proto-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.85rem;padding-top:1rem;border-top:1px dashed rgba(255,255,255,.06)}.proto-action{position:relative;display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .9rem;border-radius:var(--proto-radius-btn);background:#0f122dbf;border:1px solid rgba(124,92,255,.25);color:var(--proto-text);font-size:.84rem;cursor:not-allowed;opacity:.85}.proto-action[data-variant=primary]{background:var(--proto-accent-gradient);border-color:#7c5cff99;color:#fff;font-weight:700}.proto-action[data-variant=success]{background:var(--proto-success-fill);border-color:#10b98199;color:#fff;font-weight:700}.proto-action[data-variant=warn]{background:var(--proto-warn-fill);border-color:#d9770699;color:#1a1205;font-weight:700}.proto-action[data-variant=secondary]{background:#7c5cff1a;border-color:var(--proto-card-border);color:var(--proto-text);font-weight:600}.proto-action[data-variant=ghost]{background:transparent;border-color:var(--proto-card-border);color:var(--proto-text-soft);font-weight:500}.proto-action[data-variant=danger]{background:var(--proto-danger-fill);border-color:#e11d4899;color:#fff;font-weight:700}.proto-action[disabled]:not(.proto-action-live),.proto-action[aria-disabled=true]:not(.proto-action-live){background:#0f122d8c;border-color:#7c5cff2e;color:var(--proto-text-soft);font-weight:600;opacity:.7}.proto-action-tag{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.18rem .45rem;border-radius:999px;background:#0006;color:#c4b8ff;border:1px solid rgba(124,92,255,.45);margin-inline-start:.35rem}.proto-actions-note{display:block;width:100%;margin-top:.55rem;font-size:.72rem;color:var(--proto-text-faint)}.proto-back{background:none;border:none;padding:0;margin-bottom:1rem;color:var(--proto-accent-cyan);font-size:.82rem;cursor:pointer}.proto-back:hover{text-decoration:underline}.proto-empty{padding:2.5rem 1.5rem;text-align:center;color:var(--proto-text-soft);border-radius:var(--proto-radius);background:var(--proto-card);border:1px dashed var(--proto-card-border)}.proto-submit-row{display:flex;justify-content:flex-end;margin-top:1.25rem}.proto-submit{padding:.8rem 1.6rem;border-radius:.75rem;background:linear-gradient(120deg,var(--proto-accent),var(--proto-accent-cyan));border:none;color:#fff;font-weight:700;font-size:.95rem;cursor:not-allowed;box-shadow:0 12px 26px -10px var(--proto-accent-glow);opacity:.92}.proto-snapshot{display:grid;grid-template-columns:1fr;gap:.4rem;padding:1.1rem 1.25rem;border-radius:var(--proto-radius);background:linear-gradient(140deg,#7c5cff29,#080a1c73 80%);border:1px solid rgba(124,92,255,.32);margin-bottom:1rem}.proto-snapshot-row{display:flex;justify-content:space-between;font-size:.84rem}.proto-snapshot-row span:first-child{color:var(--proto-text-soft)}.proto-snapshot-row span:last-child{color:#fff;font-weight:600}.proto-chart-wrap{--proto-chart-tooth-fill: #2a3650;--proto-chart-tooth-stroke: #4a5a7a;--proto-chart-tooth-detail: #5a6a8a;--proto-chart-accent: #4d8eff;--proto-chart-hover-glow: rgba(77, 142, 255, .25);margin:.25rem 0 .75rem;padding:.6rem .5rem .5rem;border-radius:var(--proto-radius);background:radial-gradient(900px 700px at 50% 45%,rgba(77,142,255,.08),transparent 60%),linear-gradient(180deg,#0a0e1a,#111827);border:1px solid rgba(99,130,190,.18);box-shadow:var(--proto-shadow-card)}.proto-chart-svg{display:block;width:auto;max-width:100%;height:auto;max-height:460px;margin:0 auto;-webkit-user-select:none;user-select:none}.proto-tooth{cursor:pointer;transition:transform .18s cubic-bezier(.4,0,.2,1);transform-origin:center;transform-box:fill-box;outline:none}.proto-tooth:hover{transform:scale(1.03)}.proto-tooth:focus-visible .proto-tooth-stroke{stroke:#fff;stroke-width:2.2}.proto-tooth-fill{fill:var(--proto-chart-tooth-fill);opacity:.5;transition:all .18s cubic-bezier(.4,0,.2,1)}.proto-tooth-stroke{fill:none;stroke:var(--proto-chart-tooth-stroke);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;transition:all .18s cubic-bezier(.4,0,.2,1)}.proto-tooth-detail{fill:none;stroke:var(--proto-chart-tooth-detail);stroke-width:.6;stroke-linecap:round;stroke-linejoin:round;opacity:.4;transition:all .18s cubic-bezier(.4,0,.2,1)}.proto-tooth:hover .proto-tooth-fill{fill:#4d8eff26;opacity:.85}.proto-tooth:hover .proto-tooth-stroke{stroke:var(--proto-chart-accent);stroke-width:1.8;filter:drop-shadow(0 0 4px var(--proto-chart-hover-glow))}.proto-tooth:hover .proto-tooth-detail{stroke:#4d8eff8c;opacity:.7}.proto-tooth.is-on .proto-tooth-fill{fill:#4d8eff38;opacity:.95}.proto-tooth.is-on .proto-tooth-stroke{stroke:#fff;stroke-width:2;filter:drop-shadow(0 0 8px rgba(255,255,255,.35))}.proto-tooth.is-on .proto-tooth-detail{stroke:#ffffff73;opacity:.85}.proto-tooth.is-occupied .proto-tooth-stroke{stroke:#fbbf24d9;stroke-width:1.6;stroke-dasharray:3 2}.proto-tooth.is-occupied .proto-tooth-fill{fill:#fbbf241f}.proto-tooth.is-occupied.is-on .proto-tooth-stroke{stroke:#fff;stroke-dasharray:none}body:not(.theme-dark) .proto-tooth.is-occupied .proto-tooth-stroke{stroke:#b4780ae6}.proto-chip-occupied{color:var(--proto-warn);border-color:#fbbf2480}.proto-tooth-label{fill:#8b97b0d9;font-family:-apple-system,SF Pro Display,Inter,sans-serif;font-size:11px;font-weight:600;letter-spacing:.02em;pointer-events:none;transition:fill .18s,font-size .18s}.proto-tooth-label.is-on{fill:#fff;font-size:13px}.proto-arch-label{fill:#c4cce2bf;font-family:-apple-system,SF Pro Display,sans-serif;font-size:11px;font-weight:600;letter-spacing:.32em}.proto-emblem-text{fill:#8b97b0bf;font-family:-apple-system,SF Pro Display,Inter,sans-serif;font-size:8px;font-weight:700;letter-spacing:.2em}.proto-chart-selection{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .65rem;margin-top:.85rem;padding:.6rem .75rem;border-radius:.7rem;background:#080a1c99;border:1px dashed rgba(124,92,255,.28)}.proto-chart-selection-empty{font-size:.78rem;color:var(--proto-text-faint)}.proto-chart-selection-label{font-size:.78rem;color:var(--proto-text-soft);font-weight:600}.proto-chart-selection-chips{display:flex;flex-wrap:wrap;gap:.35rem}.proto-chart-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-family:inherit}.proto-chart-chip:hover{background:#7c5cff47}.proto-chart-chip-x{margin-inline-start:.3rem;opacity:.7;font-size:.85rem;line-height:1}.proto-chart-clear{margin-inline-start:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#f472b61f;border:1px solid rgba(244,114,182,.35);color:#f9a8d4;padding:.32rem .7rem;border-radius:999px;font-size:.72rem;cursor:pointer;font-family:inherit}.proto-chart-clear:hover{background:#f472b638}.proto-chart-arch-tools{display:flex;flex-wrap:wrap;align-items:stretch;gap:.5rem .75rem;margin-top:.75rem}.proto-chart-quick{display:flex;flex-direction:column;gap:.35rem;padding:.45rem .6rem;border-radius:.6rem;background:#080a1c59;border:1px solid rgba(124,92,255,.16)}.proto-chart-quick-caption{font-size:.66rem;font-weight:600;letter-spacing:.02em;color:var(--proto-text-faint)}.proto-chart-arch-group{display:flex;flex-wrap:wrap;gap:.4rem}.proto-chart-arch-state{margin-inline-start:auto}body:not(.theme-dark) .proto-chart-quick{background:#f1f5fd;border-color:#d5e0ef}.proto-chart-arch-btn,.proto-chart-state-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-family:inherit;font-size:.74rem;padding:.36rem .8rem;border-radius:999px;color:var(--proto-text-soft);background:#7c5cff1a;border:1px solid rgba(124,92,255,.3);transition:background .15s ease,color .15s ease,border-color .15s ease}.proto-chart-state-btn{display:inline-flex;align-items:center;gap:.35rem}.proto-chart-state-icon{flex:none;display:block}.proto-chart-arch-btn:hover,.proto-chart-state-btn:hover{background:#7c5cff38;color:var(--proto-text)}.proto-chart-arch-btn.is-on{background:var(--proto-accent-gradient);border-color:var(--proto-card-border-strong);color:#fff;box-shadow:0 0 14px -4px var(--proto-accent-glow)}.proto-chart-state-btn{background:#22d3ee14;border-color:#22d3ee4d}.proto-chart-state-btn:hover{background:#22d3ee2e}.proto-chart-state-btn.is-on{background:#22d3eee6;border-color:#22d3eee6;color:#04121a;font-weight:600}.proto-chart-clinical-tag{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:600;color:#04121a;background:var(--proto-accent-cyan);padding:.24rem .6rem;border-radius:999px}.proto-chart-clinical-tag.tag-partial{background:var(--proto-warn)}.proto-chart-clinical-banner{display:flex;align-items:center;gap:.55rem;margin-bottom:.7rem;padding:.5rem .8rem;border-radius:.7rem;border:1px solid transparent;font-size:.82rem}.proto-chart-clinical-banner.tag-edentulous{color:#062330;background:linear-gradient(120deg,#22d3eef2,#0ea5e9e6);border-color:#22d3ee99;box-shadow:0 0 18px -6px #22d3eeb3}.proto-chart-clinical-banner.tag-partial{color:#2c1a02;background:linear-gradient(120deg,#fbbf24f2,#f59e0be6);border-color:#fbbf2499;box-shadow:0 0 18px -6px #fbbf24b3}.proto-chart-clinical-banner-icon{display:inline-flex}.proto-chart-clinical-banner-icon svg{width:22px;height:22px}.proto-chart-clinical-banner-label{font-weight:800;letter-spacing:.01em}.proto-chart-clinical-banner-hint{font-size:.68rem;font-weight:600;opacity:.72}.proto-chart-clinical-banner-clear{margin-inline-start:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-family:inherit;font-size:1rem;line-height:1;width:1.4rem;height:1.4rem;border-radius:999px;border:none;color:inherit;background:#00000029}.proto-chart-clinical-banner-clear:hover{background:#00000047}.proto-chart-arch-summary{font-size:.86rem;font-weight:700;color:var(--proto-text);background:#7c5cff2e;border:1px solid var(--proto-card-border-strong);padding:.28rem .7rem;border-radius:999px}.proto-chart-arch-count{font-weight:500;font-size:.76rem;color:var(--proto-text-soft)}body:not(.theme-dark) .proto-chart-arch-btn,body:not(.theme-dark) .proto-chart-state-btn{color:#33456b;background:#eef2fe;border-color:#cbd9ea}body:not(.theme-dark) .proto-chart-arch-btn.is-on{color:#fff}body:not(.theme-dark) .proto-chart-arch-summary{color:#10233f;background:#e6ecfe}.proto-catalog-source{display:inline-block;margin-top:.4rem;font-size:.72rem;color:var(--proto-text-faint);letter-spacing:.02em}.proto-catalog-source[data-source=live]{color:var(--proto-accent-cyan)}.proto-catalog-source[data-source=fallback]{color:var(--proto-warn)}.proto-category-chip{display:inline-flex;align-items:center;gap:.55rem;margin:.1rem 0 .9rem;padding:.45rem .75rem;border-radius:.6rem;background:linear-gradient(120deg,#7c5cff24,#22d3ee1f);border:1px solid rgba(124,92,255,.32);font-size:.82rem}.proto-category-chip-label{color:var(--proto-text-faint);letter-spacing:.05em;font-size:.7rem;text-transform:uppercase}.proto-category-chip-value{color:#fff;font-weight:700}.proto-category-chip-hint{color:var(--proto-text-faint);font-size:.72rem;margin-inline-start:.3rem}.proto-cat-filter{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.6rem}.proto-cat-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-family:inherit;font-size:.76rem;padding:.28rem .7rem;border-radius:999px;background:#080a1c99;border:1px solid rgba(124,92,255,.22);color:var(--proto-text-soft);transition:border-color .14s ease,background .14s ease,color .14s ease}.proto-cat-chip:hover,.proto-cat-chip:focus-visible{border-color:#7c5cff80;color:var(--proto-text);outline:none}.proto-cat-chip.is-on{background:var(--proto-accent-gradient);border-color:var(--proto-accent);color:#fff;font-weight:600}.proto-pricing{margin:0 0 .85rem;padding:.9rem 1rem;border-radius:.75rem;background:#080a1c99;border:1px dashed rgba(124,92,255,.3);display:flex;flex-direction:column;gap:.35rem}.proto-pricing-row{display:flex;justify-content:space-between;align-items:baseline;font-size:.88rem}.proto-pricing-toggle{display:flex;align-items:center;gap:.55rem;margin-bottom:.35rem;color:#fff;font-size:.84rem;cursor:pointer}.proto-pricing-row-total{margin-top:.4rem;padding-top:.55rem;border-top:1px solid rgba(124,92,255,.22);font-size:1rem}.proto-pricing-label{color:var(--proto-text-soft)}.proto-pricing-row-total .proto-pricing-label{color:#fff;font-weight:700}.proto-pricing-value{color:#fff;font-weight:600;font-family:-apple-system,SF Mono,Menlo,monospace}.proto-pricing-row-total .proto-pricing-value{color:var(--proto-accent-cyan);font-weight:700}.proto-pricing-note{margin-top:.3rem;font-size:.72rem;color:var(--proto-text-faint)}.proto-action-live{cursor:pointer}.proto-action-live[disabled]{cursor:progress;opacity:.7}.proto-action-secondary{cursor:pointer;background:transparent;border:1px solid var(--proto-card-border);color:var(--proto-text-soft);font-weight:500;opacity:.85}.proto-action-secondary:hover{opacity:1;border-color:var(--proto-card-border-strong)}.proto-invoice-preparing{display:flex;align-items:center;gap:.5rem;margin-top:.85rem;padding:.6rem .9rem;border-radius:.7rem;border:1px dashed rgba(124,92,255,.3);color:var(--proto-text-soft);font-size:.85rem}.proto-invoice-preparing-spinner{display:inline-block;animation:proto-spin 1.2s linear infinite}@keyframes proto-spin{to{transform:rotate(360deg)}}.proto-collapse{margin-top:.4rem}.proto-collapse-summary{cursor:pointer;font-size:.8rem;color:var(--proto-text-soft);list-style:none;-webkit-user-select:none;user-select:none;padding:.15rem 0}.proto-collapse-summary::-webkit-details-marker{display:none}.proto-collapse-summary:before{content:"▾ ";opacity:.7}.proto-collapse[open]>.proto-collapse-summary:before{content:"▴ "}.proto-collapse .proto-save-success-id{display:block;margin-top:.25rem}.proto-save-success{display:flex;align-items:center;gap:.85rem;margin:0 0 .85rem;padding:1rem 1.1rem;border-radius:.75rem;background:linear-gradient(120deg,#34d39929,#22d3ee1a);border:1px solid rgba(52,211,153,.45);color:#e7ebff}.proto-payment-block{margin:.85rem 0;padding:1rem 1.1rem;border-radius:.75rem;background:linear-gradient(120deg,#22d3ee1a,#6366f114);border:1px solid rgba(34,211,238,.32);color:#e7ebff;display:flex;flex-direction:column;gap:.65rem}.proto-payment-headline{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.45rem .75rem;font-size:.9rem;color:#e7ebff}.proto-payment-headline span{padding:.45rem .55rem;border-radius:.5rem;background:#0f172a38;border:1px solid rgba(34,211,238,.16)}.proto-step-indicator{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;margin:0;padding:0;list-style:none}.proto-step-indicator li{display:flex;align-items:center;gap:.4rem;font-size:.88rem;color:#9fb2d6;opacity:.7}.proto-step-indicator li[data-active=true]{opacity:1;color:#e7ebff;font-weight:600}.proto-step-indicator li[data-done=true]{opacity:1;color:#34d399}.proto-step-indicator .proto-step-num{display:inline-flex;align-items:center;justify-content:center;width:1.4rem;height:1.4rem;border-radius:999px;font-size:.78rem;font-weight:700;background:#0f172a4d;border:1px solid rgba(124,92,255,.4);color:inherit}.proto-step-indicator li[data-active=true] .proto-step-num{background:#7c5cff47;border-color:#7c5cffd9}.proto-step-indicator li[data-done=true] .proto-step-num{background:#34d39933;border-color:#34d399bf}body:not(.theme-dark) .proto-step-indicator li{color:#5b6b8c}body:not(.theme-dark) .proto-step-indicator li[data-active=true]{color:#10233f}body:not(.theme-dark) .proto-step-indicator .proto-step-num{background:#eef2ff;color:#10233f}.proto-payment-summary{display:flex;flex-wrap:wrap;gap:1rem;font-size:.92rem;color:#cde7ef}.proto-invoice-breakdown{margin-top:.5rem}.proto-invoice-breakdown-note{font-size:.82rem;color:var(--proto-text-soft);padding:.35rem 0}.proto-invoice-breakdown-list{list-style:none;margin:.35rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem}.proto-invoice-breakdown-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .6rem;padding:.4rem .5rem;border-radius:.5rem;background:#0f172a38;border:1px solid rgba(34,211,238,.14);font-size:.86rem}.proto-invoice-breakdown-desc{flex:1 1 auto;min-width:0}.proto-invoice-breakdown-tooth{flex:0 0 auto;font-size:.78rem;color:var(--proto-text-soft);opacity:.85}.proto-invoice-breakdown-amount{flex:0 0 auto;font-variant-numeric:tabular-nums;font-weight:600}.proto-invoice-breakdown-row[data-discount=true] .proto-invoice-breakdown-amount{color:#f59e0b}.proto-payment-panel{display:flex;flex-direction:column;gap:.55rem;padding:.6rem .7rem;border-radius:.55rem;background:#0f172a59;border:1px solid rgba(34,211,238,.22)}.proto-payment-field{display:flex;align-items:center;gap:.55rem;color:#cde7ef}.proto-payment-actions{display:flex;gap:.55rem;flex-wrap:wrap}.proto-payment-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.proto-payment-row{display:grid;grid-template-columns:1fr auto auto;gap:.85rem;padding:.45rem .6rem;border-radius:.45rem;background:#0f172a47;border:1px solid rgba(34,211,238,.18);font-size:.9rem;color:#cde7ef}.proto-invoice-success{display:flex;align-items:center;gap:.85rem;margin:0 0 .85rem;padding:1rem 1.1rem;border-radius:.75rem;background:linear-gradient(120deg,#facc1529,#f59e0b1a);border:1px solid rgba(250,204,21,.45);color:#fef9c3}.proto-invoice-success .proto-save-success-icon{background:#facc1547}.proto-save-success-icon{width:2.2rem;height:2.2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#34d39947;color:#34d399;font-weight:700;font-size:1.1rem;flex-shrink:0}.proto-save-success-text{display:flex;flex-direction:column;gap:.2rem;flex:1}.proto-save-success-text strong{font-size:.95rem;color:#fff}.proto-save-success-id{font-size:.75rem;color:var(--proto-text-soft);font-family:-apple-system,SF Mono,Menlo,monospace;letter-spacing:.02em}.proto-save-success-note{font-size:.75rem;color:var(--proto-text-faint);margin-top:.2rem}.proto-save-success-cta{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#34d39938;border:1px solid rgba(52,211,153,.55);color:#34d399;padding:.5rem .95rem;border-radius:.55rem;font-size:.82rem;font-weight:700;cursor:pointer;flex-shrink:0}.proto-save-success-cta:hover{background:#34d39952}.proto-save-error{display:flex;flex-direction:column;gap:.3rem;margin:0 0 .85rem;padding:.85rem 1rem;border-radius:.7rem;background:#f472b614;border:1px solid rgba(244,114,182,.4);color:#f9a8d4;font-size:.85rem}.proto-save-error strong{color:#fff;font-size:.95rem}.proto-save-error-meta{font-size:.74rem;color:var(--proto-text-faint)}.proto-stage2-modes{display:inline-flex;border-radius:999px;padding:.2rem;background:#080a1ca6;border:1px solid rgba(124,92,255,.2);margin-bottom:.85rem}.proto-stage2-mode{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--proto-text-soft);padding:.32rem .85rem;border-radius:999px;font-size:.78rem;cursor:pointer;font-family:inherit}.proto-stage2-mode.is-on{background:var(--proto-accent-gradient);color:#fff;box-shadow:0 4px 14px -6px var(--proto-accent-glow)}body:not(.theme-dark) .proto-root{--proto-bg: #eef5ff;--proto-bg-soft: #f8fbff;--proto-card: #f8fbff;--proto-card-border: #cbd9ea;--proto-card-border-strong: rgba(124, 92, 255, .55);--proto-text: #10233f;--proto-text-soft: #334e68;--proto-text-faint: #64748b;--proto-shadow-card: 0 12px 30px -22px rgba(2, 6, 23, .25), 0 1px 0 rgba(2, 6, 23, .03) inset;color:#10233f;background:radial-gradient(900px 600px at 85% -10%,rgba(124,92,255,.07),transparent 60%),radial-gradient(700px 500px at 5% 105%,rgba(34,211,238,.06),transparent 65%),linear-gradient(180deg,#eef5ff,#f6f9ff)}body:not(.theme-dark) .proto-choice{box-shadow:0 1px 2px #0206170a}body:not(.theme-dark) .proto-choice:hover,body:not(.theme-dark) .proto-choice:focus-visible{border-color:#7c5cff8c;box-shadow:0 14px 30px -18px #7c5cff66}body:not(.theme-dark) .proto-choice:after{background:linear-gradient(130deg,rgba(124,92,255,.06) 0%,transparent 55%)}body:not(.theme-dark) .proto-page-title{background:linear-gradient(120deg,#16213e,#6d28d9 70%,#7c5cff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}body:not(.theme-dark) .proto-path-pill,body:not(.theme-dark) .proto-stepper,body:not(.theme-dark) .proto-preview,body:not(.theme-dark) .proto-stat,body:not(.theme-dark) .proto-snapshot,body:not(.theme-dark) .proto-chart-selection,body:not(.theme-dark) .proto-pricing,body:not(.theme-dark) .proto-payment-panel,body:not(.theme-dark) .proto-payment-row,body:not(.theme-dark) .proto-stage2-modes{background:#edf4fd;border-color:#cbd9ea}body:not(.theme-dark) .proto-textarea,body:not(.theme-dark) .proto-input,body:not(.theme-dark) .proto-select,body:not(.theme-dark) .proto-dropdown-trigger,body:not(.theme-dark) .proto-dropdown-popup{background:#fbfdff;border-color:#cbd9ea;color:#10233f}body:not(.theme-dark) .proto-select option{background-color:#fbfdff;color:#10233f}body:not(.theme-dark) .proto-select option:checked,body:not(.theme-dark) .proto-select option:hover{background-color:#dbeafe;color:#10233f}body:not(.theme-dark) .proto-select option:disabled{color:#8091a7}body:not(.theme-dark) .proto-select option[value=""]{color:#64748b}body:not(.theme-dark) .proto-step-num{background:#0f172a0f}body:not(.theme-dark) .proto-action{background:#fbfdff;border-color:#cbd9ea}body:not(.theme-dark) .proto-stage-title,body:not(.theme-dark) .proto-plan-title,body:not(.theme-dark) .proto-plan-meta-value,body:not(.theme-dark) .proto-stat-value,body:not(.theme-dark) .proto-preview-amount,body:not(.theme-dark) .proto-category-chip-value,body:not(.theme-dark) .proto-pricing-toggle,body:not(.theme-dark) .proto-pricing-value,body:not(.theme-dark) .proto-pricing-row-total .proto-pricing-label,body:not(.theme-dark) .proto-method-title,body:not(.theme-dark) .proto-choice-title,body:not(.theme-dark) .proto-save-success-text strong,body:not(.theme-dark) .proto-save-error strong{color:#10233f}body:not(.theme-dark) .proto-chip{color:var(--text-main, #1a1a2e);background:#7c5cff1a;border-color:#7c5cff4d}body:not(.theme-dark) .proto-cat-chip{background:#edf4fd;border-color:#cbd9ea;color:#334e68}body:not(.theme-dark) .proto-chart-wrap{--proto-chart-tooth-fill: #cbd5e1;--proto-chart-tooth-stroke: #64748b;--proto-chart-tooth-detail: #94a3b8;background:radial-gradient(900px 700px at 50% 45%,rgba(77,142,255,.06),transparent 60%),linear-gradient(180deg,#f8fbff,#edf4fd);border-color:#cbd9ea}body:not(.theme-dark) .proto-tooth-label{fill:#475569e6}body:not(.theme-dark) .proto-tooth-label.is-on{fill:#1e293b}body:not(.theme-dark) .proto-arch-label{fill:#475569cc}body:not(.theme-dark) .proto-emblem-text{fill:#64748bbf}body:not(.theme-dark) .proto-tooth.is-on .proto-tooth-stroke{stroke:#4d8eff;filter:drop-shadow(0 0 6px rgba(77,142,255,.4))}body:not(.theme-dark) .proto-tooth.is-on .proto-tooth-detail{stroke:#4d8eff8c}body:not(.theme-dark) .proto-dropdown-option.is-highlighted,body:not(.theme-dark) .proto-dropdown-option.is-selected.is-highlighted{color:#10233f;background:#7c5cff1f}body:not(.theme-dark) .proto-dropdown-option.is-selected{color:#10233f;background:#22d3ee1f}body:not(.theme-dark) .proto-dropdown-option.is-disabled{color:#8091a7}body:not(.theme-dark) .proto-dropdown-empty,body:not(.theme-dark) .proto-dropdown-trigger-label.is-placeholder{color:#64748b}body:not(.theme-dark) .proto-save-success,body:not(.theme-dark) .proto-payment-block,body:not(.theme-dark) .proto-payment-headline,body:not(.theme-dark) .proto-payment-summary,body:not(.theme-dark) .proto-payment-field,body:not(.theme-dark) .proto-payment-row{color:#10233f}body:not(.theme-dark) .proto-payment-headline span{background:#f8fbff;border-color:#cbd9ea}body:not(.theme-dark) .proto-invoice-success{color:#854d0e}body:not(.theme-dark) .proto-save-success-id,body:not(.theme-dark) .proto-save-success-note,body:not(.theme-dark) .proto-actions-note,body:not(.theme-dark) .proto-collapse-summary,body:not(.theme-dark) .proto-method-sub{color:#334e68}body:not(.theme-dark) .proto-action-tag{background:#eef5ff;color:#4f46e5;border-color:#7c5cff47}body:not(.theme-dark) .proto-action-secondary{background:#f8fbff;color:#334e68;border-color:#9db4d4}body:not(.theme-dark) .proto-action[data-variant=primary],body:not(.theme-dark) .proto-action-live[data-variant=primary]{background:linear-gradient(120deg,#6d28d9,#4c1d95);border-color:#4c1d95;color:#fff;font-weight:700;opacity:1}body:not(.theme-dark) .proto-action[data-variant=success],body:not(.theme-dark) .proto-action-live[data-variant=success]{background:linear-gradient(120deg,#0e9f6e,#047857);border-color:#047857;color:#fff;font-weight:700;opacity:1}body:not(.theme-dark) .proto-action[data-variant=warn]{background:linear-gradient(120deg,#f59e0b,#d97706);border-color:#d97706;color:#1a1205;font-weight:700;opacity:1}body:not(.theme-dark) .proto-action[data-variant=danger]{background:linear-gradient(120deg,#f43f5e,#e11d48);border-color:#e11d48;color:#fff;font-weight:700;opacity:1}body:not(.theme-dark) .proto-action[data-variant=secondary]{background:#eef4ff;border-color:#9db4d4;color:#10233f;font-weight:600;opacity:1}body:not(.theme-dark) .proto-action[data-variant=ghost]{background:transparent;border-color:#9db4d4;color:#334e68;font-weight:500;opacity:1}body:not(.theme-dark) .proto-action.proto-action-secondary{background:#f8fbff;border-color:#9db4d4;color:#334e68;font-weight:500}body:not(.theme-dark) a.proto-action-live[data-variant=primary],body:not(.theme-dark) a.proto-action[data-variant=primary]{text-decoration:none}body:not(.theme-dark) .proto-action[data-variant=primary]:hover,body:not(.theme-dark) .proto-action-live[data-variant=primary]:hover,body:not(.theme-dark) .proto-action-live[data-variant=success]:hover{filter:brightness(1.06)}body:not(.theme-dark) .proto-action[disabled],body:not(.theme-dark) .proto-action[aria-disabled=true]{background:#e2e8f0;border-color:#cbd9ea;color:#475569;font-weight:600;opacity:.8}body:not(.theme-dark) .proto-invoice-preparing{color:#334e68}body:not(.theme-dark) .proto-input,body:not(.theme-dark) .proto-select,body:not(.theme-dark) .proto-textarea,body:not(.theme-dark) .proto-dropdown-trigger{color-scheme:light}.proto-clinical-panel{margin-top:.85rem;padding:.85rem .95rem;border:1px solid var(--border-color, #e2e8f0);border-radius:.6rem;background:var(--bg-section, rgba(148, 163, 184, .06))}.proto-clinical-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}.proto-clinical-title{margin:0;font-size:.92rem;font-weight:700;color:var(--text-brand, #0f3460)}.proto-clinical-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem .75rem}.proto-clinical-general{margin-bottom:.75rem}.proto-clinical-field{display:flex;flex-direction:column;gap:.25rem;min-width:0}.proto-clinical-field-label{font-size:.78rem;font-weight:600;color:var(--text-secondary, #64748b)}.proto-clinical-input{width:100%;box-sizing:border-box}.proto-clinical-field-value{font-size:.85rem;color:var(--text-main, #0f172a);overflow-wrap:anywhere}.proto-prev-history{margin-top:1rem;display:flex;flex-direction:column;gap:.6rem}.proto-prev-session{padding:.65rem .8rem;border:1px dashed var(--border-color, #cbd5e1);border-radius:.6rem;background:var(--bg-muted, rgba(148, 163, 184, .1))}.proto-prev-session-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem .75rem;margin-bottom:.5rem}.proto-prev-session-title{font-size:.9rem;font-weight:700;color:var(--text-brand, #0f3460)}.proto-prev-session-date{font-size:.78rem;color:var(--text-secondary, #64748b)}.proto-prev-session-readonly-tag{margin-inline-start:auto;font-size:.72rem;font-weight:600;color:var(--text-secondary, #64748b);padding:.1rem .45rem;border:1px solid var(--border-color, #cbd5e1);border-radius:999px;background:var(--bg-section, rgba(255, 255, 255, .5))}.proto-prev-session-caption{margin:0 0 .5rem;font-size:.78rem;font-weight:600;color:var(--text-secondary, #64748b)}.proto-tooth-status-suggestions{display:flex;flex-direction:column;gap:.6rem;margin:0 0 .85rem}.proto-tooth-status-suggestion{padding:.85rem 1rem;border-radius:.75rem;border:1px solid rgba(148,163,184,.35);background:#94a3b814}.proto-tooth-status-suggestion-title{margin:0 0 .35rem;font-size:.9rem;font-weight:700}.proto-tooth-status-suggestion-body{margin:0 0 .5rem;font-size:.85rem;line-height:1.6}.proto-tooth-status-suggestion-warning,.proto-tooth-status-suggestion-success,.proto-tooth-status-suggestion-error{margin:0 0 .5rem;font-size:.82rem;line-height:1.55}.proto-tooth-status-suggestion-warning{color:var(--warning, #b45309)}.proto-tooth-status-suggestion-success{color:var(--success, #047857)}.proto-tooth-status-suggestion-error{color:var(--danger, #b91c1c)}.proto-tooth-status-suggestion-conflict{margin:.35rem 0 0;padding-inline-start:1.1rem}.proto-tooth-status-suggestion-actions{display:flex;flex-wrap:wrap;gap:.5rem}.proto-tooth .proto-tooth-status-dot{fill:var(--tooth-status-marker, #38bdf8);stroke:var(--surface, #0b1220);stroke-width:1.4;opacity:.95;pointer-events:none}.proto-tooth[data-tooth-status=extracted] .proto-tooth-status-dot,.proto-tooth[data-tooth-status=missing_congenital] .proto-tooth-status-dot{fill:var(--tooth-status-marker-terminal, #f87171)}.proto-tooth[data-tooth-status=implant] .proto-tooth-status-dot,.proto-tooth[data-tooth-status=implant_crown] .proto-tooth-status-dot,.proto-tooth[data-tooth-status=crown] .proto-tooth-status-dot{fill:var(--tooth-status-marker-prosthetic, #c084fc)}.proto-tooth[data-tooth-status=caries] .proto-tooth-status-dot{fill:var(--tooth-status-marker-caries, #fbbf24)}.proto-tooth[data-tooth-status=restored] .proto-tooth-status-dot,.proto-tooth[data-tooth-status=root_canal_treated] .proto-tooth-status-dot,.proto-tooth[data-tooth-status=sound] .proto-tooth-status-dot{fill:var(--tooth-status-marker-restored, #34d399)}.proto-tooth.has-official-status .proto-tooth-stroke{stroke-dasharray:1 1.5}.proto-tooth.has-official-status.is-on .proto-tooth-stroke{stroke-dasharray:none}.proto-tooth-status-caption{min-height:1.2rem;margin:0 0 .4rem;font-size:.8rem;line-height:1.5}.proto-tooth-status-caption-loading{color:var(--text-secondary, #94a3b8)}.proto-tooth-status-caption-error{color:var(--danger, #f87171)}.proto-tooth-status-retry{margin-inline-start:.5rem;font-size:.78rem;padding:.15rem .5rem}.patient-dental-chart{--patient-chart-surface: var(--app-surface, var(--bg-card, #ffffff));--patient-chart-surface-muted: var(--app-surface-muted, var(--bg-section, #f8fafc));--patient-chart-text: var(--app-text, var(--text-primary, #1e293b));--patient-chart-muted: var(--app-text-muted, var(--text-secondary, #64748b));--patient-chart-border: var(--app-border, var(--border-color, #dbe3ee));--patient-chart-primary: var(--app-primary, var(--primary, #0f3460));--patient-chart-focus: var(--app-focus-ring, #3b82f6);--patient-chart-danger: var(--danger, #b91c1c);--patient-chart-warning: var(--warning, #a16207);color:var(--patient-chart-text);display:grid;gap:1rem;min-width:0}.patient-dental-chart__header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.patient-dental-chart__header h2{color:var(--patient-chart-text);font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.25;margin:.25rem 0 .35rem}.patient-dental-chart__header p{color:var(--patient-chart-muted);line-height:1.65;margin:0}.patient-dental-chart__eyebrow{align-items:center;display:flex;gap:.5rem}.patient-dental-chart__eyebrow span{background:var(--app-primary-soft, rgba(15, 52, 96, .08));border:1px solid color-mix(in srgb,var(--patient-chart-primary) 30%,transparent);border-radius:999px;color:var(--patient-chart-primary);font-size:.72rem;font-weight:750;letter-spacing:.04em;padding:.25rem .65rem;text-transform:uppercase}.patient-dental-chart__archived-note{background:#f59e0b1a;border:1px solid rgba(217,119,6,.28);border-radius:.65rem;color:var(--patient-chart-warning)!important;flex:0 1 22rem;font-size:.82rem;padding:.55rem .75rem}.patient-dental-chart__workspace{align-items:stretch;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(16rem,21rem)}.patient-dental-chart__chart-stage,.patient-dental-chart__inspector,.patient-dental-chart__legend{background:var(--patient-chart-surface-muted);border:1px solid var(--patient-chart-border);border-radius:.9rem}.patient-dental-chart__chart-stage{min-width:0;padding:.5rem}.patient-dental-chart .proto-chart-wrap{--proto-radius: .8rem;--proto-shadow-card: none;height:100%;margin:0}.patient-dental-chart .proto-chart-svg{max-height:560px}.patient-dental-chart .proto-tooth.is-inspected .proto-tooth-fill{fill:#4d8eff40;opacity:1}.patient-dental-chart .proto-tooth.is-inspected .proto-tooth-stroke{filter:drop-shadow(0 0 7px rgba(77,142,255,.42));stroke:#fff;stroke-dasharray:none;stroke-width:2.2}.patient-dental-chart .proto-tooth-label.is-inspected{fill:#fff;font-size:13px}body:not(.theme-dark) .patient-dental-chart .proto-tooth.is-inspected .proto-tooth-stroke{filter:drop-shadow(0 0 6px rgba(77,142,255,.35));stroke:#2563eb}body:not(.theme-dark) .patient-dental-chart .proto-tooth-label.is-inspected{fill:#1d4ed8}.patient-dental-chart .proto-tooth[data-tooth-status=unknown] .proto-tooth-status-dot{fill:transparent;opacity:.82;stroke:var(--patient-chart-muted);stroke-width:2.1}.patient-dental-chart__inspector{padding:1rem}.patient-dental-chart__inspector h3,.patient-dental-chart__legend h3,.patient-dental-chart__state h3{color:var(--patient-chart-text);font-size:1rem;line-height:1.4;margin:0}.patient-dental-chart__inspector-heading{align-items:flex-start;border-bottom:1px solid var(--patient-chart-border);display:flex;gap:.75rem;justify-content:space-between;padding-bottom:.9rem}.patient-dental-chart__tooth-name{color:var(--patient-chart-muted);font-size:.84rem;line-height:1.5;margin:.25rem 0 0}.patient-dental-chart__tooth-number{align-items:center;background:var(--patient-chart-primary);border-radius:.65rem;color:#fff;display:inline-flex;font-size:1rem;font-weight:800;justify-content:center;min-height:2.35rem;min-width:2.7rem;padding:.35rem .6rem}.patient-dental-chart__facts{display:grid;gap:0;margin:.75rem 0 0}.patient-dental-chart__facts>div{align-items:baseline;border-bottom:1px solid var(--patient-chart-border);display:grid;gap:.75rem;grid-template-columns:minmax(7rem,.8fr) minmax(0,1fr);padding:.7rem 0}.patient-dental-chart__facts>div:last-child{border-bottom:0}.patient-dental-chart__facts dt{color:var(--patient-chart-muted);font-size:.78rem;font-weight:650}.patient-dental-chart__facts dd{color:var(--patient-chart-text);font-size:.88rem;font-weight:650;margin:0;min-width:0;overflow-wrap:anywhere}.patient-dental-chart__status-value,.patient-dental-chart__legend li{align-items:center;display:inline-flex;gap:.45rem}.patient-dental-chart__status-marker{background:var(--tooth-status-marker, #38bdf8);border:2px solid var(--patient-chart-surface);border-radius:999px;box-shadow:0 0 0 1px color-mix(in srgb,var(--patient-chart-muted) 45%,transparent);flex:0 0 auto;height:.72rem;width:.72rem}.patient-dental-chart__status-marker[data-tooth-status=unknown]{background:transparent;border-color:var(--patient-chart-muted);box-shadow:none}.patient-dental-chart__status-marker[data-tooth-status=extracted],.patient-dental-chart__status-marker[data-tooth-status=missing_congenital]{background:var(--tooth-status-marker-terminal, #f87171)}.patient-dental-chart__status-marker[data-tooth-status=implant],.patient-dental-chart__status-marker[data-tooth-status=implant_crown],.patient-dental-chart__status-marker[data-tooth-status=crown]{background:var(--tooth-status-marker-prosthetic, #c084fc)}.patient-dental-chart__status-marker[data-tooth-status=caries]{background:var(--tooth-status-marker-caries, #fbbf24)}.patient-dental-chart__status-marker[data-tooth-status=restored],.patient-dental-chart__status-marker[data-tooth-status=root_canal_treated],.patient-dental-chart__status-marker[data-tooth-status=sound]{background:var(--tooth-status-marker-restored, #34d399)}.patient-dental-chart__inspector-empty{align-items:center;color:var(--patient-chart-muted);display:flex;flex-direction:column;justify-content:center;min-height:18rem;padding:2rem 1rem;text-align:center}.patient-dental-chart__inspector-empty strong{color:var(--patient-chart-text);font-size:.95rem}.patient-dental-chart__inspector-empty p,.patient-dental-chart__sparse-note{color:var(--patient-chart-muted);font-size:.8rem;line-height:1.65;margin:.45rem 0 0}.patient-dental-chart__sparse-note{background:var(--app-primary-soft, rgba(15, 52, 96, .06));border-radius:.65rem;padding:.65rem .75rem}.patient-dental-chart__legend{align-items:flex-start;display:grid;gap:.9rem;grid-template-columns:minmax(10rem,.35fr) minmax(0,1fr);padding:.9rem 1rem}.patient-dental-chart__legend p,.patient-dental-chart__scope-note,.patient-dental-chart__state p{color:var(--patient-chart-muted);font-size:.8rem;line-height:1.6;margin:.25rem 0 0}.patient-dental-chart__legend ul{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}.patient-dental-chart__legend li{background:var(--patient-chart-surface);border:1px solid var(--patient-chart-border);border-radius:999px;color:var(--patient-chart-text);font-size:.76rem;padding:.3rem .58rem}.patient-dental-chart__scope-note{border-inline-start:3px solid var(--patient-chart-border);display:grid;gap:.2rem;padding-inline-start:.7rem}.patient-dental-chart__scope-note p{margin:0}.patient-dental-chart__refresh-note{align-items:center;background:var(--patient-chart-surface-muted);border:1px solid var(--patient-chart-border);border-radius:.65rem;color:var(--patient-chart-muted);display:flex;font-size:.8rem;gap:.65rem;justify-content:space-between;padding:.5rem .7rem}.patient-dental-chart__refresh-note--error{background:#ef44440f;border-color:#b91c1c3d;color:var(--patient-chart-danger)}.patient-dental-chart__retry{background:var(--patient-chart-surface);border:1px solid var(--patient-chart-border);border-radius:.55rem;color:var(--patient-chart-primary);cursor:pointer;font:inherit;font-size:.78rem;font-weight:700;min-height:2rem;padding:.3rem .7rem}.patient-dental-chart__retry:hover{border-color:var(--patient-chart-primary)}.patient-dental-chart__retry:focus-visible{outline:3px solid color-mix(in srgb,var(--patient-chart-focus) 45%,transparent);outline-offset:2px}.patient-dental-chart--state-only{min-height:18rem}.patient-dental-chart__state{align-items:flex-start;background:var(--patient-chart-surface-muted);border:1px solid var(--patient-chart-border);border-radius:.9rem;display:flex;gap:.85rem;margin:auto 0;padding:1.2rem}.patient-dental-chart__state--error{border-color:#b91c1c42}.patient-dental-chart__state-symbol{align-items:center;background:var(--app-primary-soft, rgba(15, 52, 96, .08));border:1px solid var(--patient-chart-border);border-radius:999px;color:var(--patient-chart-primary);display:inline-flex;flex:0 0 2.2rem;font-size:1rem;font-weight:800;height:2.2rem;justify-content:center}.patient-dental-chart__state--error .patient-dental-chart__state-symbol{background:#ef444414;border-color:#b91c1c3d;color:var(--patient-chart-danger)}.patient-dental-chart__state .patient-dental-chart__retry{margin-top:.75rem}@media(max-width:900px){.patient-dental-chart__workspace{grid-template-columns:1fr}.patient-dental-chart__inspector-empty{min-height:9rem}}@media(max-width:640px){.patient-dental-chart__header,.patient-dental-chart__legend{display:grid;grid-template-columns:1fr}.patient-dental-chart__archived-note{width:100%}.patient-dental-chart__chart-stage{padding:.25rem}.patient-dental-chart__facts>div{grid-template-columns:1fr;gap:.2rem}}@media(prefers-reduced-motion:reduce){.patient-dental-chart .proto-tooth,.patient-dental-chart .proto-tooth-fill,.patient-dental-chart .proto-tooth-stroke,.patient-dental-chart .proto-tooth-detail{transition:none}}.appearance-settings-card{margin-bottom:1.25rem;padding-block:1.3rem}.appearance-settings{--appearance-text-secondary: color-mix( in srgb, var(--app-text-secondary, var(--text-secondary)) 88%, var(--app-text, var(--text-main)) 12% )}.appearance-settings-heading{margin-bottom:.75rem}.appearance-settings-title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.appearance-settings-heading h3{margin:0;color:var(--app-text, var(--text-heading))}.appearance-settings .appearance-settings-description{margin:.2rem 0 0;color:var(--appearance-text-secondary)}.appearance-reset{min-height:2.4rem;flex:0 0 auto;padding:.35rem .5rem;border:0;background:transparent;color:var(--app-primary, var(--text-brand));font-size:.78rem;font-weight:600}.appearance-reset:hover{background:var(--app-primary-soft, var(--bg-card-hover))}.appearance-reset:focus-visible{outline:3px solid var(--app-focus, var(--app-focus-ring, #3b82f6));outline-offset:2px}.appearance-settings-controls,.appearance-fieldset{min-width:0}.appearance-fieldset{border:0}.appearance-fieldset+.appearance-fieldset{margin-top:1rem}.appearance-fieldset legend{margin-bottom:.45rem;color:var(--app-text, var(--text-main));font-size:.8rem;font-weight:700}.appearance-mode-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;padding:.25rem;border:1px solid var(--app-border, var(--border-color));border-radius:7px;background:var(--app-bg, var(--bg-main))}.appearance-mode-option,.appearance-family-option{position:relative;min-width:0;cursor:pointer}.appearance-radio{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.appearance-mode-content{display:flex;min-height:2.35rem;align-items:center;justify-content:center;padding:.35rem .6rem;border-radius:5px;color:var(--appearance-text-secondary);font-size:.82rem;font-weight:600;text-align:center}.appearance-radio:checked+.appearance-mode-content{background:var(--app-surface, var(--bg-card));color:var(--app-primary, var(--text-brand));box-shadow:0 1px 3px var(--app-shadow, rgba(15, 42, 80, .12))}.appearance-radio:focus-visible+.appearance-mode-content,.appearance-radio:focus-visible+.appearance-family-card{outline:3px solid var(--app-focus, var(--app-focus-ring, #3b82f6));outline-offset:2px}.appearance-family-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.appearance-family-card{display:flex;min-height:5rem;flex-direction:column;justify-content:space-between;gap:.7rem;padding:.7rem .8rem;border:1px solid var(--app-border, var(--border-color));border-radius:7px;background:var(--app-surface, var(--bg-card))}.appearance-family-option:hover .appearance-family-card{border-color:var(--app-primary, var(--text-brand))}.appearance-radio:checked+.appearance-family-card{border-color:var(--app-primary, var(--text-brand));box-shadow:0 0 0 1px var(--app-primary, var(--text-brand))}.appearance-family-header{display:flex;min-width:0;align-items:center;gap:.55rem}.appearance-choice-indicator{display:grid;width:1rem;height:1rem;flex:0 0 1rem;place-items:center;border:1px solid var(--app-border, var(--border-color));border-radius:50%}.appearance-choice-indicator:after{width:.38rem;height:.38rem;border-radius:50%;background:transparent;content:""}.appearance-radio:checked+.appearance-family-card .appearance-choice-indicator{border-color:var(--app-primary, var(--text-brand));background:var(--app-primary, var(--text-brand))}.appearance-radio:checked+.appearance-family-card .appearance-choice-indicator:after{background:var(--app-surface, #ffffff)}.appearance-family-name{min-width:0;color:var(--app-text, var(--text-main));font-size:.82rem;font-weight:700;overflow-wrap:anywhere}.appearance-family-swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.3rem}.appearance-family-swatch{height:.75rem;border:1px solid rgba(15,23,42,.1);border-radius:3px;background:var(--appearance-swatch)}@media(max-width:600px){.appearance-family-options{grid-template-columns:minmax(0,1fr)}}.pf-shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh;background:var(--app-bg, var(--bg-main, #f5f7fa));color:var(--app-text, var(--text-main, #1a1a2e))}.pf-sidebar{position:sticky;top:0;align-self:start;height:100vh;display:flex;flex-direction:column;gap:.2rem;padding:1.25rem .85rem;background:var(--app-surface, var(--bg-card, #ffffff));border-inline-end:1px solid var(--app-border, var(--border-color, #e2e8f0))}.pf-brand{padding:.3rem .6rem 1rem}.pf-brand-title{font-weight:800;font-size:1.05rem;letter-spacing:-.01em}.pf-brand-sub{font-size:.66rem;color:var(--app-text-muted, var(--text-secondary, #64748b));text-transform:uppercase;letter-spacing:.1em;margin-top:.1rem}.pf-nav-item{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;border-radius:9px;color:var(--app-text-muted, var(--text-secondary, #475569));text-decoration:none;font-size:.9rem;font-weight:600;transition:background .15s ease,color .15s ease}.pf-nav-item:hover{background:var(--app-surface-muted, var(--bg-section, #f1f5f9));color:var(--app-text, var(--text-main, #1a1a2e))}.pf-nav-item.is-active{background:var(--app-primary-soft, rgba(15, 52, 96, .08));color:var(--app-primary, var(--text-brand, #0f3460))}.pf-nav-ico{width:20px;text-align:center;opacity:.9}.pf-foot{margin-top:auto;display:grid;gap:.45rem;padding-top:.85rem;border-top:1px solid var(--app-border, var(--border-color, #e2e8f0))}.pf-main{min-width:0;padding:1.6rem 2rem 3rem}.pf-title{font-size:1.5rem;font-weight:800;margin:0;letter-spacing:-.01em}.pf-sub{color:var(--app-text-muted, var(--text-secondary, #64748b));margin:.25rem 0 1.1rem;font-size:.88rem}.pf-placeholder{text-align:center;padding:3rem 1.5rem;color:var(--app-text-muted, var(--text-secondary, #64748b))}.pf-placeholder-badge{display:inline-block;padding:.3rem .85rem;border-radius:999px;background:var(--app-surface-muted, var(--bg-section, #f1f5f9));border:1px solid var(--app-border, var(--border-color, #e2e8f0));font-size:.78rem;font-weight:700;margin-bottom:.85rem}@media(max-width:860px){.pf-shell{grid-template-columns:1fr}.pf-sidebar{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center}.pf-foot{margin-top:0;border-top:0;padding-top:0}}:root{--bg-main: #f5f7fa;--bg-card: #ffffff;--bg-card-hover: #f8fafc;--text-main: #1a1a2e;--text-secondary: #64748b;--text-heading: #16213e;--text-brand: #0f3460;--border-color: #e2e8f0;--shadow-card: 0 1px 3px rgba(0, 0, 0, .08);--bg-input: #ffffff;--bg-nav-hover: #f1f5f9;--bg-nav-active: #e8eef6;--bg-badge: #f8fafc;--bg-modal: #ffffff;--bg-overlay: rgba(0, 0, 0, .5);--btn-secondary-bg: #e2e8f0;--btn-secondary-text: #333;--bg-section: #f8fafc;--bg-error: #fef2f2;--bg-success: #f0fdf4}.theme-dark{--bg-main: #0f172a;--bg-card: #1e293b;--bg-card-hover: #334155;--text-main: #e2e8f0;--text-secondary: #94a3b8;--text-heading: #f1f5f9;--text-brand: #60a5fa;--border-color: #334155;--shadow-card: 0 1px 4px rgba(0, 0, 0, .4);--bg-input: #1e293b;--bg-nav-hover: #1e293b;--bg-nav-active: #334155;--bg-badge: #1e293b;--bg-modal: #1e293b;--bg-overlay: rgba(0, 0, 0, .7);--btn-secondary-bg: #334155;--btn-secondary-text: #e2e8f0;--bg-section: #1e293b;--bg-error: #450a0a;--bg-success: #14532d}:root[data-theme=light]{--app-bg: #f5f7fa;--app-surface: #ffffff;--app-surface-muted: #f8fafc;--app-text: #1a1a2e;--app-text-muted: #64748b;--app-border: #e2e8f0;--app-primary: #0f3460;--app-primary-soft: rgba(15, 52, 96, .06);--app-focus-ring: #3b82f6}:root[data-theme=dark]{--app-bg: #0f172a;--app-surface: #1e293b;--app-surface-muted: #1e293b;--app-text: #e2e8f0;--app-text-muted: #94a3b8;--app-border: #334155;--app-primary: #60a5fa;--app-primary-soft: rgba(255, 255, 255, .05);--app-focus-ring: #60a5fa}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-main);color:var(--text-main);line-height:1.6;transition:background-color .25s ease,color .25s ease}.page{max-width:1440px;margin:0 auto;padding:2rem 1.5rem}h1{font-size:1.8rem;margin-bottom:1rem;color:var(--text-heading)}h2{font-size:1.3rem;margin-bottom:1rem;color:var(--text-brand)}.form-group{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem;flex:1;min-width:120px}.form-row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:flex-end}.create-patient-form{display:flex;flex-direction:column;gap:.35rem}.create-patient-form .form-group{margin-bottom:.5rem}.patient-core-row,.patient-demographics-row{display:grid;gap:.75rem}.patient-core-row{grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);align-items:start}.patient-core-name,.patient-core-phone,.patient-age-method-group,.patient-age-value-group,.patient-gender-group{min-width:0}.patient-age-method-group,.patient-age-value-group,.patient-gender-group{margin-bottom:0}.patient-phone-label-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.patient-phone-label-row>label:first-child{margin:0}.patient-phone-unknown{display:inline-flex;align-items:center;gap:.4rem;margin-top:0;color:var(--text-secondary);font-size:.84rem;cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600}.patient-phone-unknown input{margin:0}.patient-demographics-row{grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);align-items:start;margin-bottom:.2rem}.patient-demographics-right{display:grid;grid-template-columns:minmax(230px,1fr) minmax(170px,.7fr);gap:.75rem;align-items:start}.patient-age-mode-options{display:flex;gap:1rem;margin-top:.25rem;flex-wrap:wrap;min-height:2.05rem;align-items:flex-start}.patient-age-mode-option{display:flex;align-items:center;gap:.25rem;cursor:pointer}.patient-expand-toggle{width:fit-content;margin-top:.05rem}.patient-expanded-section{border-top:1px dashed var(--border-color);padding-top:.75rem}.patient-two-col-row{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);gap:.75rem;align-items:start}.patient-full-width{grid-column:1 / -1}.patient-form-section-title{margin:.75rem 0 .25rem;color:var(--text-heading)}.patient-submit-row{margin-top:.75rem}.patient-error-row{margin-top:.5rem}@media(max-width:820px){.patient-core-row,.patient-demographics-row,.patient-two-col-row,.patient-demographics-right{grid-template-columns:1fr}.patient-phone-label-row{flex-wrap:wrap;align-items:flex-start}.patient-full-width{grid-column:auto}}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=date],input[type=datetime-local],select,textarea{padding:.5rem .7rem;border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;transition:border-color .2s;font-family:inherit;background:var(--bg-input);color:var(--text-main)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--text-brand);box-shadow:0 0 0 2px #0f346026}label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}button{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;transition:background .2s}.btn-primary{background:#0f3460;color:#fff}.btn-primary:hover{background:#16213e}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text)}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover{background:#b91c1c}.btn-sm{padding:.35rem .7rem;font-size:.8rem}.btn-link{background:none;border:none;color:var(--text-brand);cursor:pointer;font-size:.85rem;padding:0;text-decoration:none;font-weight:500}.btn-link:hover{text-decoration:underline}.card{background:var(--bg-card);border-radius:8px;padding:1.5rem;box-shadow:var(--shadow-card);border:1px solid var(--border-color);margin-bottom:1rem}.login-wrapper{display:flex;align-items:center;justify-content:center;min-height:100vh}.login-card{width:100%;max-width:380px}.auth-shell{position:relative;min-height:100vh;display:grid;grid-template-columns:1fr;background:radial-gradient(circle at 85% 8%,rgba(59,130,246,.18),transparent 55%),radial-gradient(circle at 8% 92%,rgba(16,185,129,.18),transparent 55%),linear-gradient(135deg,#f0f9ff,#ecfdf5);overflow:hidden}.theme-dark .auth-shell{background:radial-gradient(circle at 85% 8%,rgba(59,130,246,.28),transparent 55%),radial-gradient(circle at 8% 92%,rgba(16,185,129,.22),transparent 55%),linear-gradient(135deg,#0f172a,#0d3d3a)}@media(min-width:1024px){.auth-shell{grid-template-columns:.9fr 1.1fr}}.auth-shell-decor{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.auth-shell-blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.45}.auth-shell-blob-a{width:360px;height:360px;top:-120px;inset-inline-end:-80px;background:radial-gradient(circle,#3b82f6 0%,transparent 70%)}.auth-shell-blob-b{width:320px;height:320px;bottom:-160px;inset-inline-start:-100px;background:radial-gradient(circle,#10b981 0%,transparent 70%)}.theme-dark .auth-shell-blob{opacity:.6}.auth-shell-brand{position:relative;z-index:1;display:none;padding:3rem;color:#fff;background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.18),transparent 55%),linear-gradient(135deg,#1e40af,#0891b2 55%,#10b981)}.theme-dark .auth-shell-brand{background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.1),transparent 55%),linear-gradient(135deg,#1e3a8a,#0e7490 55%,#047857)}@media(min-width:1024px){.auth-shell-brand{display:flex;align-items:center;justify-content:center}}.auth-shell-brand-inner{max-width:28rem}.auth-shell-brand-name{font-size:2.6rem;font-weight:900;letter-spacing:-1px;margin:0 0 .6rem;color:#fff}.auth-shell-brand-tagline{font-size:1.2rem;line-height:1.6;margin:0 0 1.8rem;color:#ffffffeb;font-weight:600}.auth-shell-brand-bullets{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.85rem}.auth-shell-brand-bullets li{display:flex;align-items:flex-start;gap:.7rem;color:#fffffff2;font-size:1rem;line-height:1.55}.auth-shell-brand-check{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:999px;background:#ffffff2e;color:#fff}.auth-shell-form{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;padding:2rem 1.25rem}@media(min-width:768px){.auth-shell-form{padding:3rem 2rem}}.auth-shell-form-inner{width:100%;max-width:34rem;background:#fbfcfe;border:1px solid #e8edf4;border-radius:24px;padding:2.25rem;box-shadow:0 18px 50px #0f346017}.theme-dark .auth-shell-form-inner{background:#1e293b;border-color:#334155;box-shadow:0 24px 60px #00000073}@media(min-width:480px){.auth-shell-form-inner{padding:2.5rem}}.auth-shell-form-head{margin-bottom:1.5rem}.auth-shell-form-title{margin:0 0 .5rem;font-size:1.6rem;font-weight:800;color:#0f3460;letter-spacing:-.4px}@media(min-width:768px){.auth-shell-form-title{font-size:1.85rem}}.theme-dark .auth-shell-form-title{color:#f0f9ff}.auth-shell-form-subtitle{margin:0;color:#64748b;font-size:.95rem;line-height:1.6}.theme-dark .auth-shell-form-subtitle{color:#cbd5e1}.auth-shell-form-fields{display:flex;flex-direction:column;gap:.25rem}.auth-shell-helper{display:block;margin-top:.4rem;color:#64748b;font-size:.82rem;line-height:1.6}.theme-dark .auth-shell-helper{color:#94a3b8}.auth-field-label-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.auth-shell .form-group label.auth-field-label-main{display:inline-flex;align-items:center;min-width:0}.auth-shell-label-link{flex:0 0 auto;color:#1d4ed8;font-size:.82rem;font-weight:700;line-height:1.4;text-decoration:none;white-space:nowrap}.auth-shell-label-link:hover{text-decoration:underline}.auth-shell-label-link:focus-visible{outline:2px solid var(--text-brand, #1d4ed8);outline-offset:3px;border-radius:6px}.theme-dark .auth-shell-label-link{color:#93c5fd}.auth-shell-intro{margin:0 0 1rem;color:#64748b;font-size:.92rem;line-height:1.7}.theme-dark .auth-shell-intro{color:#cbd5e1}.visit-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.visit-type-chooser-title,.follow-up-picker-title{margin-top:0;margin-bottom:.6rem;font-size:1rem;color:var(--text-heading, #1e293b)}.visit-type-card{text-align:start;padding:1rem;border-radius:.5rem;cursor:pointer;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-section, #f8fafc);transition:background .15s ease,border-color .15s ease,filter .15s ease}.visit-type-card--new{background:#eef2ff;border-color:#6366f1}.visit-type-card--followup{background:#ecfdf5;border-color:#10b981}.theme-dark .visit-type-card--new{background:#6366f129;border-color:#818cf88c}.theme-dark .visit-type-card--followup{background:#10b98129;border-color:#34d3998c}.visit-type-card:hover{filter:brightness(.98)}.visit-type-card-title{font-weight:700;font-size:1rem;margin-bottom:.3rem;color:var(--text-heading, #0f172a)}.visit-type-card-desc{font-size:.8rem;color:var(--text-secondary, #475569)}.dob-input{display:flex;gap:.5rem}.dob-field{display:flex;flex-direction:column;gap:.2rem;flex:1 1 0}.dob-field--year{flex:1.4 1 0}.dob-sublabel{font-size:.72rem;color:var(--text-secondary, #64748b)}.dob-input select{width:100%}.settings-section-desc{font-size:.82rem;color:var(--text-secondary, #64748b);margin:0 0 .9rem}.settings-subheading{margin:.3rem 0 .2rem}.settings-divider{border:none;border-top:1px solid var(--border-color, #e2e8f0);margin:1.25rem 0}.settings-field{margin-bottom:1.1rem}.settings-field>label{display:block;font-weight:600;margin-bottom:.4rem;color:var(--text-main, #334155)}.settings-error{color:var(--text-danger, #dc2626);font-size:.82rem}.operating-hours-row{display:flex;flex-wrap:wrap;gap:1.25rem}.operating-hours-cell{display:flex;flex-direction:column;gap:.25rem}.operating-sublabel{font-size:.74rem;color:var(--text-secondary, #64748b)}.operating-time-field{display:inline-flex;align-items:center;gap:.3rem}.operating-time-sep{color:var(--text-secondary, #64748b)}.operating-days{display:flex;flex-wrap:wrap;gap:.6rem 1rem}.operating-day-option{display:inline-flex;align-items:center;gap:.35rem;font-weight:400;color:var(--text-main, #334155)}.operating-saved-flash{display:inline-block;font-size:.8rem;color:var(--text-success, #16a34a)}.clinic-logo-settings,.clinic-contact-settings{display:grid;gap:1rem}.clinic-contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem 1rem}.clinic-contact-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.clinic-contact-field-label{font-weight:600;font-size:.85rem;color:var(--text-secondary, #64748b)}.clinic-contact-input{width:100%;box-sizing:border-box}.clinic-contact-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.clinic-logo-copy h3{margin-bottom:.25rem}.clinic-logo-control{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.clinic-logo-preview{width:112px;height:112px;border:1px dashed var(--border-color, #cbd5e1);border-radius:8px;background:var(--bg-section, #f8fafc);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--text-secondary, #64748b);font-size:.78rem;text-align:center;padding:.5rem;flex:0 0 auto}.clinic-logo-preview img{width:100%;height:100%;object-fit:contain}.clinic-logo-actions{display:flex;flex-direction:column;gap:.35rem;min-width:min(100%,280px)}.clinic-logo-upload-label{width:fit-content;cursor:pointer}.clinic-logo-upload-label input{display:none}.clinic-logo-upload-label.is-disabled{opacity:.6;cursor:not-allowed}.operating-day-hours-list{display:flex;flex-direction:column;gap:.5rem}.operating-day-hours-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem}.operating-day-name{min-width:5.5rem;font-weight:600;color:var(--text-main, #334155)}.operating-currency-format{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-end}.operating-currency-cell{display:flex;flex-direction:column;gap:.25rem}.operating-currency-preview{font-weight:700;color:var(--text-heading, #16213e)}.auth-steps{list-style:none;margin:0 0 1.4rem;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.auth-step-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .7rem .4rem .4rem;border:1px solid var(--border-color, #e2e8f0);border-radius:999px;background:var(--bg-section, #f8fafc);font-size:.82rem;line-height:1.3}[dir=rtl] .auth-step-chip{padding:.4rem .4rem .4rem .7rem}.auth-step-chip-num{flex:0 0 auto;width:1.4rem;height:1.4rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:linear-gradient(135deg,#1e40af,#0891b2);color:#fff;font-weight:800;font-size:.78rem}.auth-step-chip-label{color:var(--text-heading, #0f172a);font-weight:600;white-space:nowrap}@media(min-width:640px){.auth-steps--subtle{flex-wrap:nowrap}}.auth-steps--subtle{gap:.4rem}.auth-steps--subtle .auth-step-chip{padding:.25rem .6rem .25rem .3rem;background:transparent;font-size:.76rem}[dir=rtl] .auth-steps--subtle .auth-step-chip{padding:.25rem .3rem .25rem .6rem}.auth-steps--subtle .auth-step-chip-num{width:1.15rem;height:1.15rem;font-size:.7rem;background:var(--bg-section, #eef2f7);color:var(--text-secondary, #64748b)}.auth-steps--subtle .auth-step-chip-label{color:var(--text-secondary, #64748b);font-weight:500}.auth-steps--prominent{gap:.4rem}.auth-steps--prominent .auth-step-chip{padding:.38rem .62rem .38rem .38rem;font-size:.8rem}[dir=rtl] .auth-steps--prominent .auth-step-chip{padding:.38rem .38rem .38rem .62rem}.auth-steps--prominent .auth-step-chip-num{width:1.35rem;height:1.35rem;font-size:.78rem;box-shadow:0 4px 10px #1e40af40}.auth-steps--prominent .auth-step-chip-label{font-weight:700}.info-hint{position:relative;display:inline-flex;vertical-align:middle;margin-inline-start:.35rem}.info-hint-trigger{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;padding:0;border:none;background:transparent;color:var(--text-secondary, #64748b);font-size:.95rem;line-height:1;cursor:pointer;border-radius:999px}.info-hint-trigger:hover,.info-hint-trigger:focus-visible{color:var(--text-brand, #1d4ed8)}.info-hint-trigger:focus-visible{outline:2px solid var(--text-brand, #1d4ed8);outline-offset:2px}.info-hint-bubble{position:absolute;top:calc(100% + .6rem);inset-inline-start:-.4rem;z-index:30;width:max-content;max-width:17rem;padding:.7rem .85rem;border:1px solid var(--border-color, #e2e8f0);border-radius:12px;background:var(--bg-card, #ffffff);color:var(--text-main, #0f172a);font-size:.8rem;font-weight:500;line-height:1.6;box-shadow:0 14px 32px #02061724;opacity:0;visibility:hidden;transform:translateY(-3px);transition:opacity .14s ease,transform .14s ease,visibility .14s;pointer-events:none}.info-hint-bubble:before,.info-hint-bubble:after{content:"";position:absolute;bottom:100%;inset-inline-start:.85rem;width:0;height:0;border:7px solid transparent}.info-hint-bubble:before{border-bottom-color:var(--border-color, #e2e8f0)}.info-hint-bubble:after{inset-inline-start:.92rem;border-width:6px;border-bottom-color:var(--bg-card, #ffffff)}.info-hint-title{display:block;margin-bottom:.25rem;color:var(--text-heading, #0f172a);font-size:.82rem;font-weight:700}.info-hint-text{display:block;color:var(--text-secondary, #475569)}.info-hint:hover .info-hint-bubble,.info-hint:focus-within .info-hint-bubble,.info-hint[data-open=true] .info-hint-bubble{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.theme-dark .info-hint-bubble{box-shadow:0 14px 32px #0000008c}.auth-shell-submit{width:100%;margin-top:1rem;padding:1rem 1.2rem;font-size:1.05rem;font-weight:800;border-radius:14px;background:linear-gradient(135deg,#1e40af,#0891b2);border:none;color:#fff;box-shadow:0 14px 30px #1e40af47;letter-spacing:.1px;transition:transform .15s ease,box-shadow .2s ease,filter .2s ease}.auth-shell-submit:hover:not(:disabled){filter:brightness(1.04);box-shadow:0 18px 40px #1e40af61;transform:translateY(-1px)}.auth-shell-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 10px 22px #1e40af52}.auth-shell-submit:disabled{filter:grayscale(.2);opacity:.78;cursor:not-allowed;box-shadow:none}.theme-dark .auth-shell-submit{background:linear-gradient(135deg,#1e3a8a,#0e7490);box-shadow:0 14px 30px #0e749066}.theme-dark .auth-shell-submit:hover:not(:disabled){box-shadow:0 18px 40px #0e749080}.auth-shell-error,.auth-shell-success{margin-bottom:1rem;border-radius:12px}.auth-shell-error.error-msg,.auth-shell-success.success-msg{padding:.7rem .9rem;border-radius:12px;border:1px solid transparent;font-size:.88rem;line-height:1.6}.auth-shell-error.error-msg{border-color:#dc262633}.auth-shell-success.success-msg{border-color:#16a34a33}.theme-dark .auth-shell-error.error-msg{color:#fca5a5;border-color:#f871714d}.theme-dark .auth-shell-success.success-msg{color:#86efac;border-color:#86efac4d}.auth-shell-submit-helper{margin:.7rem 0 0;text-align:center;color:var(--text-secondary, #64748b);font-size:.82rem;line-height:1.6}.auth-shell-form-foot{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid #e2e8f0;text-align:center}.theme-dark .auth-shell-form-foot{border-top-color:#334155}.auth-shell-form-switch{margin:.35rem 0;color:#64748b;font-size:.92rem}.theme-dark .auth-shell-form-switch{color:#cbd5e1}.auth-shell-form-switch-link{color:#1d4ed8;font-weight:700;text-decoration:none}.auth-shell-form-switch-link:hover{text-decoration:underline}.theme-dark .auth-shell-form-switch-link{color:#93c5fd}.auth-shell-error p,.auth-shell-success p{margin:0}.auth-shell-context-link{color:#1d4ed8;display:inline-flex;font-size:.9rem;font-weight:700;margin-top:.45rem;text-decoration:none}.auth-shell-context-link:hover{text-decoration:underline}.theme-dark .auth-shell-context-link{color:#93c5fd}.password-field{position:relative}.password-field-input{width:100%;padding-inline-end:2.6rem}.password-field-toggle{position:absolute;top:50%;inset-inline-end:.55rem;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:0}.password-field-toggle:hover{background:#0f34600f;color:#0f3460}.theme-dark .password-field-toggle{color:#cbd5e1}.theme-dark .password-field-toggle:hover{background:#ffffff14;color:#f0f9ff}.password-field-toggle:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.auth-shell input:-webkit-autofill,.auth-shell input:-webkit-autofill:hover,.auth-shell input:-webkit-autofill:focus,.auth-shell input:-webkit-autofill:active{-webkit-text-fill-color:#0f3460;-webkit-box-shadow:0 0 0 1000px #ffffff inset;box-shadow:0 0 0 1000px #fff inset;caret-color:#0f3460;transition:background-color 5000s ease-in-out 0s}.theme-dark .auth-shell input:-webkit-autofill,.theme-dark .auth-shell input:-webkit-autofill:hover,.theme-dark .auth-shell input:-webkit-autofill:focus,.theme-dark .auth-shell input:-webkit-autofill:active{-webkit-text-fill-color:#f0f9ff;-webkit-box-shadow:0 0 0 1000px #1e293b inset;box-shadow:0 0 0 1000px #1e293b inset;caret-color:#f0f9ff}.auth-shell .form-group{margin-bottom:.9rem}.auth-shell .form-group label{font-weight:700;color:#0f3460;font-size:.92rem}.theme-dark .auth-shell .form-group label{color:#f0f9ff}.auth-shell .form-group{margin-bottom:1rem}.auth-shell .form-group input{padding:.85rem 1rem;border-radius:12px;font-size:1rem}.auth-shell .form-group input:focus-visible{outline:2px solid #3b82f6;outline-offset:1px;border-color:#3b82f6}.theme-dark .auth-shell .form-group input:focus-visible{outline-color:#60a5fa;border-color:#60a5fa}.auth-shell-brand-preview{margin-top:2rem;background:#fffffff5;border-radius:14px;overflow:hidden;box-shadow:0 18px 40px #0000002e;color:#0f172a}.theme-dark .auth-shell-brand-preview{background:#0f172aeb;color:#e2e8f0;box-shadow:0 18px 40px #0006}.auth-shell-preview-bar{display:flex;align-items:center;gap:.4rem;padding:.55rem .9rem;background:#0f172a0f;border-bottom:1px solid rgba(15,23,42,.08)}.theme-dark .auth-shell-preview-bar{background:#ffffff0a;border-bottom-color:#ffffff14}.auth-shell-preview-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.auth-shell-preview-dot-red{background:#ef4444}.auth-shell-preview-dot-yellow{background:#f59e0b}.auth-shell-preview-dot-green{background:#22c55e}.auth-shell-preview-title{margin-inline-start:auto;font-size:.78rem;font-weight:700;color:#475569}.theme-dark .auth-shell-preview-title{color:#94a3b8}.auth-shell-preview-body{padding:.9rem;display:grid;gap:.5rem}.auth-shell-preview-row{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.55rem .75rem;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}.theme-dark .auth-shell-preview-row{background:#ffffff0a;border-color:#ffffff14}.auth-shell-preview-row.is-active{background:#eff6ff;border-color:#bfdbfe}.theme-dark .auth-shell-preview-row.is-active{background:#3b82f629;border-color:#3b82f65c}.auth-shell-preview-row-main{display:flex;flex-direction:column;gap:.1rem;min-width:0}.auth-shell-preview-name{font-size:.82rem;font-weight:700;color:#0f172a}.theme-dark .auth-shell-preview-name{color:#f1f5f9}.auth-shell-preview-meta{font-size:.7rem;color:#64748b}.theme-dark .auth-shell-preview-meta{color:#94a3b8}.auth-shell-preview-badge{font-size:.65rem;font-weight:800;padding:.18rem .5rem;border-radius:999px;white-space:nowrap}.auth-shell-preview-badge-new{background:#fef3c7;color:#92400e}.auth-shell-preview-badge-active{background:#dbeafe;color:#1e40af}.auth-shell-preview-badge-done{background:#dcfce7;color:#166534}.auth-shell-preview-finance{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.2rem;padding-top:.7rem;border-top:1px dashed rgba(15,23,42,.12)}.theme-dark .auth-shell-preview-finance{border-top-color:#ffffff1f}.auth-shell-preview-finance>div{display:flex;flex-direction:column;gap:.15rem}.auth-shell-preview-finance-label{font-size:.7rem;color:#64748b;font-weight:600}.theme-dark .auth-shell-preview-finance-label{color:#94a3b8}.auth-shell-preview-finance-paid{font-size:.95rem;font-weight:800;color:#15803d}.theme-dark .auth-shell-preview-finance-paid{color:#86efac}.auth-shell-preview-finance-remaining{font-size:.95rem;font-weight:800;color:#b45309}.theme-dark .auth-shell-preview-finance-remaining{color:#fcd34d}.auth-shell-resend{margin-top:1.2rem;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;overflow:hidden}.theme-dark .auth-shell-resend{background:#ffffff08;border-color:#334155}.auth-shell-resend-summary{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.7rem 1rem;cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;font-weight:700;color:#1d4ed8}.auth-shell-resend-summary::-webkit-details-marker{display:none}.theme-dark .auth-shell-resend-summary{color:#93c5fd}.auth-shell-resend-summary:hover{background:#0f34600a}.theme-dark .auth-shell-resend-summary:hover{background:#ffffff0a}.auth-shell-resend-title{font-size:.92rem}.auth-shell-resend-chevron{display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease}.auth-shell-resend[open] .auth-shell-resend-chevron{transform:rotate(-180deg)}.auth-shell-resend-body{padding:.2rem 1rem 1rem;border-top:1px solid #e2e8f0}.theme-dark .auth-shell-resend-body{border-top-color:#334155}.auth-shell-resend-description{margin:.6rem 0 .8rem;color:#64748b;font-size:.88rem;line-height:1.6}.theme-dark .auth-shell-resend-description{color:#cbd5e1}.auth-shell-resend-submit{width:100%;margin-top:.4rem;padding:.7rem 1rem;border-radius:10px;font-weight:700}.navbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.nav-links{display:flex;align-items:center;gap:.2rem}.nav-brand{margin-right:1.5rem;font-size:1.1rem;color:var(--text-brand)}.nav-mode-label{font-size:.85rem;font-weight:600;color:var(--accent);background:#3b82f61f;padding:.25rem .7rem;border-radius:6px;letter-spacing:.02em}.analytics-entry-card{border:1px solid rgba(59,130,246,.25);transition:border-color .2s,box-shadow .2s,transform .15s}.analytics-entry-card:hover{border-color:var(--accent);box-shadow:0 4px 20px #3b82f626;transform:translateY(-2px)}.analytics-entry-header{display:flex;align-items:center;gap:.6rem}.analytics-entry-header h2{margin:0;flex:1}.analytics-entry-icon{font-size:1.5rem}.analytics-entry-arrow{font-size:1.4rem;color:var(--accent);transition:transform .2s}.analytics-entry-card:hover .analytics-entry-arrow{transform:translate(4px)}.analytics-entry-hint{color:var(--text-secondary);font-size:.88rem;margin:.4rem 0 .8rem 2.1rem}.analytics-entry-preview{display:flex;gap:2rem;margin-left:2.1rem;padding-top:.6rem;border-top:1px solid var(--border)}.analytics-preview-stat{display:flex;flex-direction:column;gap:.15rem}.analytics-preview-value{font-size:1.15rem;font-weight:700;color:var(--text)}.analytics-preview-label{font-size:.78rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.navbar a{color:var(--text-secondary);text-decoration:none;font-weight:500;padding:.4rem .8rem;border-radius:6px;font-size:.9rem;transition:background .15s,color .15s}.navbar a:hover{background:var(--bg-nav-hover);color:var(--text-brand)}.navbar a.nav-active{background:var(--bg-nav-active);color:var(--text-brand);font-weight:600}.nav-right{display:flex;align-items:center;gap:.75rem}.session-badge{display:flex;flex-direction:column;align-items:flex-end;padding:.3rem .7rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-badge);line-height:1.3}.session-name{font-weight:600;font-size:.85rem;color:var(--text-main)}.session-meta{font-size:.72rem;color:var(--text-secondary);text-transform:capitalize}.session-role-owner{border-color:#d4a017;background:#fffbeb}.session-role-owner .session-name{color:#92600a}.session-role-staff{border-color:#3b82f6;background:#eff6ff}.session-role-staff .session-name{color:#1e40af}.global-search-wrapper{position:relative;flex:1;max-width:360px;margin:0 1rem}.global-search-input{width:100%;padding:.45rem .75rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.88rem;background:#f8fafc;transition:border-color .15s,box-shadow .15s}.global-search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626;background:#fff}.global-search-input::placeholder{color:#94a3b8}.global-search-spinner{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:.8rem;color:#94a3b8}.global-search-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001f;max-height:360px;overflow-y:auto;z-index:1000;list-style:none;padding:.3rem 0;margin:0;animation:fadeInDropdown .2s ease-out}@keyframes fadeInDropdown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.global-search-item{padding:.55rem .85rem;cursor:pointer;border-bottom:1px solid #f1f5f9;transition:background .1s}.global-search-item:last-child{border-bottom:none}.global-search-item.active,.global-search-item:hover{background:#eff6ff}.global-search-item.has-allergy{border-left:3px solid #ef4444}.global-search-item.no-results{text-align:center;color:#94a3b8;cursor:default;font-size:.85rem}.gs-row-main{display:flex;justify-content:space-between;align-items:baseline}.gs-name{font-weight:600;font-size:.88rem;color:#1e293b}.gs-phone{font-size:.8rem;color:#64748b;direction:ltr}.gs-row-meta{display:flex;gap:.6rem;margin-top:.15rem;font-size:.75rem;color:#94a3b8}.gs-age{color:#64748b}.gs-last-visit{color:#3b82f6}.gs-allergy{color:#ef4444;font-weight:600}.table-wrapper{overflow-x:hidden}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{text-align:left;padding:.5rem .45rem;border-bottom:1px solid var(--border-color);font-size:.85rem;white-space:nowrap}.data-table th{font-size:.75rem;text-transform:uppercase;color:var(--text-secondary);font-weight:600;letter-spacing:.03em}.data-table tbody tr{transition:transform .15s ease,box-shadow .15s ease}.data-table tbody tr:hover{background:var(--bg-card-hover);transform:translateY(-1px);box-shadow:0 3px 8px #0000000f}.cell-primary{font-weight:500;color:var(--text-heading)}.cell-notes{color:var(--text-secondary);font-size:.82rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sub-table{font-size:.85rem}.sub-table th,.sub-table td{padding:.4rem .6rem}.sessions-section{margin-top:1.5rem;padding-top:1rem;border-top:1px dashed var(--border-color)}.sessions-header{font-size:.9rem;font-weight:600;color:var(--text-main);margin-bottom:.75rem}.sessions-table input[type=number],.sessions-table input[type=date],.sessions-table select{font-size:.8rem;padding:.25rem .4rem}.session-actions{white-space:nowrap}.badge-linked{background:#16a34a;color:#fff;padding:.15rem .4rem;border-radius:4px;font-size:.7rem;font-weight:600}.btn-add-session{background:var(--text-brand);color:#fff;border:none;border-radius:4px;padding:.35rem .75rem;cursor:pointer;font-size:.8rem}.btn-add-session:hover{opacity:.9}.btn-add-session:disabled{opacity:.5;cursor:not-allowed}.plan-progress-summary{display:flex;gap:1.5rem;margin-bottom:1rem;padding:.5rem .75rem;background:var(--bg-card);border-radius:6px;border:1px solid var(--border-color)}.plan-progress-summary .progress-label{font-size:.85rem;color:var(--text-secondary)}.plan-section-title{font-size:.85rem;font-weight:600;color:var(--text-main);margin:1rem 0 .5rem;padding-bottom:.25rem;border-bottom:1px solid var(--border-color)}.empty-state-hint{color:#64748b;margin:.5rem 0;font-size:.85rem;line-height:1.6;direction:rtl;text-align:right}.theme-dark .empty-state-hint{color:#94a3b8}.no-sessions-guidance{display:flex;flex-direction:column}.breadcrumb{margin-bottom:1rem}.breadcrumb a{color:var(--text-secondary);text-decoration:none;font-size:.85rem}.breadcrumb a:hover{color:var(--text-brand)}.patient-header h1{margin-bottom:.5rem}.patient-meta{display:flex;gap:1.5rem;flex-wrap:wrap;color:var(--text-secondary);font-size:.9rem}.tabs{display:flex;gap:0;margin-bottom:0;border-bottom:2px solid var(--border-color)}.tab{padding:.7rem 1.2rem;font-size:.9rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:color .15s,border-color .15s}.tab:hover{color:var(--text-brand)}.tab-active{color:var(--text-brand);border-bottom-color:var(--text-brand);font-weight:600}.settings-tabs{margin-bottom:1.25rem;flex-wrap:wrap;gap:.25rem}.inventory-toolbar{margin-bottom:1rem}.inventory-toolbar .form-group{max-width:32rem;margin-bottom:0}.inventory-form{margin-bottom:1rem;padding:1rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-card)}.inventory-actions{display:flex;flex-wrap:wrap;gap:.35rem}.inventory-quantity-cell{white-space:normal}.inventory-quantity{font-size:1.05rem}.inventory-low-badge{margin-inline-start:.4rem}.inventory-row-low .inventory-quantity{color:var(--text-warning, var(--text-brand))}.inventory-delta-positive{color:var(--text-success, var(--text-brand))}.inventory-delta-negative{color:var(--text-danger, var(--text-brand))}.inventory-batch-depleted{opacity:.6}.inventory-detail-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.inventory-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.6rem 1.25rem;margin:0 0 1rem}.inventory-detail-row dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.inventory-detail-row dd{margin:.1rem 0 0;color:var(--text-main);overflow-wrap:anywhere}.inventory-disposal-context{margin:0 0 1rem;padding:.75rem .9rem;border:1px solid var(--border-color);border-inline-start:3px solid var(--text-danger, var(--text-brand));border-radius:.4rem;background:var(--bg-section)}.inventory-disposal-warning{margin:0 0 .6rem;font-size:.875rem}.inventory-movement-code{color:var(--text-secondary)}.inventory-expiry-maker,.inventory-expiry-scope,.inventory-expiry-countdown{display:block;font-size:.78rem;color:var(--text-secondary)}.inventory-expiry-badge{white-space:nowrap}.inventory-expiry-badge-expired,.inventory-expiry-badge-today{background:var(--bg-danger, var(--bg-section));color:var(--text-danger, var(--text-main));font-weight:600}.inventory-expiry-badge-verySoon{background:var(--bg-warning, var(--bg-section));color:var(--text-warning, var(--text-main));font-weight:600}.inventory-expiry-expired td{background:var(--bg-danger-subtle, transparent)}.inventory-expiry-row td{white-space:normal;vertical-align:top}.inventory-batch-context{margin:0 0 .75rem;padding:.5rem .7rem;border-inline-start:3px solid var(--text-brand);background:var(--bg-section);font-size:.85rem}.inventory-suggestion{display:block;margin-block-start:.25rem;font-size:.78rem;color:var(--text-secondary)}.inventory-depleted-toggle{display:inline-flex;align-items:center;gap:.4rem;margin-block-start:.5rem;font-size:.85rem;color:var(--text-secondary)}.table-scroll{overflow-x:auto;overscroll-behavior-inline:contain}@media(max-width:720px){.inventory-actions{flex-direction:column;align-items:stretch}.inventory-detail-grid{grid-template-columns:1fr}}.nav-compact{display:none}@media(max-width:767px){.navbar{min-width:0;gap:.75rem}.nav-desktop-only{display:none!important}.nav-compact{display:flex;align-items:center;gap:.75rem;min-width:0}.nav-compact .nav-brand{margin-inline-end:0}}.nav-menu-button{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;font-size:1.15rem;line-height:1;cursor:pointer;color:var(--app-text);background:var(--app-surface);border:1px solid var(--app-border);border-radius:10px}.nav-menu-button:focus-visible{outline:2px solid var(--app-focus-ring);outline-offset:2px}.mobile-nav-dialog{margin:0;padding:0;border:none;background:transparent;max-width:100%;max-height:100%;width:100%;height:100%}.mobile-nav-dialog::backdrop{background:#00000073}.mobile-nav-panel{display:flex;flex-direction:column;gap:1rem;width:min(20rem,88vw);height:100%;margin-inline-start:0;margin-inline-end:auto;padding:1rem;overflow-y:auto;background:var(--app-surface);border-inline-end:1px solid var(--app-border);color:var(--app-text)}.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-block-end:.75rem;border-block-end:1px solid var(--app-border)}.mobile-nav-close{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;font-size:1rem;cursor:pointer;color:var(--app-text);background:transparent;border:1px solid var(--app-border);border-radius:8px}.mobile-nav-close:focus-visible{outline:2px solid var(--app-focus-ring);outline-offset:2px}.mobile-nav-body{display:flex;flex-direction:column;gap:1rem;min-width:0}.mobile-nav-search{min-width:0}.mobile-nav-search .global-search-wrapper{max-width:none;margin:0;flex:none;width:100%}.mobile-nav-links{display:flex;flex-direction:column;gap:.25rem}.mobile-nav-links a{display:block;padding:.65rem .7rem;border-radius:8px;text-align:start;text-decoration:none;font-weight:600}.mobile-nav-links a:hover,.mobile-nav-links a:focus-visible{background:var(--app-surface-muted, var(--app-primary-soft));text-decoration:none}.mobile-nav-links a.nav-active{background:var(--app-primary-soft)}.mobile-nav-identity{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;padding-block-start:.75rem;border-block-start:1px solid var(--app-border)}.mobile-nav-identity .session-badge{align-items:flex-start;text-align:start}@media(prefers-reduced-motion:no-preference){.mobile-nav-dialog[open] .mobile-nav-panel{animation:mobile-nav-in .16s ease-out}}@keyframes mobile-nav-in{0%{transform:translate(-6%);opacity:.6}to{transform:translate(0);opacity:1}}.evidence-hero{max-width:1240px;margin-inline:auto;padding-inline:1rem;margin-block-start:1.5rem}.evidence-hero-form{background:var(--app-surface);border:1px solid var(--app-border);border-radius:14px;padding:1.25rem;box-shadow:var(--shadow-card)}.evidence-hero-label{display:block;font-weight:600;color:var(--app-text);margin-block-end:.6rem;text-align:start}.evidence-hero-row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.evidence-hero-input{flex:1 1 22rem;min-width:0;padding:.7rem .9rem;border:1px solid var(--app-border);border-radius:10px;background:var(--app-bg);color:var(--app-text);font-size:1rem}.evidence-hero-input:focus-visible{outline:2px solid var(--app-focus-ring);outline-offset:1px}.evidence-hero-submit,.evidence-hero-clear{padding:.7rem 1.2rem;border-radius:10px;border:1px solid var(--app-border);cursor:pointer;font-weight:600}.evidence-hero-submit{background:var(--app-primary);border-color:var(--app-primary);color:#fff}.evidence-hero-submit:disabled{opacity:.55;cursor:not-allowed}.evidence-hero-clear{background:transparent;color:var(--app-text)}.evidence-hero-hint{margin-block-start:.6rem;margin-block-end:0;color:var(--text-secondary);font-size:.85rem;text-align:start}.evidence-results{max-width:1240px;margin-inline:auto}.evidence-summary{background:var(--app-surface-muted);border:1px solid var(--app-border);border-radius:12px;padding:1rem;margin-block-end:1rem;text-align:start}.evidence-summary p{margin:0 0 .5rem}.evidence-summary p:last-child{margin-block-end:0}.evidence-summary-label{font-weight:600;color:var(--app-text)}.evidence-summary-query code,.evidence-lane-query{display:inline-block;max-width:100%;overflow-x:auto;padding:.2rem .45rem;border-radius:6px;background:var(--app-bg);border:1px solid var(--app-border);font-size:.82rem;color:var(--text-secondary)}.evidence-concept-chip,.evidence-unmapped-chip{display:inline-block;padding:.15rem .55rem;margin-inline-end:.35rem;border-radius:999px;font-size:.82rem;border:1px solid var(--app-border)}.evidence-concept-chip{background:var(--app-primary-soft);color:var(--app-text)}.evidence-unmapped-chip{background:transparent;color:var(--text-secondary)}.evidence-degraded{border:1px solid var(--app-border);border-inline-start:3px solid var(--app-warning, var(--app-border));border-radius:10px;padding:.75rem 1rem;margin-block-end:1rem;color:var(--app-text);text-align:start}.evidence-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-block-end:1.25rem}.evidence-filter-group{border:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.evidence-filter-legend{font-size:.85rem;font-weight:600;color:var(--text-secondary);padding:0;margin-inline-end:.4rem}.evidence-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(30rem,100%),1fr));gap:1rem}.evidence-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:14px;padding:1.1rem;min-width:0;text-align:start;display:flex;flex-direction:column;gap:.5rem}.evidence-card-meta{display:flex;flex-wrap:wrap;gap:.4rem}.evidence-type-chip,.evidence-relevance-chip{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600;border:1px solid var(--app-border)}.evidence-type-chip{background:var(--app-primary-soft);color:var(--app-text)}.evidence-relevance-chip{background:transparent;color:var(--text-secondary);font-weight:500}.evidence-card-title{margin:0;font-size:1.02rem;line-height:1.45;color:var(--app-text)}.evidence-card-source{margin:0;color:var(--text-secondary);font-size:.86rem;display:flex;flex-wrap:wrap;gap:.5rem}.evidence-card-label{margin:0;font-size:.78rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.evidence-card-abstract{margin:0;color:var(--app-text);font-size:.92rem;line-height:1.6}.evidence-card-more{align-self:flex-start;background:none;border:none;padding:0;color:var(--text-brand);cursor:pointer;font-size:.86rem}.evidence-card-footer{margin:0;margin-block-start:auto;padding-block-start:.6rem;border-block-start:1px solid var(--app-border)}.evidence-card-cta{color:var(--text-brand);font-weight:600;text-decoration:none}.evidence-card-cta:hover{text-decoration:underline}.evidence-disclosure{margin-block-start:1.25rem;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface)}.evidence-disclosure-summary{cursor:pointer;padding:.8rem 1rem;font-weight:600;color:var(--app-text)}.evidence-disclosure-body{padding:0 1rem 1rem;text-align:start}.evidence-counts{display:flex;flex-wrap:wrap;gap:1.25rem;margin:0 0 .75rem}.evidence-counts dt{font-size:.78rem;color:var(--text-secondary)}.evidence-counts dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums;color:var(--app-text)}.evidence-disclosure-note{color:var(--text-secondary);font-size:.86rem;margin:0 0 .75rem}.evidence-lanes{margin:0;padding-inline-start:1.1rem;display:flex;flex-direction:column;gap:.75rem}.evidence-lane-name{margin:0 0 .25rem;font-weight:600;color:var(--app-text)}.evidence-lane-failed{color:var(--text-secondary);font-weight:500}.evidence-lane-meta,.evidence-disclosure-source{margin:.25rem 0 0;color:var(--text-secondary);font-size:.82rem}.evidence-back{margin-block-start:1.25rem}.evidence-body.is-refreshing{opacity:.55;transition:opacity .12s ease-in-out}@media(prefers-reduced-motion:reduce){.evidence-body.is-refreshing{transition:none}}@media(max-width:900px){.evidence-grid{grid-template-columns:1fr}.evidence-hero-row{flex-direction:column;align-items:stretch}.evidence-filters{flex-direction:column;gap:.75rem}}.intelligence-page{max-width:1240px;margin-inline:auto}.intelligence-header{margin-block-end:1rem;text-align:start}.intelligence-header h1{margin-block:0 .25rem;font-size:1.75rem}.intelligence-subtitle{margin:0;font-size:1.05rem;color:var(--text-secondary)}.intelligence-strapline{margin:.35rem 0 0;font-size:.9rem;letter-spacing:.02em;color:var(--text-secondary)}.intelligence-count{margin:.6rem 0 0;font-size:.9rem;color:var(--text-secondary)}.intelligence-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-block-end:1.25rem;padding-block-end:.85rem;border-block-end:1px solid var(--border-color)}.intelligence-filter{padding:.45rem .95rem;border:1px solid var(--border-color);border-radius:999px;background:transparent;color:var(--text-secondary);font-size:.9rem;font-family:inherit;cursor:pointer}.intelligence-filter:hover{border-color:var(--text-brand);color:var(--text-brand)}.intelligence-filter.is-active{border-color:var(--text-brand);background:var(--app-primary-soft);color:var(--text-brand);font-weight:600}.intelligence-feed{display:block}.intelligence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;align-items:start}.intelligence-lead{margin-block-end:1.5rem}.intelligence-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);box-shadow:var(--shadow-card);text-align:start}.intelligence-card.is-lead{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.intelligence-card-body{display:flex;flex-direction:column;gap:.7rem;padding:1.1rem 1.2rem 1.2rem;min-width:0}.intelligence-card.is-lead .intelligence-card-body{padding:1.6rem;justify-content:center}.intelligence-card-visual{position:relative;aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--app-primary-soft),transparent);border-block-end:1px solid var(--border-color);color:var(--text-brand)}.intelligence-card.is-lead .intelligence-card-visual{aspect-ratio:auto;height:100%;min-height:240px;border-block-end:none;border-inline-end:1px solid var(--border-color)}.intelligence-card-visual svg{width:100%;height:100%;padding:.5rem}.intelligence-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.8rem}.intelligence-type-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border:1px solid var(--border-color);border-radius:999px;font-weight:600;letter-spacing:.01em}.intelligence-type-alert{border-color:var(--text-brand);background:var(--app-primary-soft)}.intelligence-card-source{color:var(--text-secondary)}.intelligence-card-title{margin:0;font-size:1.18rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.intelligence-card.is-lead .intelligence-card-title{font-size:1.45rem;-webkit-line-clamp:4;line-clamp:4}.intelligence-card-title a{color:var(--text-primary);text-decoration:none}.intelligence-card-title a:hover,.intelligence-card-title a:focus-visible{color:var(--text-brand);text-decoration:underline}.intelligence-card-label{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.intelligence-card-abstract{margin:.25rem 0 0;font-size:.925rem;line-height:1.65;color:var(--text-secondary)}.intelligence-card-more{margin-block-start:.35rem;padding:0;border:none;background:none;color:var(--text-brand);font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.intelligence-card-more:hover{text-decoration:underline}.intelligence-card-why{margin:0;font-size:.82rem;line-height:1.55;color:var(--text-secondary);opacity:.85}.intelligence-card-why-label{font-weight:600}.intelligence-card-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;margin-block-start:auto;padding-block-start:.85rem;border-block-start:1px solid var(--border-color)}.intelligence-card-date{font-size:.8rem;color:var(--text-secondary)}.intelligence-card-cta{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem .95rem;border:1px solid var(--text-brand);border-radius:8px;color:var(--text-brand);font-size:.875rem;font-weight:600;text-decoration:none;white-space:nowrap}.intelligence-card-cta:hover,.intelligence-card-cta:focus-visible{background:var(--text-brand);color:var(--bg-card)}.intelligence-notice{padding:.9rem;border:1px solid var(--border-color);border-radius:8px;text-align:start}.intelligence-disclaimer{margin-block-start:1.75rem;padding-block-start:1rem;border-block-start:1px solid var(--border-color);font-size:.8rem}.intelligence-card-count{margin:0 0 .5rem;color:var(--text-secondary)}.intelligence-card-types{list-style:none;margin:0 0 .75rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.intelligence-card-type{padding:.15rem .5rem;border:1px solid var(--border-color);border-radius:999px;font-size:.8rem}@media(max-width:900px){.intelligence-grid{grid-template-columns:minmax(0,1fr)}.intelligence-card.is-lead{display:flex}.intelligence-card.is-lead .intelligence-card-visual{aspect-ratio:16 / 9;height:auto;min-height:0;border-block-end:1px solid var(--border-color);border-inline-end:none}.intelligence-card.is-lead .intelligence-card-title{font-size:1.2rem}.intelligence-card.is-lead .intelligence-card-body{padding:1.1rem 1.2rem 1.2rem}}@media(max-width:720px){.settings-tabs .tab{padding:.6rem .8rem;font-size:.82rem}}.badge{display:inline-block;padding:.2rem .55rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.badge-active,.badge-scheduled{background:#dbeafe;color:#1d4ed8}.badge-completed{background:#dcfce7;color:#16a34a}.badge-cancelled{background:#fee2e2;color:#dc2626}.badge-cash{background:#fef3c7;color:#92400e}.badge-card{background:#e0e7ff;color:#4338ca}.badge-owner{background:#fef3c7;color:#92400e}.badge-staff{background:#e0e7ff;color:#4338ca}.badge-inactive{background:#fee2e2;color:#dc2626}.badge-clinical{text-transform:lowercase}.badge-clinical-compact{font-size:.67rem;padding:.15rem .42rem}.badge-clinical-pending{background:#e5e7eb;color:#374151}.badge-clinical-exam_completed{background:#dbeafe;color:#1d4ed8}.badge-clinical-in_treatment{background:#ede9fe;color:#6d28d9}.badge-clinical-lost{background:#fee2e2;color:#b91c1c}.badge-clinical-completed{background:#dcfce7;color:#15803d}.visit-row:hover{background:#f1f5f9}.visit-detail-cell{background:var(--bg-section);padding:1rem!important}.visit-payments{padding:.5rem}.payment-summary{display:flex;gap:1.5rem;margin-bottom:.75rem;font-size:.9rem}.inline-form{display:flex;gap:.5rem;align-items:flex-end;flex-wrap:wrap}.inline-form .form-group{margin-bottom:0}.appointment-form{display:grid;grid-template-columns:minmax(260px,1.15fr) minmax(220px,1fr) auto;gap:.75rem;align-items:end}.appointment-form .form-group{min-width:0}.appointment-submit-wrap{display:flex;align-items:flex-end}.appointment-form .error-msg{grid-column:1 / -1;margin-bottom:0}.section-form{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.visit-form-grid{display:grid;gap:.75rem;align-items:start}.visit-form-grid-top{grid-template-columns:minmax(170px,1.25fr) minmax(170px,1.25fr) minmax(170px,1.25fr) minmax(140px,.9fr) minmax(190px,1fr)}.visit-form-grid-bottom{margin-top:.15rem;grid-template-columns:minmax(170px,1.25fr) minmax(170px,1.25fr) minmax(170px,1.25fr) minmax(140px,.9fr) minmax(190px,1fr);align-items:start}.visit-clinician-group,.visit-notes-group{min-width:0}.visit-form-grid .form-group{margin-bottom:0}.visit-clinician-group{grid-column:1 / span 2}.visit-notes-group{grid-column:3 / span 2}.visit-notes-group-wide{grid-column:1 / span 4}.visit-submit-wrap{grid-column:5;display:flex;align-items:flex-end;justify-content:flex-end;align-self:end}.visit-submit-btn{width:100%;min-width:110px}@media(max-width:1180px){.visit-form-grid-top,.visit-form-grid-bottom{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(180px,1fr)}.visit-clinician-group,.visit-notes-group,.visit-notes-group-wide,.visit-submit-wrap{grid-column:auto}}@media(max-width:900px){.visit-form-grid-top,.visit-form-grid-bottom{grid-template-columns:1fr}.visit-notes-group-wide{grid-column:auto}.visit-submit-wrap{justify-content:stretch}.appointment-form{grid-template-columns:1fr;align-items:stretch}.appointment-submit-wrap{justify-content:flex-start}}.error-msg{background:var(--bg-error);color:#dc2626;padding:.5rem .8rem;border-radius:6px;margin-bottom:.75rem;font-size:.85rem}.success-msg{background:var(--bg-success);color:#16a34a;padding:.5rem .8rem;border-radius:6px;margin-bottom:.75rem;font-size:.85rem}.pagination{display:flex;gap:.5rem;align-items:center;margin-top:1rem;font-size:.85rem;color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1rem}.stat-card{background:var(--bg-card);border-radius:8px;padding:1.25rem;box-shadow:var(--shadow-card);border:1px solid var(--border-color);text-align:center}.dashboard-clinic-card{text-align:start}.dashboard-clinic-identity{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;min-height:3.25rem}.dashboard-clinic-logo,.dashboard-clinic-avatar{width:88px;height:88px;border-radius:14px;flex:0 0 auto}.dashboard-clinic-logo{object-fit:contain;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);padding:6px;box-shadow:0 1px 3px #0f172a0f}.dashboard-clinic-avatar{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-nav-active, #e8eef6);color:var(--text-brand, #0f3460);border:1px solid var(--border-color, #e2e8f0);font-size:1.9rem;font-weight:700}.dashboard-clinic-name{min-width:0;overflow-wrap:anywhere;line-height:1.15}.stat-number{font-size:1.8rem;font-weight:700;color:var(--text-brand)}.stat-label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;margin-top:.25rem}.quick-actions{display:flex;gap:1rem;flex-wrap:wrap}.action-link{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--bg-nav-hover);border-radius:8px;text-decoration:none;color:var(--text-heading);font-weight:500;transition:background .15s}.action-link:hover{background:var(--bg-nav-active)}.action-icon{font-size:1.3rem}.analytics-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.analytics-date-filter{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.analytics-date-filter label{display:flex;flex-direction:column;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;gap:.25rem}.analytics-date-filter input[type=date]{padding:.4rem .6rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-input);color:var(--text-primary);font-size:.85rem}.analytics-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1.5rem}.analytics-kpi-card{background:var(--bg-card);border-radius:10px;padding:1.25rem 1rem;box-shadow:var(--shadow-card);border:1px solid var(--border-color);border-left:4px solid var(--text-brand);text-align:center}.analytics-kpi-card.kpi-revenue{border-left-color:#10b981}.analytics-kpi-card.kpi-profit{border-left-color:#3b82f6}.analytics-kpi-card.kpi-doctor{border-left-color:#f59e0b}.analytics-kpi-card.kpi-lab{border-left-color:#ef4444}.analytics-kpi-card.kpi-growth{border-left-color:#8b5cf6}.analytics-kpi-card.kpi-avg-invoice{border-left-color:#06b6d4}.analytics-kpi-card.kpi-count{border-left-color:#64748b}.analytics-kpi-card.kpi-insurance{border-left-color:#ec4899}.analytics-kpi-card.kpi-conversion{border-left-color:#7c3aed;text-align:left}.kpi-value{font-size:1.6rem;font-weight:700;color:var(--text-heading)}.kpi-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-top:.25rem}.conversion-kpi-grid{display:grid;gap:.4rem}.conversion-kpi-row{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:var(--text-secondary)}.conversion-kpi-row strong{color:var(--text-heading);font-size:.9rem}.conversion-kpi-row.conversion-rate{padding-top:.15rem;border-top:1px solid var(--border-color)}.conversion-rate-bar{margin-top:.55rem;height:8px;width:100%;background:var(--bg-nav-hover);border-radius:999px;overflow:hidden}.conversion-rate-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#8b5cf6,#3b82f6);transition:width .3s ease}.follow-up-header{margin-bottom:1.5rem}.follow-up-subtitle{color:var(--text-secondary, #64748b);font-size:.92rem;margin-top:.25rem}.follow-up-widget{border-left:4px solid #f59e0b}.follow-up-actions{display:flex;gap:.35rem;flex-wrap:wrap}.btn-follow-up-call,.btn-follow-up-whatsapp,.btn-follow-up-feedback,.btn-follow-up-contacted{font-size:.78rem;padding:.25rem .55rem;border-radius:6px;border:1px solid var(--border, #e2e8f0);background:var(--bg-card, #fff);cursor:pointer;white-space:nowrap;text-decoration:none;color:inherit;display:inline-block}.btn-follow-up-call:hover{background:#dbeafe}.btn-follow-up-whatsapp:hover{background:#dcfce7}.btn-follow-up-feedback:hover{background:#fef3c7}.btn-follow-up-contacted:hover{background:#d1fae5}.contacted-active{background:#d1fae5!important;border-color:#10b981;cursor:default}.follow-up-contacted{opacity:.6}.priority-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600;white-space:nowrap}.priority-high{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.priority-medium{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.priority-low{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.next-best-action{font-size:.82rem;color:var(--text-secondary, #64748b);font-style:italic}.btn-follow-up-book{font-size:.78rem;padding:.25rem .55rem;border-radius:6px;border:1px solid var(--border, #e2e8f0);background:var(--bg-card, #fff);cursor:pointer;white-space:nowrap}.btn-follow-up-book:hover{background:#ede9fe}.kpi-recovery{border-left:4px solid #10b981}.recovery-fill{background:#10b981!important}.analytics-margin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-top:.5rem}.margin-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 0}.margin-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.margin-gross{background:#10b981}.margin-clinic{background:#3b82f6}.margin-doctor{background:#f59e0b}.margin-lab-cost{background:#ef4444}.margin-insurance{background:#ec4899}.margin-pct{background:#8b5cf6}.margin-label{font-size:.85rem;color:var(--text-secondary);flex:1}.margin-value{font-size:.9rem;font-weight:600;color:var(--text-heading)}.margin-highlight{background:var(--bg-nav-hover);border-radius:8px;padding:.5rem .75rem}.analytics-bar-chart{margin-top:1rem}.analytics-chart-title{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem}.analytics-bar-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.analytics-bar-label{width:120px;font-size:.8rem;color:var(--text-primary);text-align:right;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-bar-track{flex:1;height:20px;background:var(--bg-nav-hover);border-radius:4px;overflow:hidden}.analytics-bar-fill{height:100%;background:linear-gradient(90deg,var(--text-brand),#3b82f6);border-radius:4px;transition:width .6s ease-out}.analytics-bar-value{width:90px;font-size:.8rem;font-weight:600;color:var(--text-heading);text-align:right;flex-shrink:0}.analytics-claims-grid{display:flex;gap:1.5rem;margin-top:1rem;flex-wrap:wrap}.claim-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.claim-count{font-size:1.5rem;font-weight:700;color:var(--text-heading)}.claim-count.claim-approved{color:#10b981}.claim-count.claim-paid{color:#3b82f6}.claim-count.claim-rejected{color:#ef4444}.claim-type{font-size:.7rem;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.04em}.analytics-loading{display:flex;align-items:center;gap:.75rem;justify-content:center;padding:3rem 0;color:var(--text-secondary);font-size:.9rem}.analytics-empty{color:var(--text-secondary);font-size:.85rem;font-style:italic;padding:.5rem 0}.search-results{display:flex;flex-direction:column;gap:.25rem;margin-top:.75rem}.search-result-item{text-align:left;padding:.6rem .8rem;background:var(--bg-section);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background .15s;font-size:.9rem}.search-result-item:hover{background:var(--bg-nav-active)}.action-buttons{display:flex;gap:.3rem}.edit-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem}.edit-modal-content{background:var(--bg-modal);border-radius:.75rem;box-shadow:0 20px 60px #0000004d;width:100%;max-width:680px;max-height:90vh;overflow-y:auto;padding:1.5rem;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.98) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.edit-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:.75rem}.edit-modal-header h2{margin:0;font-size:1.25rem;color:var(--text-heading)}.edit-modal-close{background:none;border:none;font-size:1.4rem;cursor:pointer;color:var(--text-secondary);padding:.25rem .5rem;border-radius:4px;transition:background .15s}.edit-modal-close:hover{background:var(--bg-nav-hover);color:var(--text-main)}.edit-modal-form .form-row{gap:.75rem}.edit-modal-form .form-group label{font-size:.82rem}.edit-visit-form{display:flex;flex-direction:column;gap:.35rem}.edit-visit-form .form-group{margin-bottom:.45rem}.edit-visit-context{margin-bottom:.75rem;color:var(--text-secondary);font-size:.85rem}.edit-visit-top-row,.edit-visit-bottom-row{display:grid;gap:.75rem;align-items:start}.edit-visit-top-row{grid-template-columns:minmax(260px,2fr) minmax(140px,1fr)}.edit-visit-bottom-row{grid-template-columns:minmax(170px,1fr) minmax(200px,1fr) minmax(220px,1.6fr)}.edit-visit-date-group,.edit-visit-clinician-group,.edit-visit-notes-group{min-width:0}.edit-visit-notes-group-wide{grid-column:2 / 4}.edit-visit-error{margin-top:.5rem;margin-bottom:0}.edit-patient-modal-content{max-width:860px}.edit-patient-form{display:grid;row-gap:.85rem}.edit-patient-form .form-group{margin-bottom:0}.edit-patient-form input[type=text],.edit-patient-form input[type=tel],.edit-patient-form input[type=number],.edit-patient-form input[type=date],.edit-patient-form select{min-height:2.3rem}.edit-patient-core-row,.edit-patient-address-row,.edit-patient-medical-row{display:grid;gap:.85rem;align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.edit-patient-demographics-row{display:grid;gap:.85rem;align-items:end;grid-template-columns:minmax(250px,1.25fr) minmax(200px,1fr) minmax(150px,.8fr)}.edit-patient-phone-label-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:1.35rem}.edit-patient-phone-label-row>label:first-child{margin:0}.edit-patient-phone-unknown{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-secondary);font-size:.82rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}.edit-patient-phone-unknown input{margin:0}.edit-patient-age-mode-group{margin-bottom:0;min-width:0}.edit-patient-age-value-group,.edit-patient-gender-group{min-width:0}.edit-patient-age-options{display:flex;gap:1rem;margin-top:.1rem;flex-wrap:wrap;min-height:2.3rem;align-items:center}.edit-patient-age-option{display:flex;align-items:center;gap:.25rem;cursor:pointer}.edit-patient-notes-row,.edit-patient-medical-notes-row{display:grid;grid-template-columns:1fr;gap:.85rem}.edit-patient-full-row{grid-column:1 / -1}.edit-patient-section-title{margin:.25rem 0 .1rem;padding-top:.55rem;border-top:1px solid var(--border-color);color:var(--text-heading)}.edit-patient-error{margin-top:.5rem;margin-bottom:0}@media(max-width:860px){.edit-visit-top-row,.edit-visit-bottom-row,.edit-patient-core-row,.edit-patient-demographics-row,.edit-patient-address-row,.edit-patient-medical-row,.edit-patient-notes-row,.edit-patient-medical-notes-row{grid-template-columns:1fr}.edit-patient-phone-label-row{flex-wrap:wrap;align-items:flex-start}.edit-visit-notes-group-wide{grid-column:auto}}.edit-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border-color)}.btn-secondary{padding:.5rem 1.2rem;background:var(--btn-secondary-bg);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .15s}.btn-secondary:hover{background:var(--bg-card-hover)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.patient-header-row{display:flex;justify-content:space-between;align-items:center}.edit-profile-btn{font-size:.85rem;white-space:nowrap}.theme-toggle{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:.35rem .6rem;font-size:1.1rem;cursor:pointer;transition:background .2s,border-color .2s;line-height:1}.theme-toggle:hover{background:var(--bg-nav-hover);border-color:var(--text-brand)}.gender-dot{width:.55rem;height:.55rem;border-radius:999px;display:inline-block;flex:0 0 auto}.gender-cell{display:inline-flex;align-items:center;gap:.35rem}.gender-dot-male{background:#2563eb;box-shadow:0 0 0 2px #2563eb26}.gender-dot-female{background:#ec4899;box-shadow:0 0 0 2px #ec489926}.theme-dark .gender-dot-male{background:#60a5fa;box-shadow:0 0 0 2px #60a5fa40}.theme-dark .gender-dot-female{background:#f472b6;box-shadow:0 0 0 2px #f472b640}.clinician-badge{display:inline-block;padding:.2rem .6rem;border:2px solid transparent;border-radius:6px;font-weight:500;font-size:.85rem;background:var(--bg-card);transition:border-color .2s,box-shadow .2s;min-width:120px;text-align:center}.theme-dark .clinician-badge{background:var(--bg-card)}.patient-name-cell{display:inline-flex;align-items:center;gap:.45rem}.patient-row{cursor:pointer}.patient-name-link{color:var(--text-brand);font-weight:600;text-decoration:none}.patient-name-link:hover,.patient-name-link:focus-visible{text-decoration:underline}.patient-lost-dot{display:inline-block;width:8px;height:8px;border-radius:999px;background:#dc2626;box-shadow:0 0 0 2px #fecaca;flex-shrink:0}.staff-name-badge{display:inline-block;padding:.2rem .6rem;border:2px solid transparent;border-radius:6px;font-weight:500;transition:border-color .2s,box-shadow .2s}.staff-color-picker{width:32px;height:32px;padding:0;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;background:transparent}.staff-color-picker::-webkit-color-swatch-wrapper{padding:2px}.staff-color-picker::-webkit-color-swatch{border-radius:3px;border:none}.staff-color-picker:hover{border-color:#3b82f6}.staff-color-picker:disabled{opacity:.6;cursor:not-allowed}.theme-dark .staff-color-picker{border-color:#374151}.theme-dark .staff-color-picker:hover{border-color:#60a5fa}.gender-male{background:#0099ff1f;color:#00b3ff;box-shadow:0 0 6px #09fc;padding:.15rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600}.theme-dark .gender-male{background:#09f3;box-shadow:0 0 8px #09f}.gender-female{background:#ff00801f;color:#ff3aa0;box-shadow:0 0 6px #ff0080cc;padding:.15rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600}.theme-dark .gender-female{background:#ff008033;box-shadow:0 0 8px #ff0080}.theme-dark .session-role-owner{border-color:#d4a017;background:#d4a01726}.theme-dark .session-role-owner .session-name{color:#fbbf24}.theme-dark .session-role-staff{border-color:#3b82f6;background:#3b82f626}.theme-dark .session-role-staff .session-name{color:#93c5fd}.theme-dark .login-card{background:var(--bg-card);border:1px solid var(--border-color)}.theme-dark .badge{opacity:.9}.theme-dark .visit-row:hover{background:var(--bg-card-hover)}@keyframes successGlow{0%{box-shadow:0 0 #2ecc7100}50%{box-shadow:0 0 18px #2ecc71f2}to{box-shadow:0 0 #2ecc7100}}.success-glow{animation:successGlow .8s ease-in-out}@keyframes errorGlow{0%{box-shadow:0 0 #ff3c3c00}50%{box-shadow:0 0 18px #ff3c3cf2}to{box-shadow:0 0 #ff3c3c00}}.error-glow{animation:errorGlow .9s ease-in-out}@keyframes rowFlash{0%{background-color:#2ecc7100}50%{background-color:#2ecc7140}to{background-color:transparent}}.row-flash{animation:rowFlash .8s ease-in-out}@keyframes pulseAmount{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.pulse-amount{display:inline-block;animation:pulseAmount .6s ease-in-out}@keyframes flashSuccess{0%{background-color:#00ff8c59}to{background-color:transparent}}.row-flash-success{animation:flashSuccess .8s ease-out}@keyframes pulsePayment{0%{transform:scale(1);box-shadow:0 0 #00ff8c99}50%{transform:scale(1.03);box-shadow:0 0 8px #00ff8ccc}to{transform:scale(1);box-shadow:0 0 #00ff8c00}}.pulse-payment{animation:pulsePayment .6s ease-out}@keyframes rowInsertFade{0%{opacity:0;transform:translateY(6px);background-color:#00ffc814}to{opacity:1;transform:translateY(0);background-color:transparent}}.table-row-new{animation:rowInsertFade .35s ease-out}.table,.data-table{transition:background-color .25s ease,color .25s ease,border-color .25s ease}.card,.stat-card,.session-badge,.navbar,input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=date],input[type=datetime-local],select,textarea{transition:background-color .3s ease,color .3s ease,border-color .3s ease}.data-bar-colors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.data-bar-color-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px}.data-bar-color-item label{display:flex;flex-direction:column;gap:.35rem}.data-bar-color-label{font-weight:500;font-size:.9rem}.data-bar-color-preview{display:block;width:80px;height:8px;border-radius:4px}.data-bar-cell{position:relative;padding:.4rem .6rem;font-weight:500;border-radius:4px;overflow:hidden;min-width:100px}.data-bar-cell .data-bar-bg{position:absolute;top:0;left:0;height:100%;border-radius:4px;z-index:0;transition:width .3s ease-out}.data-bar-cell .data-bar-value{position:relative;z-index:1;white-space:nowrap}.daily-register-table-wrap{position:relative;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;isolation:isolate;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.daily-register-table{width:100%;min-width:88rem;table-layout:fixed;border-collapse:separate;border-spacing:0}.daily-register-table th,.daily-register-table td{padding:.42rem .38rem;vertical-align:top;text-align:start}.daily-register-table th{white-space:normal;line-height:1.25}.daily-register-col-seq{width:2.5rem}.daily-register-col-patient{width:9rem}.daily-register-col-phone{width:7.5rem}.daily-register-col-age-gender{width:5.5rem}.daily-register-col-doctor{width:7rem}.daily-register-col-type-status{width:7.5rem}.daily-register-col-procedure{width:10rem}.daily-register-col-time{width:4.5rem}.daily-register-col-money{width:6.5rem}.daily-register-col-invoice-status{width:7rem}.daily-register-col-notes{width:7.5rem}.daily-register-table .daily-register-patient-cell{min-width:0;white-space:normal;text-align:start;background:var(--bg-card);background-clip:padding-box}.daily-register-table .daily-register-sticky-patient{position:sticky;inset-inline-start:0;z-index:2;box-shadow:0 0 0 1px var(--border-color),0 3px 9px #0f172a14}.daily-register-table th.daily-register-sticky-patient{z-index:3}.daily-register-table tbody tr:hover{transform:none}.daily-register-table tbody tr:hover>.daily-register-sticky-patient{background:var(--bg-card-hover)}.daily-register-patient-stack{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:.18rem;text-align:start}.daily-register-patient-name{max-width:100%;overflow-wrap:anywhere;font-weight:600;color:var(--text-heading)}.daily-register-profile-link{max-width:100%;padding:0;white-space:normal;text-align:start;font-size:.72rem;line-height:1.25}.daily-register-table .daily-register-doctor-cell{max-width:7rem;white-space:normal;text-align:start}.daily-register-doctor-name{display:inline-block;max-width:100%}.daily-register-table .daily-register-doctor-cell .clinician-badge{min-width:0;max-width:100%;padding:.16rem .38rem;white-space:normal;overflow-wrap:anywhere;text-align:start}.daily-register-type-status{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.28rem;white-space:normal;line-height:1.35}.daily-register-type-status .badge-clinical{text-transform:none}.daily-register-procedure-cell,.daily-register-notes-cell{white-space:normal}.daily-register-invoice-status-cell{white-space:normal;overflow-wrap:anywhere;line-height:1.35}.daily-register-procedure-stack{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:.22rem}.daily-register-no-treatment-badge{display:inline-flex;width:fit-content;padding:.1rem .38rem;border-radius:999px;background:#fef3c7;color:#92400e;font-size:.68rem;line-height:1.35;white-space:normal}.theme-dark .daily-register-no-treatment-badge{background:#f59e0b2e;color:#fde68a}.daily-register-clamped-text{display:-webkit-box;max-width:100%;max-height:2.7em;overflow:hidden;white-space:normal;overflow-wrap:anywhere;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.daily-register-no-treatment-detail{color:var(--text-secondary);font-size:.78rem}.daily-register-time-cell,.daily-register-table [data-testid=daily-register-phone]{white-space:nowrap}.daily-register-table .data-bar-cell{min-width:0;padding:.38rem .32rem;overflow:hidden;vertical-align:middle;text-align:end;font-size:.78rem;font-weight:500;font-variant-numeric:tabular-nums}.daily-register-table .data-bar-cell .data-bar-bg{top:50%;left:auto;inset-inline-start:0;height:.45rem;opacity:.5;transform:translateY(-50%);border-radius:999px}.daily-register-table .data-bar-cell .data-bar-value{display:inline-block;direction:ltr;unicode-bidi:isolate}.daily-register-remaining-muted .data-bar-value{color:var(--text-secondary);font-weight:400;opacity:.68}.daily-register-remaining-prominent .data-bar-value{color:#b91c1c;font-weight:700}.daily-register-table .daily-register-remaining-prominent .data-bar-bg{opacity:.8}.theme-dark .daily-register-remaining-prominent .data-bar-value{color:#fca5a5}.visit-form-reorganized{display:flex;flex-direction:column;gap:1.25rem}.visit-form-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem 1.25rem}.visit-form-section-header{margin:0 0 .75rem;font-size:.95rem;font-weight:600;color:var(--text-primary);padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.visit-form-section-grid{display:grid;gap:.75rem;grid-template-columns:repeat(4,1fr)}.visit-form-section-grid-3{grid-template-columns:repeat(3,1fr)}.visit-form-section-grid-2{grid-template-columns:repeat(2,1fr)}.visit-form-section-collapsible{padding:0;overflow:hidden}.visit-form-section-toggle{width:100%;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:none;border:none;cursor:pointer;font-size:.9rem;font-weight:500;color:var(--text-secondary);transition:background .2s}.visit-form-section-toggle:hover{background:var(--bg-hover)}.toggle-icon{font-size:.75rem;color:var(--text-muted)}.toggle-text{flex:1;text-align:left}.toggle-badge{background:#059669;color:#fff;padding:.2rem .5rem;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase}.visit-form-section-content{padding:.75rem 1.25rem 1.25rem;border-top:1px solid var(--border-color)}.session-preview-box{background:var(--bg-primary);border:1px dashed var(--border-color);border-radius:6px;padding:.5rem .75rem;font-size:.85rem;color:var(--text-secondary)}.session-preview-full{grid-column:1 / -1}.session-preview-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;background:var(--bg-primary);border:1px dashed var(--border-color);border-radius:6px;padding:.75rem;max-height:200px;overflow-y:auto}.session-preview-item{display:flex;justify-content:space-between;align-items:center;padding:.35rem .5rem;background:var(--bg-secondary);border-radius:4px;font-size:.8rem}.session-preview-label{color:var(--text-secondary);font-weight:500}.session-preview-amount{color:var(--text-primary);font-weight:600;font-family:var(--font-mono, monospace)}.field-hint{display:block;margin-top:.35rem;font-size:.75rem;color:var(--text-muted);font-style:italic}.visit-form-submit-section{display:flex;justify-content:flex-end;padding-top:.5rem}.visit-form-submit-section .visit-submit-btn{min-width:140px}@media(max-width:900px){.visit-form-section-grid,.visit-form-section-grid-3,.visit-form-section-grid-2{grid-template-columns:1fr}}@media(max-width:600px){.visit-form-section{padding:.75rem}.visit-form-section-toggle{padding:.5rem .75rem}}.visit-procedure-wrap{display:flex;flex-direction:column;gap:.35rem}.visit-procedure-line{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}.session-timeline{display:flex;align-items:center;gap:0;margin-top:.15rem}.timeline-circle{width:12px;height:12px;border-radius:50%;flex-shrink:0}.timeline-circle.timeline-planned,.timeline-circle.timeline-scheduled{background:transparent;border:2px dashed var(--text-muted, #9ca3af)}.timeline-circle.timeline-in_progress,.timeline-circle.timeline-in-progress{background:transparent;border:2px solid #f59e0b}.timeline-circle.timeline-completed{background:#22c55e;border:2px solid #22c55e}.timeline-circle.timeline-cancelled{background:#ef4444;border:2px solid #ef4444}.timeline-connector{width:8px;height:2px;background:var(--border-color, #e5e7eb);flex-shrink:0}.theme-dark .timeline-circle.timeline-planned,.theme-dark .timeline-circle.timeline-scheduled{border-color:#6b7280}.theme-dark .timeline-connector{background:#4b5563}@keyframes toast-slide-in{0%{transform:translateY(1rem);opacity:0}to{transform:translateY(0);opacity:1}}.session-toast{animation:toast-slide-in .3s ease}.fd-layout{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;align-items:start}.fd-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:1rem;box-shadow:var(--shadow-card);min-height:300px}.fd-panel-title{font-size:1rem;color:var(--text-brand);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.fd-placeholder{color:var(--text-secondary);font-size:.85rem;font-style:italic;text-align:center;padding:2rem 0}.fd-search-input{width:100%;padding:.5rem .7rem;border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;background:var(--bg-input);color:var(--text-main);margin-bottom:.5rem}.fd-search-input:focus{border-color:var(--text-brand);box-shadow:0 0 0 2px #0f346026;outline:none}.fd-loading{font-size:.8rem;color:var(--text-secondary)}.fd-patient-results{list-style:none;padding:0;margin:0;max-height:260px;overflow-y:auto;border:1px solid var(--border-color);border-radius:6px}.fd-patient-item{padding:.5rem .65rem;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .1s;display:flex;flex-direction:column;gap:.1rem}.fd-patient-item:last-child{border-bottom:none}.fd-patient-item:hover{background:var(--bg-nav-hover)}.fd-patient-selected{background:var(--bg-nav-active);border-left:3px solid var(--text-brand)}.fd-patient-name{font-weight:600;font-size:.88rem}.fd-patient-meta{font-size:.75rem;color:var(--text-secondary)}.fd-allergy-badge{font-size:.7rem;color:#ef4444;font-weight:600}.fd-no-results{font-size:.8rem;color:var(--text-secondary);text-align:center;padding:.5rem}.fd-quick-add-form{margin-top:.5rem;padding:.75rem;border:1px dashed var(--border-color);border-radius:6px;background:var(--bg-section)}.fd-quick-add-form .form-group{margin-bottom:.5rem}.fd-phone-unknown-label{font-size:.75rem;margin-left:.5rem;font-weight:400;cursor:pointer;display:inline-flex;align-items:center;gap:.2rem}.fd-visit-form .form-group{margin-bottom:.6rem}.fd-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.fd-recent-visits{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin-bottom:.75rem;padding:.4rem .5rem;background:var(--bg-section);border-radius:6px}.fd-recent-tag{font-size:.72rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:4px;padding:.15rem .4rem;color:var(--text-main)}.fd-exam-badge{display:inline-block;font-size:.6rem;padding:.05rem .3rem;border-radius:3px;margin-left:.25rem;color:#fff;font-weight:600}.fd-exam-pending{background:#f59e0b}.fd-exam-refunded{background:#ef4444}.fd-exam-banner{background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;padding:.5rem .75rem;font-size:.82rem;color:#92400e;font-weight:600;margin-bottom:.75rem}.fd-billing-summary{display:flex;gap:.75rem;flex-wrap:wrap;font-size:.85rem;margin-bottom:.75rem;padding:.4rem .5rem;background:var(--bg-section);border-radius:6px}.fd-direct-payment{margin-bottom:.75rem}.fd-inline-pay{display:flex;gap:.35rem;align-items:flex-end;flex-wrap:wrap;margin-top:.25rem}.fd-inline-pay input,.fd-inline-pay select{font-size:.8rem;padding:.3rem .4rem}.fd-payments-list{margin-bottom:.75rem}.fd-payments-list ul{list-style:none;padding:0;margin:.25rem 0 0}.fd-payment-row{display:flex;gap:.5rem;align-items:center;padding:.25rem 0;font-size:.8rem;border-bottom:1px solid var(--border-color)}.fd-payment-note{font-size:.72rem;color:var(--text-secondary)}.fd-invoices-section{margin-top:.75rem;border-top:1px solid var(--border-color);padding-top:.75rem}.fd-invoice-list{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.fd-invoice-chip{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background .1s}.fd-invoice-chip:hover{background:var(--bg-nav-hover)}.fd-invoice-active{background:var(--bg-nav-active);border-color:var(--text-brand)}.fd-invoice-detail{border:1px solid var(--border-color);border-radius:6px;padding:.65rem;margin-top:.5rem}.fd-invoice-header{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;margin-bottom:.5rem}.fd-line-items-table{width:100%;border-collapse:collapse;font-size:.8rem;margin-bottom:.5rem}.fd-line-items-table th{text-align:left;font-size:.7rem;color:var(--text-secondary);font-weight:600;border-bottom:1px solid var(--border-color);padding:.25rem .35rem}.fd-line-items-table td{padding:.25rem .35rem;border-bottom:1px solid var(--border-color)}.fd-invoice-totals{display:flex;gap:.75rem;font-size:.8rem;margin-bottom:.5rem;padding:.3rem 0}.fd-quick-add-btns{display:flex;gap:.35rem;margin-bottom:.5rem}.fd-quick-add-btns button{font-size:.72rem}.fd-lineitem-form{display:flex;gap:.25rem;align-items:flex-end;flex-wrap:wrap;margin-bottom:.5rem}.fd-lineitem-form input{font-size:.8rem;padding:.3rem .4rem}.fd-invoice-pay{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--border-color)}.badge-inv-draft{background:#94a3b8;color:#fff;padding:.1rem .3rem;border-radius:3px;font-size:.65rem;text-transform:uppercase}.badge-inv-issued{background:#3b82f6;color:#fff;padding:.1rem .3rem;border-radius:3px;font-size:.65rem;text-transform:uppercase}.badge-inv-partially_paid{background:#f59e0b;color:#fff;padding:.1rem .3rem;border-radius:3px;font-size:.65rem;text-transform:uppercase}.badge-inv-paid{background:#16a34a;color:#fff;padding:.1rem .3rem;border-radius:3px;font-size:.65rem;text-transform:uppercase}.badge-inv-void{background:#dc2626;color:#fff;padding:.1rem .3rem;border-radius:3px;font-size:.65rem;text-transform:uppercase}@media(max-width:1100px){.fd-layout{grid-template-columns:1fr 1fr}.fd-panel-billing{grid-column:span 2}}@media(max-width:700px){.fd-layout{grid-template-columns:1fr}.fd-panel-billing{grid-column:auto}.fd-form-row{grid-template-columns:1fr}}.public-page{min-height:100vh;display:flex;flex-direction:column;background:#fff;color:#1e293b}.theme-dark .public-page{background:#0f172a;color:#f1f5f9}.public-page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 2rem;background:#fff;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:100}.theme-dark .public-page-header{background:#1e293b;border-bottom-color:#334155}.public-page-brand{font-weight:800;font-size:1.4rem;color:#0f3460;text-decoration:none;letter-spacing:-.5px}.theme-dark .public-page-brand{color:#60a5fa}.public-page-nav{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.public-page-nav a{color:#64748b;text-decoration:none;font-size:.95rem;padding:.5rem .8rem;border-radius:8px;transition:all .2s ease}.theme-dark .public-page-nav a{color:#cbd5e1}.public-page-nav a:hover{background:#f0f9ff;color:#0f3460}.theme-dark .public-page-nav a:hover{background:#1e3a8a;color:#93c5fd}.lang-switcher{display:inline-flex;align-items:center;gap:.15rem;padding:.2rem;border-radius:999px;background:#0f34600f;border:1px solid #e2e8f0}.theme-dark .lang-switcher{background:#ffffff0d;border-color:#334155}.lang-switcher-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:.3rem .7rem;border-radius:999px;font-weight:700;font-size:.82rem;color:#64748b;cursor:pointer;transition:background .15s ease,color .15s ease;line-height:1.1}.lang-switcher-btn:hover{color:#0f3460}.theme-dark .lang-switcher-btn{color:#cbd5e1}.theme-dark .lang-switcher-btn:hover{color:#f0f9ff}.lang-switcher-btn.is-active{background:#fff;color:#0f3460;box-shadow:0 1px 3px #0f346029}.theme-dark .lang-switcher-btn.is-active{background:#1e293b;color:#93c5fd;box-shadow:0 1px 3px #0006}.lang-switcher-btn:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.lang-switcher-compact .lang-switcher-btn{padding:.25rem .55rem;min-width:2rem;text-align:center}.auth-shell-form-bar{display:flex;justify-content:flex-end;gap:.5rem;margin-bottom:.75rem}.appearance-switcher{display:inline-flex;align-items:center;gap:.15rem;padding:.2rem;border-radius:999px;background:#0f34600f;border:1px solid #e2e8f0}.theme-dark .appearance-switcher{background:#ffffff0d;border-color:#334155}.appearance-switcher-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:.3rem .6rem;border-radius:999px;font-weight:700;font-size:.82rem;color:#64748b;cursor:pointer;transition:background .15s ease,color .15s ease;line-height:1.1;display:inline-flex;align-items:center;gap:.35rem}.appearance-switcher-btn:hover{color:#0f3460}.theme-dark .appearance-switcher-btn{color:#cbd5e1}.theme-dark .appearance-switcher-btn:hover{color:#f0f9ff}.appearance-switcher-btn.is-active{background:#fff;color:#0f3460;box-shadow:0 1px 3px #0f346029}.theme-dark .appearance-switcher-btn.is-active{background:#1e293b;color:#93c5fd;box-shadow:0 1px 3px #0006}.appearance-switcher-btn:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.appearance-switcher-icon{font-size:.95rem;line-height:1}.appearance-switcher-compact .appearance-switcher-btn{padding:.25rem .5rem;min-width:2rem;justify-content:center}.appearance-switcher-compact .appearance-switcher-btn span[aria-hidden=true]{font-size:.95rem;line-height:1}.public-landing-main{flex:1;display:flex;flex-direction:column;gap:3rem;padding:2rem;max-width:100%}@media(min-width:768px){.public-landing-main{padding:3rem 4rem;gap:4rem}}@media(min-width:1200px){.public-landing-main{max-width:1280px;margin:0 auto}}.landing-hero{position:relative;overflow:hidden;padding:3.5rem 3rem;background:radial-gradient(circle at 85% 15%,rgba(59,130,246,.18),transparent 55%),radial-gradient(circle at 10% 90%,rgba(16,185,129,.16),transparent 50%),linear-gradient(135deg,#f0f9ff,#ecfdf5);border:1px solid #bfdbfe;border-radius:32px;margin-bottom:0}.theme-dark .landing-hero{background:radial-gradient(circle at 85% 15%,rgba(59,130,246,.28),transparent 55%),radial-gradient(circle at 10% 90%,rgba(16,185,129,.22),transparent 50%),linear-gradient(135deg,#0f3460,#0d4d3b);border-color:#1e3a8a}.landing-hero-decor{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.landing-hero-blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.45}.landing-hero-blob-a{width:320px;height:320px;top:-100px;inset-inline-end:-80px;background:radial-gradient(circle,#3b82f6 0%,transparent 70%)}.landing-hero-blob-b{width:260px;height:260px;bottom:-120px;inset-inline-start:-60px;background:radial-gradient(circle,#10b981 0%,transparent 70%)}.theme-dark .landing-hero-blob{opacity:.55}.landing-hero-grid{position:relative;z-index:1}.landing-hero-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center}@media(min-width:1024px){.landing-hero-grid{grid-template-columns:1.15fr .95fr}}.landing-beta-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.2rem;border-radius:999px;background:#dbeafe;color:#0f3460;font-size:.9rem;font-weight:700;margin-bottom:1.5rem;letter-spacing:.3px}.theme-dark .landing-beta-badge{background:#3b82f633;color:#93c5fd}.landing-hero-headline{font-size:2.5rem;line-height:1.1;margin-bottom:1.2rem;color:#0f3460;font-weight:900;letter-spacing:-.9px;background:linear-gradient(120deg,#0f3460,#1e40af 60%,#0891b2);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.theme-dark .landing-hero-headline{background:linear-gradient(120deg,#f0f9ff,#93c5fd 55%,#6ee7b7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@media(min-width:768px){.landing-hero-headline{font-size:3.4rem}}@media(min-width:1024px){.landing-hero-headline{font-size:3.8rem}}.landing-hero-subhead{font-size:1.1rem;color:#475569;max-width:45rem;margin-bottom:2rem;line-height:1.7}.theme-dark .landing-hero-subhead{color:#cbd5e1}.landing-hero-ctas{display:flex;flex-direction:column;gap:1rem;align-items:flex-start;margin-bottom:2rem}@media(min-width:640px){.landing-hero-ctas{flex-direction:row}}.landing-hero-ctas .btn-primary,.landing-hero-ctas .btn-secondary{padding:1rem 1.8rem;font-size:1rem;font-weight:700;border-radius:12px}.landing-hero-secondary-link,.landing-cta-login-link{color:#0f3460;text-decoration:underline;font-weight:700;font-size:1rem}.theme-dark .landing-hero-secondary-link,.theme-dark .landing-cta-login-link{color:#93c5fd}.landing-hero-note{margin-top:1.5rem;color:#64748b;font-size:.92rem;line-height:1.6;max-width:45rem}.theme-dark .landing-hero-note{color:#cbd5e1}.landing-hero-mockup{display:block}.mockup-window{background:#fff;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 24px 80px #0f34602e;overflow:hidden}.theme-dark .mockup-window{background:#1e293b;border-color:#334155;box-shadow:0 24px 80px #00000073}.mockup-window-bar{display:flex;align-items:center;gap:.4rem;padding:.7rem 1rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.theme-dark .mockup-window-bar{background:#0f172a;border-bottom-color:#334155}.mockup-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.mockup-dot-red{background:#ef4444}.mockup-dot-yellow{background:#f59e0b}.mockup-dot-green{background:#22c55e}.mockup-window-title{margin-inline-start:auto;margin-inline-end:.5rem;font-size:.8rem;font-weight:600;color:#64748b}.theme-dark .mockup-window-title{color:#94a3b8}.mockup-window-body{padding:1.4rem;display:grid;gap:1.1rem}.mockup-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.mockup-stat{display:flex;flex-direction:column;align-items:center;padding:.7rem .5rem;border-radius:12px;background:#f0f9ff;border:1px solid #bfdbfe}.theme-dark .mockup-stat{background:#0f3a8a;border-color:#1e40af}.mockup-stat-value{font-size:1.3rem;font-weight:800;color:#0f3460;line-height:1}.theme-dark .mockup-stat-value{color:#93c5fd}.mockup-stat-label{margin-top:.25rem;font-size:.75rem;color:#64748b;font-weight:600}.theme-dark .mockup-stat-label{color:#cbd5e1}.mockup-queue{display:grid;gap:.5rem}.mockup-patient{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.7rem .9rem;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}.theme-dark .mockup-patient{background:#0f172a;border-color:#334155}.mockup-patient.is-active{background:#eff6ff;border-color:#93c5fd}.theme-dark .mockup-patient.is-active{background:#1e3a8a;border-color:#3b82f6}.mockup-patient-main{display:flex;flex-direction:column;gap:.15rem;min-width:0}.mockup-name{color:#0f3460;font-size:.9rem;font-weight:700}.theme-dark .mockup-name{color:#f0f9ff}.mockup-meta{color:#64748b;font-size:.75rem}.theme-dark .mockup-meta{color:#94a3b8}.mockup-badge{font-size:.7rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;white-space:nowrap}.mockup-badge-new{background:#fef3c7;color:#92400e}.mockup-badge-active{background:#dbeafe;color:#1e40af}.mockup-badge-done{background:#dcfce7;color:#166534}.theme-dark .mockup-badge-new{background:#78350f;color:#fde68a}.theme-dark .mockup-badge-active{background:#1e3a8a;color:#bfdbfe}.theme-dark .mockup-badge-done{background:#14532d;color:#bbf7d0}.mockup-visit{padding:.9rem 1rem;border-radius:12px;background:#f9fafb;border:1px solid #e5e7eb}.theme-dark .mockup-visit{background:#1a202c;border-color:#2d3748}.mockup-visit-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.5rem}.mockup-visit h4{margin:0;color:#0f3460;font-weight:700;font-size:.95rem}.theme-dark .mockup-visit h4{color:#93c5fd}.mockup-visit-status{font-size:.7rem;font-weight:700;padding:.15rem .55rem;border-radius:999px;background:#dbeafe;color:#1e40af}.theme-dark .mockup-visit-status{background:#1e3a8a;color:#bfdbfe}.mockup-visit p{margin:0 0 .5rem;color:#475569;font-size:.85rem}.theme-dark .mockup-visit p{color:#cbd5e1}.mockup-visit-amount{display:flex;align-items:baseline;justify-content:space-between;padding-top:.5rem;border-top:1px dashed #e2e8f0;font-size:.85rem;color:#64748b}.theme-dark .mockup-visit-amount{border-top-color:#334155;color:#94a3b8}.mockup-visit-amount strong{color:#0f3460;font-size:1rem;font-weight:800}.theme-dark .mockup-visit-amount strong{color:#93c5fd}.landing-section{display:flex;flex-direction:column;gap:2rem}.landing-section-head{display:flex;flex-direction:column;gap:.8rem}.landing-section-head h2{position:relative;font-size:2rem;margin:0;padding-inline-start:1rem;color:#0f3460;font-weight:800;letter-spacing:-.5px}.landing-section-head h2:before{content:"";position:absolute;inset-inline-start:0;top:.35rem;bottom:.35rem;width:4px;border-radius:999px;background:linear-gradient(to bottom,#3b82f6,#10b981)}.theme-dark .landing-section-head h2{color:#f0f9ff}@media(min-width:768px){.landing-section-head h2{font-size:2.3rem}}.landing-section-head p{margin:0;color:#64748b;font-size:1.05rem;line-height:1.6;max-width:50rem}.theme-dark .landing-section-head p{color:#cbd5e1}.landing-pain-points-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.landing-pain-point-card{position:relative;background:#fff1f2;border:1.5px solid #fecdd3;padding:1.4rem 1.4rem 1.4rem 2.6rem;border-radius:16px;color:#881337;font-weight:600;font-size:.95rem;line-height:1.6}.landing-pain-point-card:before{content:"";position:absolute;inset-inline-start:1rem;top:1.55rem;width:.55rem;height:.55rem;border-radius:50%;background:#f43f5e;box-shadow:0 0 0 4px #f43f5e2e}.theme-dark .landing-pain-point-card{background:#f43f5e1a;border-color:#f43f5e59;color:#fecdd3}.theme-dark .landing-pain-point-card:before{background:#fb7185;box-shadow:0 0 0 4px #f43f5e38}.landing-pain-points-transition{color:#64748b;font-size:1rem;margin-top:1rem;text-align:center}.theme-dark .landing-pain-points-transition{color:#cbd5e1}.landing-before-after-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.landing-before-after-card{padding:1.8rem;border-radius:20px;border:1px solid #e2e8f0;background:#fff}.theme-dark .landing-before-after-card{background:#1e293b;border-color:#334155}.landing-before-after-card h3{margin-bottom:1.2rem;color:#0f3460;font-size:1.2rem;font-weight:700}.theme-dark .landing-before-after-card h3{color:#93c5fd}.landing-before-after-card ul{list-style:disc outside;padding-inline-start:1.2rem;color:#475569;line-height:1.9;margin:0}.theme-dark .landing-before-after-card ul{color:#cbd5e1}.landing-before-after-card li{margin-bottom:.6rem}.landing-feature-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}@media(min-width:1024px){.landing-feature-grid{grid-template-columns:repeat(4,1fr)}}.landing-feature-card{display:flex;flex-direction:column;gap:1.1rem;border-radius:20px;padding:1.5rem;min-height:auto;background:#fff;border:1px solid #e2e8f0;transition:all .3s ease}.theme-dark .landing-feature-card{background:#1e293b;border-color:#334155}.landing-feature-card:hover{border-color:#bfdbfe;box-shadow:0 8px 24px #0f346014}.theme-dark .landing-feature-card:hover{border-color:#1e40af;box-shadow:0 8px 24px #3b82f633}.feature-icon{width:2.8rem;height:2.8rem;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:#f0f9ff;color:#0f3460}.feature-icon svg{width:1.4rem;height:1.4rem}.theme-dark .feature-icon{background:#0f3a8a;color:#93c5fd}.landing-feature-card[data-accent="1"] .feature-icon{background:#dbeafe;color:#1d4ed8}.landing-feature-card[data-accent="2"] .feature-icon{background:#ffedd5;color:#c2410c}.landing-feature-card[data-accent="3"] .feature-icon{background:#ccfbf1;color:#0f766e}.landing-feature-card[data-accent="4"] .feature-icon{background:#dcfce7;color:#15803d}.landing-feature-card[data-accent="5"] .feature-icon{background:#ede9fe;color:#6d28d9}.landing-feature-card[data-accent="6"] .feature-icon{background:#fce7f3;color:#be185d}.landing-feature-card[data-accent="7"] .feature-icon{background:#fef3c7;color:#b45309}.landing-feature-card[data-accent="8"] .feature-icon{background:#e0e7ff;color:#4338ca}.theme-dark .landing-feature-card[data-accent="1"] .feature-icon{background:#3b82f638;color:#93c5fd}.theme-dark .landing-feature-card[data-accent="2"] .feature-icon{background:#f9731638;color:#fdba74}.theme-dark .landing-feature-card[data-accent="3"] .feature-icon{background:#14b8a638;color:#5eead4}.theme-dark .landing-feature-card[data-accent="4"] .feature-icon{background:#22c55e38;color:#86efac}.theme-dark .landing-feature-card[data-accent="5"] .feature-icon{background:#8b5cf638;color:#c4b5fd}.theme-dark .landing-feature-card[data-accent="6"] .feature-icon{background:#ec489938;color:#f9a8d4}.theme-dark .landing-feature-card[data-accent="7"] .feature-icon{background:#f59e0b38;color:#fcd34d}.theme-dark .landing-feature-card[data-accent="8"] .feature-icon{background:#6366f138;color:#a5b4fc}.landing-feature-card h3{font-size:1.05rem;margin:0;color:#0f3460;font-weight:700}.theme-dark .landing-feature-card h3{color:#f0f9ff}.landing-feature-card p{color:#64748b;margin:0;font-size:.95rem;line-height:1.5}.theme-dark .landing-feature-card p{color:#cbd5e1}.landing-workflow-list{position:relative;display:grid;gap:1.25rem;list-style:none;padding:0;margin:0}.landing-workflow-list:before{content:"";position:absolute;top:30px;bottom:30px;inset-inline-end:30px;width:2px;background:linear-gradient(to bottom,#3b82f600,#3b82f673 12%,#10b98173 88%,#10b98100);border-radius:999px;z-index:0}.landing-workflow-step{position:relative;z-index:1;display:grid;grid-template-columns:60px 1fr;gap:1.5rem;padding:1.4rem 1.8rem;border-radius:18px;background:#fff;border:1px solid #e2e8f0;transition:transform .2s ease,box-shadow .2s ease}.landing-workflow-step:hover{transform:translate(-4px);box-shadow:0 12px 28px #0f346014}[dir=rtl] .landing-workflow-step:hover{transform:translate(4px)}.theme-dark .landing-workflow-step{background:#1e293b;border-color:#334155}.theme-dark .landing-workflow-step:hover{box-shadow:0 12px 28px #3b82f62e}.landing-workflow-step-number{position:relative;display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#0891b2);color:#fff;font-weight:800;font-size:1.3rem;box-shadow:0 6px 18px #3b82f659;z-index:2}.landing-workflow-step:nth-child(n+4) .landing-workflow-step-number{background:linear-gradient(135deg,#10b981,#0891b2);box-shadow:0 6px 18px #10b98159}.landing-workflow-step h3{margin:0 0 .5rem;color:#0f3460;font-size:1.1rem;font-weight:700}.theme-dark .landing-workflow-step h3{color:#f0f9ff}.landing-workflow-step p{margin:0;color:#64748b;font-size:.95rem;line-height:1.5}.theme-dark .landing-workflow-step p{color:#cbd5e1}.landing-cta-repeat-card{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;padding:2.5rem 3rem;border-radius:28px;background:radial-gradient(circle at 90% 10%,rgba(255,255,255,.18),transparent 55%),linear-gradient(135deg,#1e40af,#0891b2 55%,#10b981);border:none;color:#fff;box-shadow:0 24px 60px #1e40af59}.theme-dark .landing-cta-repeat-card{background:radial-gradient(circle at 90% 10%,rgba(255,255,255,.12),transparent 55%),linear-gradient(135deg,#1e3a8a,#0e7490 55%,#047857);border:none;box-shadow:0 24px 60px #00000073}.landing-cta-repeat-card h2{margin:0 0 .5rem;color:#fff;font-size:1.6rem;font-weight:800;letter-spacing:-.3px}.theme-dark .landing-cta-repeat-card h2{color:#fff}.landing-cta-repeat-card p{margin:0;color:#ffffffe0;font-size:1rem}.theme-dark .landing-cta-repeat-card p{color:#ffffffd9}.landing-cta-repeat-card .btn-primary{background:#fff;color:#0f3460;border:none}.landing-cta-repeat-card .btn-primary:hover{background:#f0f9ff;color:#0f3460}.landing-cta-repeat-card .btn-secondary{background:#ffffff1f;color:#fff;border:1px solid rgba(255,255,255,.6)}.landing-cta-repeat-card .btn-secondary:hover{background:#ffffff38;color:#fff}.landing-cta-actions{display:flex;gap:1rem;flex-wrap:wrap}@media(max-width:768px){.landing-cta-repeat-card{grid-template-columns:1fr}.landing-cta-actions{flex-direction:column}}.landing-cta-section{margin-top:2rem}.landing-cta-card{padding:2.5rem;border-radius:24px;background:linear-gradient(135deg,#f0f9ff,#ecfdf5);border:1.5px solid #bfdbfe;text-align:center}.theme-dark .landing-cta-card{background:linear-gradient(135deg,#0f3a8a,#064e3b);border-color:#1e40af}.landing-cta-card h2{margin:0 0 1rem;color:#0f3460;font-size:1.8rem;font-weight:800}.theme-dark .landing-cta-card h2{color:#f0f9ff}.landing-cta-card p{margin:0 0 1.5rem;color:#64748b;font-size:1rem}.theme-dark .landing-cta-card p{color:#cbd5e1}.landing-trust-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.landing-trust-card{display:flex;flex-direction:column;gap:.9rem;padding:1.8rem;border-radius:20px;background:#fff;border:1px solid #e2e8f0}.theme-dark .landing-trust-card{background:#1e293b;border-color:#334155}.trust-icon{width:2.6rem;height:2.6rem;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#f0f9ff;color:#0f3460}.trust-icon svg{width:1.3rem;height:1.3rem}.theme-dark .trust-icon{background:#0f3a8a;color:#93c5fd}.landing-trust-card[data-accent="1"] .trust-icon{background:#dbeafe;color:#1d4ed8}.landing-trust-card[data-accent="2"] .trust-icon{background:#dcfce7;color:#15803d}.landing-trust-card[data-accent="3"] .trust-icon{background:#ede9fe;color:#6d28d9}.landing-trust-card[data-accent="4"] .trust-icon{background:#ccfbf1;color:#0f766e}.theme-dark .landing-trust-card[data-accent="1"] .trust-icon{background:#3b82f638;color:#93c5fd}.theme-dark .landing-trust-card[data-accent="2"] .trust-icon{background:#22c55e38;color:#86efac}.theme-dark .landing-trust-card[data-accent="3"] .trust-icon{background:#8b5cf638;color:#c4b5fd}.theme-dark .landing-trust-card[data-accent="4"] .trust-icon{background:#14b8a638;color:#5eead4}.landing-trust-card h3{margin:0 0 .4rem;color:#0f3460;font-size:1.05rem;font-weight:700}.theme-dark .landing-trust-card h3{color:#93c5fd}.landing-trust-card p{margin:0;color:#64748b;font-size:.95rem;line-height:1.6}.theme-dark .landing-trust-card p{color:#cbd5e1}.landing-trust-disclaimer{color:#64748b;font-size:.85rem;text-align:center;padding-top:1rem;border-top:1px solid #e2e8f0;margin-top:2rem}.theme-dark .landing-trust-disclaimer{color:#cbd5e1;border-top-color:#334155}.landing-faq-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.landing-faq-card{padding:1.6rem;border-radius:20px;background:#fff;border:1px solid #e2e8f0}.theme-dark .landing-faq-card{background:#1e293b;border-color:#334155}.landing-faq-card h4{margin:0 0 .8rem;color:#0f3460;font-weight:700;font-size:1rem}.theme-dark .landing-faq-card h4{color:#93c5fd}.landing-faq-card p{margin:0;color:#64748b;font-size:.95rem;line-height:1.6}.theme-dark .landing-faq-card p{color:#cbd5e1}.landing-pricing-grid{display:grid;gap:1.8rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.landing-pricing-card{position:relative;padding:2rem;border-radius:24px;background:#fff;border:1.5px solid #e2e8f0;display:flex;flex-direction:column;gap:1.5rem;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.theme-dark .landing-pricing-card{background:#1e293b;border-color:#334155}.landing-pricing-card:hover{border-color:#bfdbfe;box-shadow:0 12px 36px #0f34601a}.theme-dark .landing-pricing-card:hover{border-color:#1e40af}.landing-pricing-card.is-featured{border-width:2px;border-color:#3b82f6;background:radial-gradient(circle at 100% 0%,rgba(59,130,246,.08),transparent 60%),#fff;box-shadow:0 18px 48px #3b82f62e;transform:translateY(-4px)}@media(min-width:1024px){.landing-pricing-card.is-featured{transform:translateY(-8px) scale(1.02)}}.theme-dark .landing-pricing-card.is-featured{border-color:#60a5fa;background:radial-gradient(circle at 100% 0%,rgba(96,165,250,.18),transparent 60%),#1e293b;box-shadow:0 18px 48px #3b82f659}.landing-pricing-featured-badge{position:absolute;top:-.85rem;inset-inline-end:1.5rem;padding:.35rem .9rem;border-radius:999px;background:linear-gradient(135deg,#3b82f6,#0891b2);color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.3px;box-shadow:0 6px 16px #3b82f659}.landing-pricing-head h3{margin:0 0 .5rem;color:#0f3460;font-size:1.2rem;font-weight:700}.theme-dark .landing-pricing-head h3{color:#f0f9ff}.landing-pricing-price{margin:0;color:#0f3460;font-size:1.3rem;font-weight:800}.theme-dark .landing-pricing-price{color:#93c5fd}.landing-pricing-description{margin:0;color:#64748b;font-size:.95rem}.theme-dark .landing-pricing-description{color:#cbd5e1}.landing-pricing-bullets{list-style:disc outside;padding-inline-start:1.2rem;margin:0;color:#475569;font-size:.95rem}.theme-dark .landing-pricing-bullets{color:#cbd5e1}.landing-pricing-bullets li{margin-bottom:.5rem}.landing-payment-notice{padding:2rem;border-radius:20px;background:#fffbeb;border:1.5px solid #fcd34d}.theme-dark .landing-payment-notice{background:#78350f;border-color:#b45309}.landing-payment-notice h3{margin:0 0 1rem;color:#92400e;font-size:1.1rem;font-weight:700}.theme-dark .landing-payment-notice h3{color:#fcd34d}.landing-payment-notice p{margin:.75rem 0;color:#b45309;font-size:.95rem;line-height:1.6}.theme-dark .landing-payment-notice p{color:#fde68a}.landing-payment-notice p:first-of-type{margin-top:0}.landing-payment-notice p:last-of-type{margin-bottom:0}.card{background:#fff;border-radius:12px;border:1px solid #e2e8f0}.theme-dark .card{background:#1e293b;border-color:#334155}@media(max-width:768px){.public-landing-main{padding:1.5rem;gap:2.5rem}.landing-hero{padding:2rem}.landing-hero-grid{gap:1.5rem}.landing-hero-headline{font-size:2rem}.landing-section-head h2{font-size:1.6rem}.landing-cta-repeat-card{grid-template-columns:1fr;padding:1.8rem;gap:1.5rem}.landing-workflow-step{grid-template-columns:50px 1fr;gap:1rem;padding:1.3rem}.landing-workflow-step-number{width:50px;height:50px;font-size:1.1rem}.landing-feature-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.public-page-header{padding:1rem;flex-direction:column;align-items:flex-start}.public-landing-main{padding:1rem;gap:2rem}.landing-hero{padding:1.5rem}.landing-hero-headline{font-size:1.6rem}.landing-hero-subhead{font-size:1rem}.landing-hero-ctas{flex-direction:column;align-items:stretch}.landing-hero-ctas .btn-primary,.landing-hero-ctas .btn-secondary{width:100%;text-align:center}.landing-section-head h2{font-size:1.3rem}.landing-feature-grid,.landing-before-after-grid,.landing-pain-points-grid,.landing-daily-flow-grid,.landing-pricing-grid,.landing-faq-grid{grid-template-columns:1fr}.landing-cta-card,.landing-payment-notice{padding:1.5rem}.landing-workflow-step{grid-template-columns:45px 1fr;padding:1rem}.landing-workflow-step-number{width:45px;height:45px;font-size:.95rem}}.public-footer{background:var(--bg-card);border-top:1px solid var(--border-color);margin-top:auto;padding:1.5rem 1rem}.public-footer-inner{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;align-items:start}.public-footer-brand strong{display:block;font-size:1.05rem;color:var(--text-brand);margin-bottom:.25rem}.public-footer-brand p{color:var(--text-secondary);margin:0;font-size:.92rem}.public-footer-nav{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center}.public-footer-nav a{color:var(--text-secondary);text-decoration:none;font-size:.92rem}.public-footer-nav a:hover{color:var(--text-main);text-decoration:underline}.public-footer-payment-note{color:var(--text-secondary);font-size:.85rem;line-height:1.5}.public-footer-copy{color:var(--text-secondary);font-size:.85rem}.public-legal-main{flex:1}.public-legal-article{max-width:880px;margin:0 auto}.public-legal-article-head h1{font-size:1.6rem;margin-bottom:.4rem;color:var(--text-heading)}.public-legal-meta{color:var(--text-secondary);font-size:.9rem;margin:0 0 .75rem}.public-legal-disclaimer{background:#fef9c3;color:#713f12;border:1px solid #facc15;border-radius:8px;padding:.8rem 1rem;margin-bottom:1rem;font-size:.95rem}.theme-dark .public-legal-disclaimer{background:#422006;color:#fde68a;border-color:#b45309}.public-legal-content section{margin-bottom:1.4rem}.public-legal-content h2{font-size:1.15rem;margin-bottom:.5rem;color:var(--text-heading)}.public-legal-content p,.public-legal-content li{color:var(--text-secondary);line-height:1.85}.public-legal-content ul{padding-inline-start:1.3rem;display:flex;flex-direction:column;gap:.35rem}@media(max-width:720px){.landing-hero{padding:1.25rem}.landing-hero-headline{font-size:1.6rem}.public-page-header{padding:.85rem 1rem}}.onboarding-prompt{border-inline-start:4px solid var(--text-brand);background:linear-gradient(135deg,#0f34600f,#3b82f608)}.onboarding-prompt h3{margin-bottom:.4rem;color:var(--text-heading)}.onboarding-page .onboarding-header{margin-bottom:1rem}.onboarding-stepper{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.6rem}.onboarding-stepper-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-secondary);font-size:.92rem}.onboarding-stepper-item.is-active{border-color:var(--text-brand);color:var(--text-heading);font-weight:600}.onboarding-stepper-item.is-completed{background:#22c55e14;border-color:#22c55e66;color:var(--text-heading)}.onboarding-stepper-index{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:999px;background:var(--bg-section);color:var(--text-brand);font-weight:700;font-size:.85rem}.onboarding-stepper-item.is-completed .onboarding-stepper-index{background:#22c55e2e;color:#166534}.onboarding-footer-actions{margin-top:1rem}.catalog-page{max-width:1100px;margin-inline:auto;padding:1.25rem}.catalog-page-header h1{margin-bottom:.25rem}.catalog-muted{color:var(--text-secondary);font-size:.925rem}.stat-card-gateway{display:block;width:100%;margin-block-start:.75rem;text-align:start;cursor:pointer;border:1px dashed var(--border-color);background:var(--bg-section)}.stat-card-gateway:hover,.stat-card-gateway:focus-visible{border-color:var(--text-brand)}.catalog-breadcrumb-sep{color:var(--text-muted);margin-inline:.4rem}.catalog-breadcrumb-current{color:var(--text-secondary);overflow-wrap:anywhere}.catalog-breadcrumb{margin-block-end:.75rem}.catalog-search{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem}.catalog-search .form-group{flex:1 1 16rem;min-width:0}.catalog-product-header{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-start}.catalog-product-heading{flex:1 1 18rem;min-width:0}.catalog-product-title{margin:.35rem 0 .2rem;font-size:1.5rem;line-height:1.3;color:var(--text-heading);overflow-wrap:anywhere}.catalog-product-maker{margin:0;color:var(--text-secondary)}.catalog-variant-parent{margin-block-start:.5rem;color:var(--text-main)}.catalog-product-visual{flex:0 0 auto;width:8.5rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.9rem;border:1px solid var(--border-color);border-radius:.75rem;background:var(--bg-section);text-align:center}.catalog-product-visual-initials{width:3.5rem;height:3.5rem;display:grid;place-items:center;border-radius:50%;background:var(--bg-badge);color:var(--text-brand);font-size:1.25rem;font-weight:700}.catalog-product-visual-meta{display:flex;flex-direction:column;align-items:center;gap:.3rem;min-width:0}.catalog-product-visual-maker{font-size:.8rem;font-weight:600;color:var(--text-main);overflow-wrap:anywhere}.catalog-product-visual-note{margin:0;font-size:.7rem;color:var(--text-muted);line-height:1.35}.catalog-badges{display:flex;flex-wrap:wrap;gap:.4rem}.catalog-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--bg-section);color:var(--text-main);white-space:nowrap}.catalog-chip-sm{font-size:.68rem;margin-inline-start:.4rem}.catalog-chip-product{background:var(--bg-badge);color:var(--text-brand)}.catalog-chip-variant{background:var(--bg-badge);color:var(--text-brand);border:1px dashed var(--border-color)}.catalog-chip-muted{background:var(--bg-section);color:var(--text-secondary)}.catalog-section{margin-block-start:1rem}.catalog-section h2{color:var(--text-heading)}.catalog-identity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.75rem 1.25rem;margin:0}.catalog-identity-row{min-width:0}.catalog-identity-row dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.catalog-identity-row dd{margin:.1rem 0 0;color:var(--text-main);overflow-wrap:anywhere}.catalog-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem}.catalog-resource-group+.catalog-resource-group{margin-block-start:1.1rem}.catalog-resource-group-title{font-size:.95rem;margin:0 0 .5rem;color:var(--text-heading)}.catalog-resource-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.catalog-resource{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;padding:.75rem .9rem;border:1px solid var(--border-color);border-radius:.6rem;background:var(--bg-card)}.catalog-resource-body{flex:1 1 16rem;min-width:0}.catalog-resource-title{margin:.35rem 0 .2rem;font-size:.975rem;line-height:1.35;color:var(--text-main);overflow-wrap:anywhere}.catalog-resource-source{margin:0;display:flex;flex-wrap:wrap;gap:.25rem .6rem;font-size:.825rem;color:var(--text-secondary);min-width:0}.catalog-resource-source-name{font-weight:600;color:var(--text-main)}.catalog-resource-domain{overflow-wrap:anywhere}.catalog-resource-link{flex:0 0 auto;display:inline-flex;align-items:center;gap:.35rem;min-height:2.25rem}[dir=rtl] .catalog-external-icon{transform:scaleX(-1)}.catalog-rights-note{margin-block-start:.9rem}.catalog-inline-error{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.catalog-section-note{margin:0 0 .6rem;font-size:.825rem}.catalog-video-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem}.catalog-video{display:grid;gap:.6rem}.catalog-video-facade{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;width:100%;max-width:40rem;min-width:0;aspect-ratio:16 / 9;padding:1rem;border:1px solid var(--border-color);border-radius:.6rem;background:var(--bg-section);color:var(--text-main);text-align:center;cursor:pointer}.catalog-video-facade:hover,.catalog-video-facade:focus-visible{border-color:var(--text-brand)}.catalog-play-icon{flex:0 0 auto;color:var(--text-brand)}.catalog-video-facade-text{display:grid;gap:.15rem;min-width:0}.catalog-play-icon{width:40px;height:40px}.catalog-video-facade-action{font-weight:600}.catalog-video-facade-note{font-size:.8rem;color:var(--text-secondary)}.catalog-video-frame{position:relative;width:100%;max-width:40rem;min-width:0;aspect-ratio:16 / 9;border-radius:.6rem;overflow:hidden;background:var(--bg-section);border:1px solid var(--border-color)}.catalog-video-frame iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.catalog-video-meta{display:grid;gap:.3rem;justify-items:start}.catalog-video-title{margin:0;font-size:.975rem;line-height:1.35;color:var(--text-main);overflow-wrap:anywhere}.catalog-manufacturer-name{margin:0 0 .2rem;font-weight:600;color:var(--text-main)}.catalog-channel-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.catalog-channel{display:inline-flex;align-items:center;flex-wrap:wrap;max-width:100%;gap:.4rem;min-height:2.25rem;padding:.35rem .7rem;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-card);color:var(--text-main);font-size:.875rem;text-decoration:none}.catalog-channel:hover,.catalog-channel:focus-visible{border-color:var(--text-brand);color:var(--text-brand)}.catalog-channel-icon{color:var(--text-secondary)}.catalog-channel-label{font-weight:600}.catalog-channel-qualifier{color:var(--text-secondary);font-size:.8rem}.catalog-channel-handle{color:var(--text-muted);font-size:.8rem;overflow-wrap:anywhere}.catalog-row-link{font-weight:600}.catalog-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-block-start:.75rem}@media(max-width:640px){.catalog-page{padding:.75rem}.catalog-product-header{flex-direction:column}.catalog-product-heading{order:-1;flex:0 0 auto}.catalog-product-visual{width:100%;flex-direction:row;justify-content:flex-start;gap:.75rem;text-align:start}.catalog-product-visual-initials{width:2.75rem;height:2.75rem;font-size:1rem;flex:0 0 auto}.catalog-product-visual-meta,.catalog-resource{align-items:flex-start}.catalog-resource-link{width:100%;justify-content:center}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.proc-row-item{font-size:.75rem;color:var(--text-main);display:inline-flex;align-items:center;gap:.4rem;flex-wrap:wrap}.proc-details-open-btn{font-size:.75rem;font-weight:600;padding:.2rem .6rem;border:1px solid var(--border-color);border-radius:.4rem;background:var(--bg-section);color:var(--text-brand);cursor:pointer;white-space:nowrap;line-height:1.4}.proc-details-open-btn:hover{background:var(--bg-card-hover);border-color:var(--text-brand)}.proc-details-content.proc-details-content{max-width:34rem}.proc-details-body{display:flex;flex-direction:column;gap:.7rem;padding:.25rem .1rem}.proc-details-section{background:var(--bg-section);border:1px solid var(--border-color);border-radius:.55rem;padding:.7rem .8rem}.proc-details-section h3{font-size:.82rem;font-weight:700;color:var(--text-heading);margin:0 0 .5rem}.proc-details-clinical-section{border-inline-start:3px solid var(--text-brand)}.proc-details-invoice-section{background:transparent}.proc-details-grid{display:grid;grid-template-columns:auto 1fr;gap:.35rem .85rem;margin:0;font-size:.85rem}.proc-details-grid dt{font-weight:600;color:var(--text-secondary)}.proc-details-grid dd{margin:0;color:var(--text-main);word-break:break-word}.proc-details-clinical p{margin:0 0 .4rem;font-size:.86rem;color:var(--text-main)}.proc-details-notes{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.5rem}.proc-details-fields-group{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--border-color)}.proc-details-fields-title{font-size:.8rem;font-weight:700;color:var(--text-brand);margin:0 0 .4rem}.proc-details-list{margin:0;padding-inline-start:1.15rem;font-size:.83rem;color:var(--text-main);display:flex;flex-direction:column;gap:.25rem}.proc-details-field-key{font-weight:600;color:var(--text-secondary)}.proc-details-empty{margin:0;font-size:.82rem;color:var(--text-secondary);font-style:italic}.proc-details-open-invoice{font-size:.8rem;color:var(--text-secondary);text-decoration:underline;text-underline-offset:2px}.proc-details-open-invoice:hover{color:var(--text-brand)}.proc-details-tabs{display:flex;gap:.25rem;margin:.1rem 0 .75rem;border-bottom:1px solid var(--border-color)}.proc-details-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-secondary);font:600 .85rem inherit;padding:.4rem .7rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.proc-details-tab:hover{color:var(--text-main)}.proc-details-tab.is-active{color:var(--text-brand);border-bottom-color:var(--text-brand)}.proc-details-case-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.proc-details-case-header h3{margin:0}.proc-details-status-badge{font-size:.72rem;font-weight:700;padding:.1rem .55rem;border-radius:999px;border:1px solid var(--border-color);color:var(--text-secondary);white-space:nowrap}.proc-details-status-badge.status-completed{color:#16a34a;border-color:#16a34a}.proc-details-status-badge.status-in_progress{color:var(--text-brand);border-color:var(--text-brand)}.proc-details-session-current{border-inline-start:3px solid var(--text-brand)}:root[data-visual-theme=premium-hybrid][data-theme=light]{--app-bg: #f5f7fa;--app-surface: #ffffff;--app-text: #1a1a2e;--app-text-muted: #64748b;--app-border: #e2e8f0;--app-primary: #0f3460;--app-surface-elevated: #ffffff;--app-glass: rgba(255, 255, 255, .66);--app-glass-border: rgba(15, 42, 80, .1);--app-text-secondary: #48566e;--app-primary-hover: #0e7490;--app-focus: #12b0c7;--app-success: #10b981;--app-warning: #e58f0a;--app-danger: #f43f5e;--app-info: #3b82f6;--app-ai: #7c3aed;--app-shadow: rgba(15, 42, 80, .12);--app-glow: rgba(6, 182, 212, .3)}:root[data-visual-theme=premium-hybrid][data-theme=dark]{--app-bg: #0f172a;--app-surface: #1e293b;--app-text: #e2e8f0;--app-text-muted: #94a3b8;--app-border: #334155;--app-primary: #60a5fa;--app-surface-elevated: #24344a;--app-glass: rgba(18, 30, 44, .56);--app-glass-border: rgba(255, 255, 255, .08);--app-text-secondary: #93a6b8;--app-primary-hover: #3fcbe0;--app-focus: #34cfe6;--app-success: #34d399;--app-warning: #f0b13a;--app-danger: #fb5f78;--app-info: #60a5fa;--app-ai: #a78bfa;--app-shadow: rgba(0, 0, 0, .55);--app-glow: rgba(34, 211, 238, .42)}:root[data-visual-theme=azure-premium][data-theme=light]{--app-bg: #eef3fb;--app-surface: #ffffff;--app-surface-elevated: #ffffff;--app-glass: rgba(255, 255, 255, .66);--app-glass-border: rgba(20, 50, 100, .1);--app-text: #0f1e33;--app-text-secondary: #45566f;--app-text-muted: #6a7a92;--app-border: #d8e3f1;--app-primary: #2563eb;--app-primary-hover: #1d4ed8;--app-focus: #3b82f6;--app-success: #10b981;--app-warning: #d97706;--app-danger: #e5484d;--app-info: #0ea5e9;--app-ai: #7c3aed;--app-shadow: rgba(15, 42, 90, .12);--app-glow: rgba(56, 189, 248, .28)}:root[data-visual-theme=azure-premium][data-theme=dark]{--app-bg: #0a1424;--app-surface: #101d31;--app-surface-elevated: #16263f;--app-glass: rgba(18, 33, 53, .56);--app-glass-border: rgba(255, 255, 255, .08);--app-text: #dde9f6;--app-text-secondary: #93a6bd;--app-text-muted: #6b8098;--app-border: #1c3149;--app-primary: #3b82f6;--app-primary-hover: #60a5fa;--app-focus: #60a5fa;--app-success: #34d399;--app-warning: #f0b13a;--app-danger: #f4707a;--app-info: #38bdf8;--app-ai: #a78bfa;--app-shadow: rgba(0, 0, 0, .55);--app-glow: rgba(56, 189, 248, .4)}:root[data-visual-theme=teal-aurora][data-theme=light]{--app-bg: #edf5f2;--app-surface: #ffffff;--app-surface-elevated: #ffffff;--app-glass: rgba(255, 255, 255, .62);--app-glass-border: rgba(15, 60, 55, .1);--app-text: #0f2226;--app-text-secondary: #45605f;--app-text-muted: #6a8482;--app-border: #d6e6e1;--app-primary: #0d9488;--app-primary-hover: #0f766e;--app-focus: #14b8a6;--app-success: #059669;--app-warning: #d98314;--app-danger: #e11d48;--app-info: #2563eb;--app-ai: #8b5cf6;--app-shadow: rgba(15, 52, 50, .12);--app-glow: rgba(20, 184, 166, .26)}:root[data-visual-theme=teal-aurora][data-theme=dark]{--app-bg: #08171a;--app-surface: #0f1f22;--app-surface-elevated: #16292c;--app-glass: rgba(17, 34, 36, .56);--app-glass-border: rgba(255, 255, 255, .07);--app-text: #daece9;--app-text-secondary: #90aaa6;--app-text-muted: #6b8783;--app-border: #193430;--app-primary: #2dd4bf;--app-primary-hover: #4fe0cf;--app-focus: #2dd4bf;--app-success: #34d399;--app-warning: #f0b13a;--app-danger: #fb7185;--app-info: #60a5fa;--app-ai: #a78bfa;--app-shadow: rgba(0, 0, 0, .55);--app-glow: rgba(45, 212, 191, .4)}:root[data-visual-theme=indigo-intelligence][data-theme=light]{--app-bg: #f0f1fb;--app-surface: #ffffff;--app-surface-elevated: #ffffff;--app-glass: rgba(255, 255, 255, .66);--app-glass-border: rgba(79, 70, 229, .12);--app-text: #14162e;--app-text-secondary: #474d6c;--app-text-muted: #6a7093;--app-border: #dfe1f2;--app-primary: #4f46e5;--app-primary-hover: #4338ca;--app-focus: #6366f1;--app-success: #10b981;--app-warning: #d97706;--app-danger: #e5484d;--app-info: #2563eb;--app-ai: #7c3aed;--app-shadow: rgba(30, 27, 75, .14);--app-glow: rgba(79, 70, 229, .26)}:root[data-visual-theme=indigo-intelligence][data-theme=dark]{--app-bg: #0a0c1c;--app-surface: #12152b;--app-surface-elevated: #191d38;--app-glass: rgba(20, 24, 48, .56);--app-glass-border: rgba(150, 160, 255, .12);--app-text: #e6e8fb;--app-text-secondary: #a1a8cd;--app-text-muted: #6f77a2;--app-border: #222749;--app-primary: #6366f1;--app-primary-hover: #818cf8;--app-focus: #818cf8;--app-success: #34d399;--app-warning: #f0b13a;--app-danger: #fb6b70;--app-info: #60a5fa;--app-ai: #a78bfa;--app-shadow: rgba(0, 0, 0, .6);--app-glow: rgba(99, 102, 241, .4)}
