:root{--bg:#f7f5f2;--panel:#ffffffb8;--panel-2:#ffffff80;--line:#e6e2dc;--line-2:#d9d4cc;--glass-blur:blur(20px) saturate(160%);--glass-border:#221f1b24;--glass-sheen:linear-gradient(165deg, #ffffff8c, #fff0 45%);--ink:#221f1b;--ink-2:#4a453e;--muted:#7d766c;--accent:#9c3f5a;--accent-ink:#7d2f47;--accent-soft:#f7eaee;--ok:#2f7a4f;--ok-soft:#e8f4ec;--warn:#a86a12;--warn-soft:#fdf3e3;--danger:#b13434;--danger-soft:#fbe8e8;--r:10px;--r-lg:14px;--shadow:inset 0 1px 0 #ffffff80, 0 1px 3px #1412100f;--shadow-lg:inset 0 1px 0 #fff9, 0 12px 32px #14121029;--ease:cubic-bezier(.22, .68, 0, 1);--rail-top:#cb2c44e0;--rail-bottom:#400610f0;--rail-indicator:#ff8fa3;--rail-bg:#1c1a18;--rail-ink:#f3efe9;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--text-xs:.74rem;--text-sm:.84rem;--text-base:.95rem;--text-lg:1.1rem;--text-xl:1.4rem;--text-2xl:1.9rem;--text-3xl:2.6rem;--weight-regular:400;--weight-medium:600;--weight-bold:750;--duration-fast:.12s;--duration-base:.2s;--duration-slow:.4s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--tap-min:2.25rem;--container-max:78rem;--rail-w:12rem;--list-w:20rem}*{box-sizing:border-box}html,body{height:100%}html{max-width:100%;overflow-x:hidden}body{color:var(--ink);background:radial-gradient(circle at 10% 0%, #9c3f5a1f, transparent 45%), radial-gradient(circle at 90% 100%, #2f7a4f14, transparent 40%), var(--bg);font:var(--text-base)/1.55 ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;accent-color:var(--accent);-webkit-font-smoothing:antialiased;overflow-wrap:break-word;background-attachment:fixed;max-width:100%;margin:0;overflow-x:hidden}.scroll-x{overflow-x:auto}img,svg,video{max-width:100%;height:auto}a{color:var(--accent-ink)}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;line-height:1.2}p{margin:0}@keyframes liftIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes sway{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}@keyframes breathe{0%,to{opacity:.85}50%{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}svg{flex:none}.portal{--panel:#fff;--panel-2:#f9fafb;--line:#e8eaee;--line-2:#d3d8e0;--ink:#0f172a;--ink-2:#334155;--muted:#64748b;--portal-surface-border:color-mix(in srgb, var(--line) 75%, #ffffffd9);--portal-island-shadow:0 0 0 1px #fff9 inset, 0 1px 3px #00000008, 0 16px 40px -8px #10182814, 0 32px 70px -16px #1018281f;--glass-blur:blur(16px);--glass-border:var(--line);--glass-sheen:#fff6;--r:10px;--r-lg:16px;--shadow:0 1px 2px #1018280d, 0 2px 6px #1018280d;--shadow-lg:0 20px 48px -8px #10182824, 0 4px 12px #1018280f;--ok:#059669;--ok-soft:#ecfdf5;--warn:#d97706;--warn-soft:#fffbeb;--danger:#dc2626;--danger-soft:#fef2f2;--rail-w:15rem;--rail-ink:#f1f5f9;--sheet-inset:.75rem;--sheet-radius:24px;--weight-bold:650;--field-frame:1px solid var(--line-2);--field-line:1px solid var(--line-2);--field-r:var(--r);--field-bg:var(--panel);--field-pad:.55rem .85rem;--field-shadow:0 1px 2px #10182808;--btn-fill-image:linear-gradient(180deg, color-mix(in srgb, var(--accent) 92%, #fff), var(--accent));--btn-fill-hover-image:linear-gradient(180deg, var(--accent), var(--accent-ink));--btn-outline-bg:var(--panel);--btn-outline-ink:var(--ink-2);--btn-outline-border:var(--line-2);--tabs-bg:var(--track);--tabs-pad:4px;--tabs-r:12px;--tabs-line:none;--tab-pad:.45rem .95rem;--tab-r:9px;--tab-on-bg:var(--panel);--tab-on-ink:var(--ink);--tab-on-shadow:0 2px 8px #10182814;--tab-on-line:transparent;--tabs-display:inline-flex;--tile-r:18px;--tile-ico-r:14px;--tile-ico:2.75rem;--tile-ico-bg:var(--accent-soft);--tile-ico-bg-warn:var(--warn-soft);--tile-val:1.75rem;--tile-hover:translateY(-2px);--shadow-tile:var(--shadow);--table-r:16px;--table-bg:var(--panel);--table-head-bg:var(--panel-2);--table-ring:0 0 0 1px var(--line), var(--shadow);--empty-ico-bg:var(--accent-soft);--empty-ico-border:transparent;--empty-ico-ink:var(--accent-ink);--chip-neutral-bg:#f1f5f9;--chip-neutral-ink:var(--ink-2);--chip-neutral-border:transparent;--field-focus:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.portal-client{--accent:#d946ef;--accent-ink:#c026d3;--accent-soft:#fdf4ff;--bg:#fcf8fb;--track:#fae8ff;--rail-bg:#180816;--rail-indicator:#f472b6;--canvas-radial:radial-gradient(circle at 10% 8%, #d946ef14 0%, transparent 45%), radial-gradient(circle at 90% 92%, #c026d30f 0%, transparent 42%)}.portal-practitioner{--accent:#0d9488;--accent-ink:#0f766e;--accent-soft:#f0fdfa;--bg:#f7faf9;--track:#ccfbf1;--rail-bg:#061716;--rail-indicator:#2dd4bf;--canvas-radial:radial-gradient(circle at 10% 8%, #0d948814 0%, transparent 45%), radial-gradient(circle at 90% 92%, #0f766e0f 0%, transparent 42%)}.portal-admin{--accent:#6366f1;--accent-ink:#4f46e5;--accent-soft:#eef2ff;--bg:#f8fafc;--track:#e0e7ff;--rail-bg:#0a0d1f;--rail-indicator:#818cf8;--canvas-radial:radial-gradient(circle at 10% 8%, #6366f117 0%, transparent 45%), radial-gradient(circle at 90% 92%, #4f46e512 0%, transparent 42%)}.app-shell{background:var(--rail-bg,var(--bg));min-height:100dvh;display:flex}.portal-main{min-width:0;margin:var(--sheet-inset) var(--sheet-inset) var(--sheet-inset) 0;border-radius:var(--sheet-radius);background-color:var(--bg);background-image:var(--canvas-radial);border:1px solid var(--portal-surface-border);box-shadow:var(--portal-island-shadow);min-height:calc(100dvh - 2 * var(--sheet-inset));transition:all .2s var(--ease);background-attachment:fixed;flex-direction:column;flex:auto;display:flex;overflow:clip;container:portal-main/inline-size}.portal-main>*{flex:auto;min-width:0}.pane-row{flex:auto;min-width:0;min-height:100%;display:flex}.list-pane{width:var(--list-w);border-right:1px solid color-mix(in srgb, var(--line) 75%, transparent);min-height:calc(100dvh - 2 * var(--sheet-inset));background:color-mix(in srgb, var(--panel) 92%, var(--bg));-webkit-backdrop-filter:blur(14px);flex-direction:column;flex:none;display:flex}.list-pane-head{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line)}.list-pane-head h1{font-size:var(--text-base);font-weight:var(--weight-bold);letter-spacing:-.01em}.list-pane-body{scrollbar-gutter:stable;padding:var(--space-2) 0;flex:auto;overflow-y:auto}.list-row{text-align:left;margin:3px var(--space-3);color:inherit;cursor:pointer;font:inherit;transition:all var(--duration-fast) var(--ease);background:0 0;border:1px solid #0000;border-radius:12px;flex-direction:column;gap:.25rem;padding:.65rem .85rem;text-decoration:none;display:flex;position:relative}.list-row:hover{background:color-mix(in srgb, var(--panel-2) 80%, white);border-color:color-mix(in srgb, var(--line) 60%, transparent);transform:translate(2px)}.list-row.on{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 30%, transparent);box-shadow:0 2px 6px color-mix(in srgb, var(--accent) 12%, transparent)}.list-row.on:before{content:"";background:var(--accent);border-radius:99px;width:3px;position:absolute;top:.5rem;bottom:.5rem;left:0}.list-row .row-title{color:var(--ink);font-weight:600;font-size:var(--text-sm)}.list-row.on .row-title{color:var(--accent-ink)}.list-row .row-sub{font-size:var(--text-xs);color:var(--muted)}.detail-pane{min-width:0;padding:var(--space-5) var(--space-6) var(--space-7);scrollbar-gutter:stable;flex:auto;overflow-y:auto}.detail-head{justify-content:space-between;align-items:center;gap:var(--space-4);top:calc(-1 * var(--space-5));z-index:5;margin:calc(-1 * var(--space-5)) calc(-1 * var(--space-6)) var(--space-5);padding:1.1rem var(--space-6);background:color-mix(in srgb, var(--bg) 82%, #ffffffbf);-webkit-backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid color-mix(in srgb, var(--line) 65%, transparent);flex-wrap:wrap;min-height:4.8rem;display:flex;position:sticky;box-shadow:0 1px 3px #10182808}.detail-head h1{letter-spacing:-.03em;color:var(--ink);font-size:1.6rem;font-weight:750}.detail-head p{color:var(--muted);font-size:var(--text-sm);margin-top:.15rem;font-weight:450}.detail-head .head-title{align-items:center;gap:1rem;min-height:2rem;display:flex}.detail-head .head-actions{flex-wrap:wrap;align-items:center;gap:.6rem;margin-left:auto;display:flex}.detail-head .head-ico{color:#fff;background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent-ink) 85%, #000));width:2.85rem;height:2.85rem;box-shadow:0 8px 20px -4px color-mix(in srgb, var(--accent) 45%, transparent), 0 0 0 1px #ffffff4d inset;border-radius:16px;flex:none;justify-content:center;align-items:center;display:flex}.detail-pane :is(input:is([type=text],[type=search],[type=email],[type=password],[type=number],[type=url],[type=tel],[type=date],:not([type])),select,textarea){border:1px solid var(--line-2);border-radius:var(--r);background:var(--panel);padding:.5rem .75rem}.detail-pane :is(input,select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent);outline:none}.detail-pane a{color:var(--accent-ink)}@media (width<=960px){.pane-row{flex-direction:column}.list-pane{border-right:none;border-bottom:1px solid var(--line);width:100%;min-height:auto;max-height:40vh}}@media (width<=760px){.portal-main{box-shadow:none;min-height:100dvh;padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0));border:none;border-radius:0;margin:0}.pane-row{min-height:100dvh}.detail-pane{padding:var(--space-4) var(--space-4) calc(5.5rem + env(safe-area-inset-bottom,0))}.detail-head{margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) var(--space-4);padding:.8rem var(--space-4);top:calc(-1 * var(--space-4))}}.card-panel{background:var(--panel);border:1px solid var(--line)}.ph{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6) var(--space-4);border-bottom:1px solid var(--line);display:flex}.ph h2,.ph h3{font-size:var(--text-xl);font-weight:var(--weight-bold)}.pb{padding:var(--space-5) var(--space-6)}.pb.center{text-align:center}button,input,select,textarea{font:inherit;color:inherit}label{font-size:var(--text-sm);color:var(--ink-2);font-weight:600}.sprig{display:inline-flex}.sprig svg{width:20px;height:24px}.leafmark{position:relative;overflow:hidden}.leafmark:after{content:"";pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 24'><path d='M10 23V7' fill='none' stroke='white' stroke-opacity='.14' stroke-width='1.3'/><path d='M10 13c0-3.6 2.4-6.4 6-7-.3 3.8-2.6 6.4-6 7z' fill='white' fill-opacity='.10'/></svg>");background-repeat:no-repeat;width:10rem;height:10rem;position:absolute;bottom:-2rem;right:-2rem}.container{max-width:var(--container-max);padding:0 var(--space-5);margin:0 auto}.grid-auto{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.rail-layout{grid-template-columns:var(--list-w) 1fr;gap:var(--space-5);align-items:start;display:grid}.rail-layout>.rail{gap:var(--space-5);align-content:start;display:grid}@media (width<=960px){.rail-layout{grid-template-columns:1fr}}.hint{color:var(--muted);font-size:var(--text-sm)}.chip-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.toasts.svelte-1kymlcg{inset:auto var(--space-5) var(--space-5) auto;color:inherit;z-index:200;background:0 0;border:none;flex-direction:column;gap:.5rem;margin:0;padding:0;display:flex;position:fixed;overflow:visible}.toast.svelte-1kymlcg{border-radius:var(--r);background:var(--ink);color:#fff;box-shadow:var(--shadow-lg);font-size:var(--text-sm);animation:liftIn .3s var(--ease) both;align-items:center;gap:.5rem;padding:.7rem 1rem;display:flex}.toast.alert.svelte-1kymlcg{background:var(--danger)}.toast.svelte-1kymlcg svg:where(.svelte-1kymlcg){width:16px;height:16px}.nav-progress.svelte-degj0i{z-index:999;background:var(--accent);transform-origin:0;height:3px;animation:6s cubic-bezier(.1,.6,.2,1) forwards svelte-degj0i-nav-progress-grow;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}@keyframes svelte-degj0i-nav-progress-grow{0%{transform:scaleX(0)}to{transform:scaleX(.92)}}@media (prefers-reduced-motion:reduce){.nav-progress.svelte-degj0i{animation:none;transform:scaleX(.92)}}
