:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--bg-elev:#fff;--surface:#fff;--surface-2:#f2f3f3;--ink:#1a1a1a;--ink-2:#4d4d4d;--muted:#737373;--line:#00000017;--line-strong:#0000002e;--warm:#ff7a2e;--red:#ff453d;--rose:#f5487a;--violet:#b05fe0;--teal:#14b8a6;--grad:linear-gradient(115deg, var(--warm) 0%, var(--red) 34%, var(--rose) 64%, var(--violet) 100%);--accent:#d9261c;--accent-soft:#d9261c14;--accent-glow:#e5342857;--btn-bg:var(--ink);--btn-ink:var(--bg);--btn-shadow:0 10px 24px -14px #0000008c;--ok:#0b8a6a;--danger:#c8102e;--danger-soft:#c8102e14;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 1px 2px #0000000a, 0 8px 28px -10px #0000001a;--shadow-lg:0 30px 70px -30px #00000042;--radius-sm:10px;--radius:16px;--radius-lg:22px;--orb-red:linear-gradient(140deg, #ff453d 10%, #fa630f 90%);--orb-pink:linear-gradient(140deg, #fb3a58 10%, #f770c7 90%);--orb-purple:linear-gradient(140deg, #bc6ae3 10%, #f274b5 90%);--orb-opacity:.55;--font-sans:"Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", system-ui, sans-serif;--font-head:"Zen Maru Gothic", "Noto Sans JP", "Hiragino Maru Gothic ProN", system-ui, sans-serif;--font-display:"Outfit", "Zen Maru Gothic", "Noto Sans JP", system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--ease:cubic-bezier(.2, .7, .2, 1);--spring:cubic-bezier(.34, 1.4, .64, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.75}h1,h2,h3,h4{font-family:var(--font-head);font-weight:700}p,li,dd{text-wrap:pretty}a{color:var(--accent)}::selection{background:color-mix(in srgb, var(--accent) 22%, transparent)}[hidden]{display:none!important}.container{width:100%;max-width:1160px;margin:0 auto;padding:0 24px}.grad-text{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text}.phrase{display:inline-block}.eyebrow{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;margin:0 0 14px;font-size:.78rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--grad);border-radius:2px;width:22px;height:2px}.btn{isolation:isolate;height:46px;font:inherit;cursor:pointer;white-space:nowrap;transition:transform .3s var(--spring), box-shadow .3s var(--ease), background .25s var(--ease), border-color .25s var(--ease), color .25s var(--ease);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:hover{transform:translateY(-2px)}.btn:active{transition-duration:.1s;transform:translateY(0)scale(.97)}.btn .arrow{transition:transform .3s var(--spring)}.btn:hover .arrow{transform:translate(4px)}.btn-primary{background:var(--btn-bg);color:var(--btn-ink);box-shadow:var(--btn-shadow)}.btn-primary:hover{box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 10%, transparent), 0 16px 30px -14px #00000073}.btn-primary:after,.sheen:after{content:"";z-index:-1;background:linear-gradient(105deg, transparent 30%, color-mix(in srgb, var(--btn-ink) 26%, transparent) 48%, transparent 66%);pointer-events:none;position:absolute;inset:0;transform:translate(-110%)}.btn-primary:hover:after,.sheen:hover:after{transition:transform .75s var(--ease);transform:translate(110%)}.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--bg);box-shadow:var(--btn-shadow)}.btn-sm{height:36px;padding:0 14px;font-size:.85rem}.badge{background:var(--surface-2);height:26px;color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:.75rem;font-weight:700;display:inline-flex}.badge.ok{background:color-mix(in srgb, var(--ok) 14%, transparent);color:var(--ok)}.badge.wait{background:color-mix(in srgb, var(--warm) 16%, transparent);color:color-mix(in srgb, var(--warm) 80%, var(--ink))}.badge.ng{background:var(--danger-soft);color:var(--danger)}.status-dot{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px}.status-dot.online{background:var(--ok);animation:ping 2.4s var(--ease) infinite}.status-dot.offline{background:var(--danger)}@keyframes ping{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--ok) 55%, transparent)}70%,to{box-shadow:0 0 0 7px #0000}}[data-reveal]{opacity:0;filter:blur(4px);transition:opacity .9s var(--ease), transform .9s var(--ease), filter .9s var(--ease);transition-delay:calc(var(--d,0) * 90ms);transform:translateY(22px)}[data-reveal].in{opacity:1;filter:none;transform:none}.orbs{pointer-events:none;position:absolute;inset:0;overflow:hidden}.orb{width:var(--s,420px);aspect-ratio:1;opacity:var(--orb-opacity);filter:blur(var(--b,46px));will-change:transform;animation:orb-float var(--t,28s) ease-in-out infinite alternate;animation-delay:var(--delay,0s);border-radius:50%;position:absolute}.orb.red{background:var(--orb-red)}.orb.pink{background:var(--orb-pink)}.orb.purple{background:var(--orb-purple)}@keyframes orb-float{0%{transform:translate(0,0)scale(1)}50%{transform:translate3d(var(--dx,40px), var(--dy,-30px), 0) scale(1.06)}to{transform:translate3d(calc(var(--dx,40px) * -.6), calc(var(--dy,-30px) * -.8), 0) scale(.96)}}.grain:after{content:"";pointer-events:none;opacity:.2;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=640px){.container{padding:0 16px}.btn{height:50px}}@media (width<=860px){input,select,textarea{font-size:16px!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;transition-delay:0s!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}[data-reveal]{opacity:1;filter:none;transform:none}.orb{animation:none}}.contact-backdrop{z-index:200;-webkit-backdrop-filter:blur(6px);animation:contact-fade .25s var(--ease);background:#1410186b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.contact-dialog{background:var(--surface);width:min(820px,100%);max-height:min(900px,100dvh - 48px);animation:contact-rise .4s var(--spring);border-radius:24px;outline:none;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 40px 100px -30px #00000073}@keyframes contact-fade{0%{opacity:0}}@keyframes contact-rise{0%{opacity:0;transform:translateY(24px)scale(.98)}}.contact-head{border-bottom:1px solid var(--line);background:radial-gradient(80% 140% at 0% 0%, color-mix(in srgb, var(--warm) 14%, transparent), transparent 60%), radial-gradient(70% 140% at 100% 0%, color-mix(in srgb, var(--violet) 14%, transparent), transparent 60%), var(--surface);grid-template-columns:1fr auto;gap:14px 16px;padding:26px 32px 18px;display:grid;position:relative}.contact-eyebrow{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 2px;font-size:.75rem;font-weight:600}.contact-head h2{margin:0;font-size:1.45rem;line-height:1.3}.contact-close{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--ink-2);cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease), transform .25s var(--spring);border-radius:50%;place-items:center;display:grid}.contact-close:hover{background:var(--ink);color:var(--bg);transform:rotate(90deg)}.contact-steps{counter-reset:step;grid-column:1/-1;gap:8px;margin:0;padding:0;list-style:none;display:flex}.contact-steps li{background:var(--surface-2);color:var(--muted);transition:background .3s var(--ease), color .3s var(--ease);border-radius:999px;flex:1;align-items:center;gap:8px;padding:8px 12px;font-size:.85rem;font-weight:700;display:flex;position:relative}.contact-step-no{background:var(--surface);width:22px;height:22px;font-family:var(--font-display);border-radius:50%;place-items:center;font-size:.75rem;display:grid}.contact-steps li.now{background:var(--ink);color:var(--bg)}.contact-steps li.now .contact-step-no{background:var(--grad);color:#fff}.contact-steps li.done{background:color-mix(in srgb, var(--ok) 12%, transparent);color:var(--ok)}.contact-body{overscroll-behavior:contain;flex:1;padding:22px 32px 8px;overflow-y:auto}.contact-lead{color:var(--ink-2);margin:0 0 18px;font-size:.92rem}.contact-row{border-top:1px solid var(--line);grid-template-columns:200px 1fr;align-items:start;gap:8px 20px;padding:14px 0;display:grid}.contact-label{justify-content:space-between;align-items:center;gap:8px;padding-top:12px;font-size:.9rem;font-weight:700;display:flex}.req,.opt{border-radius:4px;flex:none;padding:1px 8px;font-size:.7rem;font-style:normal;font-weight:700;line-height:1.6}.req{background:var(--accent);color:#fff}.opt{background:var(--surface-2);color:var(--muted)}.contact-field{min-width:0;position:relative}.contact-field input,.contact-field select,.contact-field textarea{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:48px;color:var(--ink);font:inherit;transition:border-color .2s var(--ease), box-shadow .2s var(--ease);border-radius:10px;padding:11px 14px;font-size:16px}.contact-field textarea{resize:vertical;min-height:132px;line-height:1.6}.contact-field input::placeholder,.contact-field textarea::placeholder{color:color-mix(in srgb, var(--muted) 80%, transparent)}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb, var(--rose) 16%, transparent);outline:none}.contact-field [aria-invalid=true]{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 3%, var(--surface))}.contact-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.contact-count{text-align:right;font-family:var(--font-display);color:var(--muted);margin-top:4px;font-size:.75rem;display:block}.contact-count.over{color:var(--danger);font-weight:700}.contact-error{color:var(--danger);margin:6px 0 0;font-size:.82rem;font-weight:700}.contact-error:before{content:"! "}.contact-topics{flex-wrap:wrap;gap:8px;padding-top:4px;display:flex}.contact-topic{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none;height:40px;transition:background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);border-radius:999px;align-items:center;padding:0 16px;font-size:.88rem;font-weight:500;display:inline-flex;position:relative}.contact-topic input{opacity:0;pointer-events:none;position:absolute}.contact-topic:hover{border-color:var(--ink)}.contact-topic.on{background:var(--ink);border-color:var(--ink);color:var(--bg);font-weight:700}.contact-topic:has(input:focus-visible){box-shadow:0 0 0 4px color-mix(in srgb, var(--rose) 22%, transparent)}.contact-row.invalid .contact-topic:not(.on){border-color:color-mix(in srgb, var(--danger) 50%, transparent)}.contact-agree{background:var(--surface-2);border-radius:14px;margin:8px 0 18px;padding:18px 20px}.contact-policy summary{cursor:pointer;color:var(--accent);font-size:.88rem;font-weight:700}.contact-policy p{background:var(--surface);color:var(--ink-2);border-radius:10px;margin:10px 0 0;padding:12px 14px;font-size:.82rem}.contact-check{cursor:pointer;align-items:center;gap:10px;margin-top:12px;font-size:.92rem;font-weight:700;display:flex}.contact-check input{width:20px;height:20px;accent-color:var(--ink)}.contact-check.invalid{color:var(--danger)}.contact-confirm dl{border-top:1px solid var(--line);margin:0 0 18px}.contact-item{border-bottom:1px solid var(--line);grid-template-columns:200px 1fr;gap:4px 20px;padding:14px 0;display:grid}.contact-item dt{color:var(--muted);font-size:.85rem;font-weight:700}.contact-item dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.contact-none{color:var(--muted);font-size:.88rem}.contact-done{text-align:center;flex-direction:column;align-items:center;padding:36px 8px 28px;display:flex}.contact-done-mark{background:var(--grad);width:96px;height:96px;box-shadow:0 0 0 10px color-mix(in srgb, var(--rose) 12%, transparent), 0 18px 40px -12px var(--accent-glow);animation:contact-rise .6s var(--spring);border-radius:50%;place-items:center;display:grid}.contact-done-mark path{stroke-dasharray:24;stroke-dashoffset:24px;animation:contact-check .5s .25s var(--ease) forwards}@keyframes contact-check{to{stroke-dashoffset:0}}.contact-done h3{margin:22px 0 8px;font-size:1.35rem}.contact-done p{color:var(--ink-2);margin:0}.contact-demo-note{font-size:.8rem;color:var(--muted)!important;margin-top:18px!important}.contact-foot{padding:16px 32px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 92%, transparent);justify-content:flex-end;gap:10px;display:flex}.contact-foot .btn[disabled]{opacity:.6;cursor:progress}@media (width<=720px){.contact-backdrop{place-items:end stretch;padding:0}.contact-dialog{border-radius:0;width:100%;height:100dvh;max-height:100dvh}.contact-head{padding:calc(16px + env(safe-area-inset-top)) 16px 14px}.contact-head h2{font-size:1.2rem}.contact-steps li{justify-content:center;padding:6px 8px}.contact-body{padding:16px 16px 8px}.contact-row,.contact-item{grid-template-columns:1fr}.contact-label{justify-content:flex-start;padding-top:0}.contact-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.contact-foot .btn{flex:1}}@media (prefers-reduced-motion:reduce){.contact-backdrop,.contact-dialog,.contact-done-mark{animation:none}.contact-done-mark path{stroke-dashoffset:0;animation:none}}.logo{align-items:center;gap:10px;display:inline-flex}.wordmark{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:1.32rem;font-weight:600;line-height:1}.logo-mark{display:block;overflow:visible}.lm-path,.lm-glow,.lm-signal{fill:none;stroke-linecap:round;stroke-linejoin:round}.lm-path{stroke-width:5.5px;stroke-dasharray:100;stroke-dashoffset:100px;animation:1.6s cubic-bezier(.6,0,.2,1) .1s forwards lm-draw}.lm-signal{stroke:#fff;stroke-width:2.2px;stroke-dasharray:7 33 7 53;opacity:0;animation:3.6s linear 1.6s infinite lm-flow,.6s 1.6s forwards lm-fade}.lm-glow{stroke-width:9px;opacity:.55;filter:blur(7px);animation:4.8s ease-in-out infinite lm-breathe}@keyframes lm-draw{to{stroke-dashoffset:0}}@keyframes lm-flow{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}@keyframes lm-fade{to{opacity:.95}}@keyframes lm-breathe{0%,to{opacity:.35}50%{opacity:.7}}@media (prefers-reduced-motion:reduce){.lm-path{stroke-dashoffset:0}.lm-signal{display:none}}.hero{margin-top:-76px;padding:132px 0 90px;position:relative;overflow:hidden}.aurora{pointer-events:none;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 55%,#0000);mask-image:linear-gradient(#000 55%,#0000)}.blob{filter:blur(48px);opacity:.55;border-radius:50%;animation:22s ease-in-out infinite alternate drift;position:absolute}.b1{background:var(--orb-red);width:520px;height:520px;opacity:calc(var(--orb-opacity) * .8);top:40px;left:-120px}.b2{background:var(--orb-pink);width:460px;height:460px;opacity:calc(var(--orb-opacity) * .6);animation-duration:26s;animation-delay:-6s;top:-160px;left:38%}.b3{background:var(--orb-purple);width:600px;height:600px;opacity:calc(var(--orb-opacity) * .8);animation-duration:30s;animation-delay:-12s;top:60px;right:-160px}@keyframes drift{0%{transform:translate(0)scale(1)}50%{transform:translate(60px,40px)scale(1.08)}to{transform:translate(-40px,70px)scale(.95)}}.hero-grid-bg{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);pointer-events:none;background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000 30%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 40%,#000 30%,#0000 75%)}.hero-inner{grid-template-columns:1.05fr 1fr;align-items:center;gap:40px;display:grid;position:relative}.hero-pill{border:1px solid var(--line-strong);background:color-mix(in srgb, var(--surface) 70%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ink-2);border-radius:999px;align-items:center;gap:10px;margin:0 0 26px;padding:6px 16px 6px 10px;font-size:.82rem;display:inline-flex}.pill-spark{background:conic-gradient(from 0deg, var(--warm), var(--rose), var(--violet), var(--warm));width:18px;height:18px;box-shadow:0 0 14px var(--accent-glow);border-radius:50%;animation:6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.hero h1{letter-spacing:-.02em;margin:0;font-size:clamp(2.6rem,6vw,4.6rem);font-weight:700;line-height:1.12}.shimmer{background-image:linear-gradient(100deg, var(--warm), var(--rose), var(--violet), var(--rose), var(--warm));background-size:250% 100%;animation:8s ease-in-out infinite shimmer}@keyframes shimmer{0%,to{background-position:0%}50%{background-position:100%}}.hero-lead{max-width:520px;color:var(--ink-2);margin:26px 0 0;font-size:1.06rem}.hero-cta{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.hero-visual{aspect-ratio:1;justify-self:center;width:min(100%,480px);position:relative}.orbit{border:1px dashed var(--line-strong);border-radius:50%;margin:auto;animation:60s linear infinite spin;position:absolute;inset:0}.orbit:after{content:"";background:var(--violet);width:8px;height:8px;box-shadow:0 0 12px var(--violet);border-radius:50%;margin-left:-4px;position:absolute;top:-4px;left:50%}.o1{width:100%;height:100%;animation-delay:-14s}.o2{width:74%;height:74%;animation-duration:40s;animation-direction:reverse;animation-delay:-27s}.o2:after{background:var(--warm);box-shadow:0 0 12px var(--warm)}.o3{border-style:solid;border-color:var(--line);width:48%;height:48%;animation-duration:24s;animation-delay:-9s}.o3:after{background:var(--rose);box-shadow:0 0 12px var(--rose)}.hero-mark{place-items:center;animation:7s ease-in-out infinite float;display:grid;position:absolute;inset:0}.hero-mark svg{width:48%;height:auto}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.chip{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 78%, transparent);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-md);animation:chip-in .9s var(--ease) both, float 6s ease-in-out infinite;animation-delay:calc(.8s + var(--i) * .15s), calc(var(--i) * -1.4s);border-radius:14px;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute}.chip b{font-size:.86rem;line-height:1.3;display:block}.chip small{color:var(--muted);font-size:.72rem;line-height:1.3;display:block}.chip-dot{background:var(--grad);border-radius:50%;flex:none;width:10px;height:10px}.chip-tl{top:10%;left:-6%}.chip-tr{top:16%;right:-8%}.chip-bl{bottom:16%;left:-10%}.chip-br{bottom:8%;right:-2%}@keyframes chip-in{0%{opacity:0;transform:translateY(14px)scale(.96)}}.section{padding:84px 0}.section-head{max-width:720px;margin-bottom:40px}.section-head.center{text-align:center;margin-left:auto;margin-right:auto}.section h2,.cta-band h2{letter-spacing:-.01em;margin:0;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.35}.section-lead{color:var(--ink-2);margin:14px 0 0}.strong{font-family:var(--font-display);font-size:1.3em;font-weight:700}.why{padding-top:40px}.why-inner{grid-template-columns:.9fr 1.1fr;align-items:center;gap:56px;display:grid}.why-stat{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);flex-direction:column;gap:6px;padding:36px 34px;display:flex;position:relative;overflow:hidden}.why-stat:before{content:"";background:var(--grad);height:4px;position:absolute;inset:0 0 auto}.why-label{color:var(--ink-2);font-size:.88rem}.why-num{font-family:var(--font-display);font-size:1.4rem;font-weight:600}.why-num b{letter-spacing:-.04em;background:var(--grad);color:#0000;font-variant-numeric:tabular-nums;-webkit-background-clip:text;background-clip:text;margin:0 4px;font-size:clamp(4rem,9vw,6rem);line-height:1.05}.why-src{color:var(--muted);font-size:.75rem}.why-copy p:last-child{color:var(--ink-2);margin:20px 0 0}.principles{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.principle{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md);transition:transform .35s var(--ease), box-shadow .35s var(--ease), opacity .8s var(--ease);padding:28px 24px;position:relative}.principle:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.principle-no{font-family:var(--font-display);color:var(--accent);font-size:.85rem;font-weight:600}.principle h3{margin:14px 0 10px;font-size:1.2rem}.principle p{color:var(--ink-2);margin:0;font-size:.92rem}.flow-section{background:linear-gradient(180deg, transparent, var(--surface-2) 30%, var(--surface-2) 70%, transparent)}.flow{grid-template-columns:repeat(4,1fr);gap:20px;margin:0;padding:0;list-style:none;display:grid;position:relative}.flow:before{content:"";background-repeat:no-repeat;background-image:linear-gradient(90deg, transparent, var(--rose), transparent), linear-gradient(90deg, var(--line-strong), var(--line-strong));background-size:30% 100%,100% 100%;height:2px;animation:3.2s linear infinite flow-line;position:absolute;top:22px;left:12%;right:12%}@keyframes flow-line{0%{background-position:-40% 0,0 0}to{background-position:140% 0,0 0}}.flow-step{text-align:center;padding:0 8px;position:relative}.flow-no{background:var(--surface);border:1px solid var(--line-strong);width:46px;height:46px;font-family:var(--font-display);box-shadow:var(--shadow-md);border-radius:50%;place-items:center;margin:0 auto 16px;font-weight:600;display:grid;position:relative}.flow-step.human .flow-no{background:var(--ink);color:var(--bg);box-shadow:0 0 0 6px var(--accent-soft), var(--shadow-md);border-color:#0000}.flow-step h3{margin:0 0 6px;font-size:1.05rem}.flow-step p{color:var(--ink-2);margin:0;font-size:.88rem}.tools{grid-template-columns:1.3fr 1fr 1fr;gap:16px;display:grid}.tool-card{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md);color:var(--ink);transition:transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease), opacity .8s var(--ease);flex-direction:column;padding:28px 26px 24px;text-decoration:none;display:flex;position:relative;overflow:hidden}.tool-card:hover{box-shadow:var(--shadow-lg);border-color:color-mix(in srgb, var(--accent) 40%, transparent);transform:translateY(-4px)}.tool-card.featured:before{content:"";background:var(--grad);opacity:.14;filter:blur(30px);border-radius:50%;width:240px;height:240px;position:absolute;top:-80px;right:-80px}.tool-top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.tool-no{font-family:var(--font-display);letter-spacing:.12em;color:var(--muted);font-size:.75rem;font-weight:600}.tool-card h3{margin:0 0 8px;font-size:1.18rem}.tool-card p{color:var(--ink-2);margin:0 0 22px;font-size:.9rem}.tool-go{color:var(--accent);margin-top:auto;font-size:.9rem;font-weight:700}.tool-go .arrow{transition:transform .25s var(--ease);display:inline-block}.tool-card:hover .tool-go .arrow{transform:translate(4px)}.tool-card.static:hover{box-shadow:var(--shadow-md);border-color:var(--line);transform:none}button.tool-go{cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-family:inherit}button.tool-go:hover .arrow{transform:translate(4px)}.meanings{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.meaning{border-radius:var(--radius-lg);border:1px solid var(--line);background:linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 60%, transparent));text-align:center;padding:30px 26px}.meaning-word{font-size:2.2rem;font-weight:700;line-height:1.2;display:block}.meaning:first-child .meaning-word{color:var(--warm)}.meaning:nth-child(2) .meaning-word{color:var(--violet)}.meaning:nth-child(3) .meaning-word{color:var(--rose)}.meaning-reading{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-size:.78rem;display:block}.meaning p{color:var(--ink-2);margin:14px 0 0;font-size:.9rem}.cta-band{background:radial-gradient(60% 120% at 0% 0%, color-mix(in srgb, var(--warm) 30%, transparent), transparent 60%), radial-gradient(60% 120% at 100% 100%, color-mix(in srgb, var(--violet) 35%, transparent), transparent 60%), var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:28px;align-items:center;gap:28px;padding:40px 44px;display:flex;position:relative;overflow:hidden}.cta-band h2{font-size:clamp(1.4rem,2.4vw,1.9rem)}.cta-band p{color:var(--ink-2);margin:8px 0 0}.cta-band .btn{flex:none;margin-left:auto}@media (width<=1000px){.hero-inner,.why-inner{grid-template-columns:1fr}.hero-visual{width:min(86%,420px)}.principles{grid-template-columns:repeat(2,1fr)}.tools{grid-template-columns:1fr}}@media (width<=760px){.hero{margin-top:-66px;padding-top:98px}.flow{grid-template-columns:1fr 1fr;row-gap:32px}.flow:before{display:none}.meanings{grid-template-columns:1fr}.cta-band{flex-direction:column;align-items:flex-start;padding:30px 24px}.cta-band .btn{margin-left:0}.chip-tl,.chip-bl{left:0}.chip-tr,.chip-br{right:0}}@media (width<=640px){.hero-cta{flex-direction:column;margin-top:28px}.hero-cta .btn,.cta-band .btn{width:100%}.hero{padding-bottom:40px}}@media (width<=520px){.principles{grid-template-columns:1fr}.pill-pre{display:none}.chip-tl{top:2%}.chip-tr{top:17%}.chip-bl{bottom:17%}.chip-br{bottom:2%}.section{padding:56px 0}.chip small{display:none}}.hero-sub{margin:18px 0 0;font-size:.88rem}.hero-sub a{color:var(--ink-2);border-bottom:1px solid var(--line-strong);transition:color .2s var(--ease), border-color .2s var(--ease);text-decoration:none}.hero-sub a:hover{color:var(--accent);border-color:var(--accent)}.hero-sub .arrow{transition:transform .25s var(--ease);display:inline-block}.hero-sub a:hover .arrow{transform:translate(3px)}.home section[id]{scroll-margin-top:84px}.logos{padding:4px 0 24px}.logos-label{text-align:center;font-family:var(--font-display);letter-spacing:.16em;color:var(--muted);margin:0 0 14px;font-size:.72rem;font-weight:600}.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee-track{width:max-content;animation:48s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-group{align-items:center;gap:44px;padding-right:44px;display:flex}.marquee-item{font-family:"Outfit", var(--font-sans);color:var(--muted);white-space:nowrap;transition:color .25s var(--ease);align-items:center;gap:10px;font-size:1.02rem;font-weight:600;display:inline-flex}.marquee-item .tech-mark{color:color-mix(in srgb, var(--muted) 85%, transparent);transition:color .25s var(--ease)}.marquee-item:hover{color:var(--ink)}.marquee-item:hover .tech-mark{color:var(--brand,var(--ink))}@keyframes marquee{to{transform:translate(-50%)}}.tech-mark{color:var(--brand,var(--ink-2));flex:none}.tech-mark.glyph{place-items:center;display:inline-grid}.tech-tile{border:1px solid var(--line);background:var(--surface);transition:border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);border-radius:12px;align-items:center;gap:10px;padding:8px 14px 8px 10px;display:inline-flex}.tech-tile:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.tech-name{flex-direction:column;line-height:1.25;display:flex}.tech-name b{font-family:"Outfit", var(--font-sans);font-size:.88rem;font-weight:600}.tech-name small{color:var(--muted);font-size:.68rem}.product{position:relative}.showcase{max-width:1000px;margin:0 auto 64px;position:relative}.shot-tabs,.billing{border:1px solid var(--line);background:var(--surface-2);scrollbar-width:none;border-radius:999px;gap:2px;width:max-content;max-width:100%;margin:0 auto 22px;padding:4px;display:flex;overflow-x:auto}.shot-tabs button,.billing button{height:38px;color:var(--ink-2);font:inherit;cursor:pointer;transition:background .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease);background:0 0;border:0;border-radius:999px;flex:none;padding:0 18px;font-size:.88rem;font-weight:700}.shot-tabs .tab-short{display:none}.shot-tabs button.on,.billing button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-md)}.device{position:relative}.device:before{content:"";z-index:-1;background:var(--grad);opacity:.22;filter:blur(60px);border-radius:40px;position:absolute;inset:8% 4% -6%}.browser{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-lg);border-radius:18px;overflow:hidden}.browser-bar{border-bottom:1px solid var(--line);background:var(--surface-2);align-items:center;height:40px;padding:0 14px;display:flex;position:relative}.browser-bar .dots{gap:7px;display:flex}.browser-bar .dots i{background:#ff5f57;border-radius:50%;width:11px;height:11px}.browser-bar .dots i:nth-child(2){background:#febc2e}.browser-bar .dots i:nth-child(3){background:#28c840}.browser-url{background:var(--surface);height:26px;color:var(--muted);font-family:var(--font-display);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:.78rem;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.browser-screen{aspect-ratio:1600/1000;background:var(--surface-2);position:relative}.browser-screen img{object-fit:cover;object-position:top left;opacity:0;width:100%;height:100%;transition:opacity .6s var(--ease), transform .8s var(--ease);position:absolute;inset:0;transform:scale(1.01)}.browser-screen img.on{opacity:1;transform:none}.phone{aspect-ratio:600/1298;background:#16141a;border-radius:34px;width:min(22%,210px);padding:7px;position:absolute;bottom:-44px;right:-28px;box-shadow:0 30px 60px -20px #00000080,inset 0 0 0 1px #ffffff1f}.phone:before{content:"";z-index:1;background:#16141a;border-radius:999px;width:28%;height:14px;position:absolute;top:13px;left:50%;transform:translate(-50%)}.phone img{object-fit:cover;object-position:top;border-radius:27px;width:100%;height:100%;display:block}.shot-note{text-align:center;color:var(--muted);margin:58px 0 0;font-size:.78rem}.features{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.feature{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-md);transition:transform .35s var(--ease), box-shadow .35s var(--ease), opacity .8s var(--ease);padding:26px 24px}.feature:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.feature-icon{background:linear-gradient(var(--surface), var(--surface)) padding-box, var(--grad) border-box;width:46px;height:46px;color:var(--accent);border:1.5px solid #0000;border-radius:14px;place-items:center;display:grid}.feature h3{margin:16px 0 8px;font-size:1.1rem}.feature p{color:var(--ink-2);margin:0;font-size:.9rem}.numbers{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-md);grid-template-columns:repeat(4,1fr);margin-top:28px;padding:30px 12px 18px;display:grid;position:relative;overflow:hidden}.numbers:before{content:"";background:var(--grad);height:4px;position:absolute;inset:0 0 auto}.number{text-align:center;flex-direction:column;align-items:center;gap:4px;padding:0 12px;display:flex}.number+.number{border-left:1px solid var(--line)}.number-value{font-family:var(--font-display);color:var(--ink-2);font-size:1rem;font-weight:600}.number-value b{letter-spacing:-.03em;background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 4px;font-size:clamp(2rem,4vw,2.8rem);line-height:1.1}.number-label{color:var(--ink-2);font-size:.82rem}.numbers-note{text-align:center;color:var(--muted);grid-column:1/-1;margin:18px 0 0;font-size:.75rem}.product-cta{justify-content:center;gap:12px;margin-top:32px;display:flex}.pillars{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;display:grid}.pillar{border:1px solid var(--line);background:radial-gradient(90% 140% at 0% 0%, color-mix(in srgb, var(--warm) 9%, transparent), transparent 60%), var(--surface);border-radius:18px;gap:14px;padding:18px 20px;display:flex}.pillar-icon{background:var(--grad);color:#fff;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.pillar h3{margin:0 0 2px;font-size:1.02rem}.pillar p{color:var(--ink-2);margin:0;font-size:.85rem}.stack{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.stack-card{border-radius:var(--radius-lg);border:1px solid var(--line);background:radial-gradient(70% 90% at 100% 0%, color-mix(in srgb, var(--violet) 10%, transparent), transparent 60%), var(--surface);box-shadow:var(--shadow-md);flex-direction:column;padding:28px 26px 24px;display:flex}.stack-en{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.72rem;font-weight:600}.stack-card h3{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:6px 0 8px;font-size:1.35rem;display:flex}.stack-lead{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1rem}.stack-body{color:var(--ink-2);margin:0 0 18px;font-size:.88rem}.tiers{flex-direction:column;gap:10px;display:flex}.tier{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:14px 14px 12px}.tier.first{background:linear-gradient(var(--surface), var(--surface)) padding-box, var(--grad) border-box;border:1.5px solid #0000}.tier.option{background:var(--surface-2)}.tier-head{color:var(--ink-2);align-items:center;gap:10px;margin:0 0 10px;font-size:.82rem;font-weight:700;display:flex}.tier-label{white-space:nowrap;border-radius:999px;flex:none;padding:2px 10px;font-size:.72rem;font-weight:700}.tier.first .tier-label{background:var(--grad);color:#fff}.tier.closed .tier-label{background:var(--ink);color:var(--bg)}.tier.option .tier-label{background:var(--surface);border:1px solid var(--line-strong);color:var(--muted)}.stack-tiles{flex-wrap:wrap;gap:8px;display:flex}.tier.option .tech-tile{background:color-mix(in srgb, var(--surface) 70%, transparent)}.stack-points{border-top:1px solid var(--line);flex-direction:column;gap:6px;margin:18px 0 0;padding:16px 0 0;font-size:.86rem;list-style:none;display:flex}.stack-points li{align-items:flex-start;gap:8px;line-height:1.5;display:flex}.stack-points svg{color:var(--ok);flex:none;margin-top:2px}.stack-note{color:var(--muted);margin:18px 0 0;font-size:.75rem}.security{color:#ffffffeb;background:radial-gradient(50% 80% at 0 0,#ff7a2e38,#0000 60%),radial-gradient(50% 80% at 100% 100%,#b05fe047,#0000 60%),#17141b;border-radius:32px;margin:40px 12px;position:relative;overflow:hidden}.security-inner{grid-template-columns:.85fr 1.15fr;align-items:start;gap:48px;display:grid}.security .section-lead{color:#ffffffad}.security-badge{font-family:var(--font-display);color:#ffffffd9;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;margin-top:24px;padding:8px 16px;font-size:.85rem;font-weight:600;display:inline-flex}.security-list{grid-template-columns:1fr 1fr;gap:14px;margin:0;padding:0;list-style:none;display:grid}.security-list li{transition:background .3s var(--ease), border-color .3s var(--ease), opacity .8s var(--ease), transform .8s var(--ease);background:#ffffff0a;border:1px solid #ffffff1a;border-radius:18px;gap:14px;padding:20px;display:flex}.security-list li:hover{background:#ffffff12;border-color:#fff3}.security-icon{background:var(--grad);color:#fff;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.security-list h3{color:#fff;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 4px;font-size:1rem;display:flex}.security-list p{color:#ffffffa8;margin:0;font-size:.85rem}.security .badge.wait{color:#ffb27e;background:#ff7a2e33;height:22px}.billing-save{background:var(--grad);color:#fff;border-radius:999px;margin-left:6px;padding:2px 8px;font-size:.7rem}.plans{grid-template-columns:repeat(4,1fr);align-items:stretch;gap:16px;margin-top:30px;display:grid}.plan{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-md);transition:transform .35s var(--ease), box-shadow .35s var(--ease), opacity .8s var(--ease);flex-direction:column;padding:28px 22px 24px;display:flex;position:relative}.plan:hover{box-shadow:var(--shadow-lg)}.plan.featured{background:linear-gradient(var(--surface), var(--surface)) padding-box, var(--grad) border-box;box-shadow:0 30px 60px -28px var(--accent-glow);border:2px solid #0000}.plan.featured.in{transform:translateY(-10px)}.plan-ribbon{background:var(--grad);color:#fff;white-space:nowrap;box-shadow:0 8px 18px -8px var(--accent-glow);border-radius:999px;padding:3px 14px;font-size:.75rem;font-weight:700;position:absolute;top:-13px;left:50%;transform:translate(-50%)}.plan-en{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.72rem;font-weight:600}.plan h3{margin:4px 0 6px;font-size:1.3rem}.plan-desc{min-height:3.2em;color:var(--ink-2);margin:0 0 16px;font-size:.85rem}.plan-price{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:4px 6px;margin:0;display:flex}.plan-price b{letter-spacing:-.02em;font-size:2rem;line-height:1.15}.plan-price small{font-family:var(--font-sans);color:var(--muted);font-size:.78rem}.plan-sub{color:var(--muted);margin:2px 0 18px;font-size:.75rem}.plan .btn{width:100%}.plan-features{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin:22px 0 0;padding:20px 0 0;font-size:.86rem;list-style:none;display:flex}.plan-features li{align-items:flex-start;gap:8px;line-height:1.5;display:flex}.plan-features svg{color:var(--ok);flex:none;margin-top:2px}.plans-note{text-align:center;color:var(--muted);margin:22px 0 0;font-size:.78rem}.steps{grid-template-columns:repeat(4,1fr);gap:16px;margin:0;padding:0;list-style:none;display:grid}.step{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-md);flex-direction:column;padding:24px 22px 20px;display:flex;position:relative}.step:not(:last-child):after{content:"";z-index:1;border-top:2px solid var(--line-strong);border-right:2px solid var(--line-strong);width:10px;height:10px;position:absolute;top:50%;right:-13px;transform:translateY(-50%)rotate(45deg)}.step-no{font-family:var(--font-display);letter-spacing:.1em;background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:.78rem;font-weight:700}.step h3{margin:8px 0 6px;font-size:1.08rem}.step p{color:var(--ink-2);margin:0 0 14px;font-size:.86rem}.step-time{background:var(--surface-2);width:max-content;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;margin-top:auto;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.faq-inner{grid-template-columns:.8fr 1.2fr;align-items:start;gap:48px;display:grid}.faq-inner .section-head .btn{margin-top:20px}.faq-inner .section-head,.security-head{position:sticky;top:100px}.faq{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;align-items:center;gap:14px;padding:20px 4px;font-weight:700;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-q,.faq-mark{width:32px;height:32px;font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;font-size:.9rem;font-weight:700;display:grid}.faq-q{background:var(--grad);color:#fff}.faq-text{flex:1}.faq-toggle{border:1px solid var(--line-strong);width:28px;height:28px;transition:transform .3s var(--ease), background .3s var(--ease);border-radius:50%;flex:none;position:relative}.faq-toggle:before,.faq-toggle:after{content:"";background:var(--ink);border-radius:2px;width:11px;height:1.8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-toggle:after{transition:transform .3s var(--ease);transform:translate(-50%,-50%)rotate(90deg)}.faq-item[open] .faq-toggle{background:var(--surface-2)}.faq-item[open] .faq-toggle:after{transform:translate(-50%,-50%)rotate(0)}.faq-item summary:hover .faq-text{color:var(--accent)}.faq-a{animation:faq-open .35s var(--ease);gap:14px;padding:0 4px 22px;display:flex}.faq-mark{border:1.5px solid var(--line-strong);color:var(--ink-2)}.faq-a p{color:var(--ink-2);margin:4px 0 0;font-size:.92rem}@keyframes faq-open{0%{opacity:0;transform:translateY(-6px)}}.news{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.news li{border-bottom:1px solid var(--line);grid-template-columns:110px 96px 1fr;align-items:center;gap:12px;padding:18px 4px;display:grid}.news time{font-family:var(--font-display);color:var(--muted);font-size:.92rem;font-weight:600}.news-tag{border:1px solid var(--line-strong);color:var(--ink-2);border-radius:999px;justify-self:start;padding:2px 12px;font-size:.75rem;font-weight:700}.news-tag.release{background:var(--accent-soft);color:var(--accent);border-color:#0000}.news-text{font-size:.95rem}.cta-actions{flex:none;gap:10px;margin-left:auto;display:flex}.cta-band .cta-actions .btn{margin-left:0}@media (width<=1100px){.phone{right:-14px}}@media (width<=1000px){.features{grid-template-columns:repeat(2,1fr)}.stack,.pillars{grid-template-columns:1fr}.plans{grid-template-columns:repeat(2,1fr);row-gap:28px}.steps{grid-template-columns:repeat(2,1fr)}.step:nth-child(2):after{display:none}.security-inner,.faq-inner{grid-template-columns:1fr;gap:28px}.faq-inner .section-head,.security-head{position:static}.cta-band{flex-wrap:wrap}}@media (width<=760px){.phone{border-radius:20px;width:27%;padding:4px;bottom:-30px;right:-6px}.phone img{border-radius:16px}.phone:before{height:8px;top:7px}.browser-bar{height:32px}.browser-url{height:22px;font-size:.7rem}.browser-bar .dots i{width:8px;height:8px}.shot-note{margin-top:44px}.numbers{grid-template-columns:1fr 1fr;row-gap:22px}.number:nth-child(3){border-left:0}.security{border-radius:24px;margin:24px 8px}.security-list{grid-template-columns:1fr}}@media (width<=640px){.features,.plans,.steps{grid-template-columns:1fr}.stack-card{padding:24px 18px 20px}.step:after{display:none}.plan.featured.in{transform:none}.plan-desc{min-height:0}.product-cta,.cta-actions{flex-direction:column;width:100%}.product-cta .btn,.cta-actions .btn{width:100%}.news li{grid-template-columns:auto 1fr;gap:6px 12px}.news-text{grid-column:1/-1}.browser-url{display:none}.faq-item summary{gap:10px}}@media (prefers-reduced-motion:reduce){.marquee-track{justify-content:center;width:auto;animation:none}.marquee-group{flex-wrap:wrap;justify-content:center;row-gap:14px}.marquee-group[aria-hidden]{display:none}.browser-screen img{transition:none}}@media (width<=520px){.shot-tabs .tab-full{display:none}.shot-tabs .tab-short{display:inline}.shot-tabs button{padding:0 22px}}.keisan .card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-bottom:20px;padding:26px 28px}.keisan .card h2{align-items:center;gap:12px;margin:0 0 20px;font-size:1.15rem;display:flex}.keisan .step{background:var(--grad);color:#fff;width:30px;height:30px;font-family:var(--font-display);box-shadow:0 6px 16px -6px var(--accent-glow);border-radius:50%;flex:none;place-items:center;font-size:.88rem;font-weight:600;display:grid}.keisan .grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px 20px;display:grid}.keisan label{color:var(--ink-2);flex-direction:column;gap:6px;font-size:.84rem;font-weight:500;display:flex}.keisan select,.keisan input:not([type]),.keisan input[type=number],.keisan input[list]{font:inherit;color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg-elev);min-width:0;height:42px;transition:border-color .2s var(--ease), box-shadow .2s var(--ease);padding:0 12px;font-size:.92rem}.keisan select:hover,.keisan input:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line-strong))}.keisan select:focus,.keisan input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.keisan input[type=number]{text-align:right;font-variant-numeric:tabular-nums;width:96px}.keisan input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.keisan .hint{color:var(--muted);font-size:.76rem;font-weight:400;line-height:1.5}.keisan button.add{border:1px dashed color-mix(in srgb, var(--accent) 55%, transparent);background:var(--accent-soft);height:40px;color:var(--accent);font:inherit;cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease);border-radius:999px;align-items:center;margin-top:14px;padding:0 18px;font-size:.88rem;font-weight:700;display:inline-flex}.keisan button.add:hover{background:var(--accent);color:#fff;border-style:solid}.keisan button.icon{border:1px solid var(--line);width:32px;height:32px;color:var(--muted);font:inherit;cursor:pointer;transition:all .2s var(--ease);background:0 0;border-radius:50%}.keisan button.icon:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}.keisan .table-wrap{margin:0 -8px;padding:0 8px;overflow-x:auto}.keisan table{border-collapse:collapse;width:100%;font-size:.9rem}.keisan th,.keisan td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;white-space:nowrap;padding:10px 8px}.keisan thead th{color:var(--muted);letter-spacing:.02em;font-size:.76rem;font-weight:600;line-height:1.3}.keisan tbody tr{transition:background .2s var(--ease)}.keisan tbody tr:hover{background:color-mix(in srgb, var(--surface-2) 60%, transparent)}.keisan td.num{text-align:right;font-variant-numeric:tabular-nums}.keisan td.center{text-align:center}.keisan td.svc select{width:100%;min-width:280px}.keisan .custom{gap:6px;margin-top:6px;display:flex}.keisan .custom input{flex:1}.keisan .result{position:relative;overflow:hidden}.keisan .result-hero{border-radius:var(--radius);background:radial-gradient(80% 140% at 0% 0%, color-mix(in srgb, var(--warm) 18%, transparent), transparent 60%), radial-gradient(80% 140% at 100% 100%, color-mix(in srgb, var(--violet) 20%, transparent), transparent 60%), var(--surface-2);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;padding:22px 24px;display:flex}.keisan .result-label{color:var(--ink-2);font-size:.84rem;display:block}.keisan .result-value{font-family:var(--font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(2.4rem,5vw,3.2rem);font-weight:600;line-height:1.1;display:block}.keisan .result-value small{font-family:var(--font-sans);color:var(--ink-2);margin-left:4px;font-size:1.1rem;font-weight:700}.keisan .result-tags{flex-wrap:wrap;gap:6px;display:flex}.keisan .result-tags .badge{background:var(--surface)}.keisan .result-tags .badge.ng{background:var(--danger-soft)}.keisan .limit{margin-bottom:16px}.keisan .limit-head{color:var(--ink-2);font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.84rem;display:flex}.keisan .limit-head .over{color:var(--danger);margin-left:4px}.keisan .bar{background:var(--surface-2);border-radius:999px;height:10px;overflow:hidden}.keisan .fill{background:var(--grad);height:100%;transition:width .5s var(--ease);border-radius:999px}.keisan .fill.over{background:var(--danger)}.keisan .summary th{color:var(--ink-2);width:60%;font-weight:500}.keisan .summary td{text-align:right;font-variant-numeric:tabular-nums}.keisan .summary .total th,.keisan .summary .total td{color:var(--ink);border-bottom:none;border-top:2px solid var(--ink);font-size:1.08rem;font-weight:700}.keisan details{margin-top:16px}.keisan summary{cursor:pointer;color:var(--accent);font-size:.9rem;font-weight:600}.keisan .detail{margin-top:10px;font-size:.84rem}.keisan .notes{box-shadow:none;background:0 0}.keisan .notes ol{color:var(--ink-2);margin:0;padding-left:22px;font-size:.9rem}.keisan .notes li{margin-bottom:10px}.keisan .notes b{color:var(--ink)}.keisan .disclaimer{color:var(--muted);margin:16px 0 0;font-size:.8rem}@media (width<=640px){.keisan .card{padding:20px 16px}.keisan .table-wrap:has(.svc-table){margin:0;padding:0;overflow:visible}.keisan .svc-table,.keisan .svc-table tbody{display:block}.keisan .svc-table thead{display:none}.keisan .svc-table tr{border:1px solid var(--line);background:var(--surface);border-radius:16px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 10px;margin-bottom:12px;padding:14px;display:grid;position:relative}.keisan .svc-table tbody tr:hover{background:var(--surface)}.keisan .svc-table td{white-space:normal;border:none;flex-direction:column;gap:4px;min-width:0;padding:0;display:flex}.keisan .svc-table td[data-label]:before{content:attr(data-label);color:var(--muted);font-size:.72rem;font-weight:600}.keisan .svc-table td.svc{grid-column:1/-1;padding-right:40px}.keisan .svc-table td.svc select{min-width:0}.keisan .svc-table td.num,.keisan .svc-table td.center{text-align:left;justify-content:flex-start;align-items:flex-start;font-weight:600}.keisan .svc-table td.center input{width:22px;height:22px;margin:6px 0 0}.keisan .svc-table input[type=number]{width:100%}.keisan .svc-table td.remove{position:absolute;top:12px;right:10px}.keisan .svc-table td.remove .icon{width:34px;height:34px}.keisan .custom{flex-direction:column}}:root{--kv-nursing:#9450e0;--kv-rehab:#0f9f8f;--kv-care:#0e6a9b;--kv-r1:#c8102e;--kv-r2:#e9867b;--kv-r3:#f0efec;--kv-r4:#7eaee8;--kv-r5:#2463c4;--kv-warn:#d97706;--kv-warn-ink:#b45309;--kv-warn-soft:#d977061f;--kv-sat:#2f6fdb;--kv-sun:#d9261c;--kv-toast-bg:#1a1a1af0;--kv-toast-ink:#fff;--kv-bar:linear-gradient(90deg, #ff8f5e, #f5487a);--kv-bar-v:linear-gradient(0deg, #ff8f5e, #f5487a)}.nursing{--k:var(--kv-nursing)}.rehab{--k:var(--kv-rehab)}.care{--k:var(--kv-care)}.kv-app{isolation:isolate;background:var(--bg);grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid;position:relative}.kv-app>.orbs{z-index:-1;--orb-opacity:.2}.kv-side{z-index:2;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 86%, transparent);-webkit-backdrop-filter:blur(20px)saturate(150%);height:calc(100dvh - 24px);box-shadow:var(--shadow-md);border-radius:22px;flex-direction:column;gap:8px;margin:12px 0 12px 12px;padding:20px 12px 12px;display:flex;position:sticky;top:12px}.kv-brand{color:var(--ink);font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:10px;padding:2px 10px 18px;font-size:1.22rem;font-weight:600;text-decoration:none;display:flex}.kv-brand b,.kv-login-card h1 b{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:600}.kv-nav{flex-direction:column;gap:2px;display:flex;position:relative}.kv-nav-ind{z-index:0;background:var(--surface-2);pointer-events:none;transition:transform .5s var(--spring), width .5s var(--spring), height .5s var(--spring), opacity .3s var(--ease);border-radius:12px;position:absolute;top:0;left:0}.kv-nav-ind:before{content:"";background:linear-gradient(180deg, var(--warm), var(--rose));border-radius:0 3px 3px 0;width:3px;position:absolute;top:26%;bottom:26%;left:0}.kv-nav a{z-index:1;color:var(--ink-2);white-space:nowrap;transition:background .2s var(--ease), color .2s var(--ease);border-radius:12px;align-items:center;gap:11px;padding:10px 12px 10px 14px;font-size:.9rem;font-weight:500;text-decoration:none;display:flex;position:relative}.kv-nav a .kv-icon{transition:transform .35s var(--spring)}.kv-nav a:hover:not(.active){background:var(--surface-2);color:var(--ink)}.kv-nav a:hover .kv-icon{transform:scale(1.12)rotate(-4deg)}.kv-nav a.active{color:var(--accent);font-weight:700}.kv-icon{flex:none}.kv-side-foot{flex-direction:column;gap:2px;margin-top:auto;display:flex}.kv-office{background:var(--surface-2);color:var(--ink-2);word-break:keep-all;overflow-wrap:anywhere;border-radius:14px;align-items:flex-start;gap:10px;margin:0 0 8px;padding:10px 12px;font-size:.78rem;line-height:1.5;display:flex}.kv-office small{color:var(--muted);font-size:.68rem;display:block}.kv-office-icon{background:var(--surface);width:28px;height:28px;color:var(--accent);box-shadow:var(--shadow-sm);border-radius:9px;flex:none;place-items:center;margin-top:2px;display:grid}.kv-side-link{color:var(--ink-2);font:inherit;text-align:left;cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease);background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:7px 12px;font-size:.82rem;text-decoration:none;display:flex}.kv-side-link .kv-icon{transition:transform .3s var(--spring)}.kv-side-link:hover{background:var(--surface-2);color:var(--ink)}.kv-side-link:hover .kv-icon{transform:translate(-2px)}.kv-main{flex-direction:column;min-width:0;display:flex;position:relative}.kv-top{z-index:20;background:color-mix(in srgb, var(--bg) 74%, transparent);-webkit-backdrop-filter:blur(16px)saturate(140%);flex-wrap:wrap;align-items:center;gap:12px 20px;padding:22px 28px 14px;display:flex;position:sticky;top:0}.kv-title h1{letter-spacing:.01em;margin:0;font-size:1.45rem;line-height:1.3}.kv-title p{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 8px;margin:4px 0 0;font-size:.74rem;display:flex}.kv-demo{background:color-mix(in srgb, var(--warm) 14%, transparent);height:20px;color:color-mix(in srgb, var(--warm) 62%, var(--ink));border-radius:999px;align-items:center;gap:6px;padding:0 9px;font-size:.68rem;font-weight:700;display:inline-flex}.kv-demo:before{content:"";background:var(--warm);border-radius:50%;width:6px;height:6px;animation:2.4s ease-in-out infinite kv-breathe}.kv-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.kv-week{border:1px solid var(--line);background:var(--surface);height:40px;box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:2px;padding:3px;display:flex}.kv-week>span{font-family:var(--font-display);white-space:nowrap;font-variant-numeric:tabular-nums;padding:0 8px;font-size:.9rem;font-weight:600}.kv-icon-btn{width:32px;height:32px;color:var(--ink-2);cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease), transform .25s var(--spring);background:0 0;border:none;border-radius:999px;flex:none;place-items:center;display:inline-grid}.kv-icon-btn:hover{background:var(--surface-2);color:var(--ink)}.kv-icon-btn:active{transform:scale(.88)}.kv-chip-btn{border:1px solid var(--line);background:var(--bg-elev);height:30px;color:var(--ink-2);font:inherit;cursor:pointer;transition:border-color .2s var(--ease), color .2s var(--ease);border-radius:999px;padding:0 12px;font-size:.78rem;font-weight:500}.kv-chip-btn:hover{border-color:color-mix(in srgb, var(--accent) 50%, transparent);color:var(--accent)}.kv-btn{isolation:isolate;height:40px;font:inherit;white-space:nowrap;cursor:pointer;transition:box-shadow .3s var(--ease), border-color .2s var(--ease), background .2s var(--ease), color .2s var(--ease), transform .3s var(--spring);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 18px;font-size:.88rem;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.kv-btn:hover:not([disabled]){transform:translateY(-1px)}.kv-btn:active:not([disabled]){transition-duration:.1s;transform:scale(.96)}.kv-btn .arrow{transition:transform .3s var(--spring)}.kv-btn:hover .arrow{transform:translate(4px)}.kv-btn.primary{background:var(--btn-bg);color:var(--btn-ink);box-shadow:var(--btn-shadow)}.kv-btn.primary:after{content:"";z-index:-1;background:linear-gradient(105deg, transparent 30%, color-mix(in srgb, var(--btn-ink) 28%, transparent) 48%, transparent 66%);pointer-events:none;position:absolute;inset:0;transform:translate(-110%)}.kv-btn.primary:hover:not([disabled]):after{transition:transform .75s var(--ease);transform:translate(110%)}.kv-btn.primary:hover:not([disabled]){box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 10%, transparent), 0 14px 28px -12px #0000006b}.kv-btn.primary .kv-icon{transition:transform .5s var(--spring)}.kv-btn.primary:hover:not([disabled]) .kv-icon{transform:rotate(18deg)scale(1.15)}.kv-btn.primary.busy{opacity:.92!important}.kv-btn.primary.busy:after{animation:kv-sheen 1.1s var(--ease) infinite}.kv-btn.primary.busy .kv-icon{animation:1.2s linear infinite kv-spin}.kv-btn.ghost{background:var(--surface);border-color:var(--ink);color:var(--ink)}.kv-btn.ghost:hover:not([disabled]){background:var(--ink);color:var(--bg);box-shadow:var(--btn-shadow)}.kv-btn.ghost .kv-icon{transition:transform .5s var(--spring)}.kv-btn.ghost:hover:not([disabled]) .kv-icon{transform:rotate(-180deg)}.kv-btn.danger{border-color:color-mix(in srgb, var(--danger) 40%, transparent);color:var(--danger);background:0 0}.kv-btn.danger:hover:not([disabled]){background:var(--danger-soft)}.kv-btn.lg{height:48px;padding:0 26px;font-size:.95rem}.kv-btn[disabled]{opacity:.55;cursor:not-allowed}.kv-banner{border:1px solid color-mix(in srgb, var(--kv-warn) 25%, transparent);background:var(--kv-warn-soft);color:var(--kv-warn-ink);animation:kv-rise .5s var(--ease) backwards;border-radius:14px;align-items:center;gap:8px;margin:4px 28px 0;padding:11px 16px;font-size:.86rem;display:flex}.kv-body{flex-direction:column;gap:20px;min-width:0;padding:12px 28px 56px;display:flex}.kv-body>:not(.kv-overview):not(.kv-day):not(.kv-settings):not(.kv-staff):not(.kv-agents):not(.kv-clients),.kv-overview>:not(.kv-kpis):not(.kv-two),.kv-kpis>*,.kv-two>*,.kv-day>*,.kv-settings>*,.kv-staff>*{animation:kv-rise .6s var(--ease) backwards}.kv-staff>:nth-child(2){animation-delay:.12s}.kv-kpis>:nth-child(2),.kv-day>:nth-child(2),.kv-settings>:nth-child(2){animation-delay:60ms}.kv-kpis>:nth-child(3),.kv-two>:first-child,.kv-day>:nth-child(3),.kv-settings>:nth-child(3){animation-delay:.12s}.kv-kpis>:nth-child(4),.kv-two>:nth-child(2),.kv-day>:nth-child(4){animation-delay:.18s}.kv-kpis>:nth-child(5),.kv-overview>:nth-child(3){animation-delay:.24s}.kv-overview,.kv-day,.kv-staff{flex-direction:column;gap:20px;min-width:0;display:flex}.kv-card{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-md);border-radius:20px;padding:22px 24px;position:relative}.kv-card-head{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:18px;display:flex}.kv-card-head h2{letter-spacing:.02em;align-items:center;gap:10px;margin:0;font-size:1.04rem;display:flex}.kv-card-head h2:before{content:"";background:linear-gradient(180deg, var(--warm), var(--rose));border-radius:4px;flex:none;width:4px;height:17px}.kv-card-sub{color:var(--muted);font-size:.76rem}.kv-note{color:var(--muted);margin:8px 0 0;font-size:.76rem;font-weight:400}.kv-foot-note{color:var(--muted);margin:-8px 0 0;font-size:.76rem}.kv-dot-bad{background:var(--danger);border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite kv-dot;display:inline-block}.kv-role{background:var(--surface-2);color:var(--ink-2);font-family:var(--font-display);border-radius:999px;padding:1px 7px;font-size:.66rem;font-weight:600}.kv-kpis{grid-template-columns:1.35fr repeat(4,minmax(0,1fr));gap:16px;display:grid}.kv-hero-stat,.kv-tile{transition:transform .4s var(--spring), box-shadow .4s var(--ease);flex-direction:column;gap:6px;padding:18px 20px;display:flex;overflow:hidden}.kv-hero-stat:hover,.kv-tile:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.kv-label{color:var(--accent);align-items:center;gap:6px;font-size:.78rem;font-weight:700;display:inline-flex}.kv-hero-stat{background:radial-gradient(80% 120% at 0% 0%, color-mix(in srgb, var(--warm) 13%, transparent), transparent 60%), radial-gradient(80% 120% at 100% 100%, color-mix(in srgb, var(--violet) 14%, transparent), transparent 60%), var(--surface)}.kv-hero-num{font-family:var(--font-display);align-items:baseline;line-height:1;display:flex}.kv-hero-num b{letter-spacing:-.03em;font-variant-numeric:tabular-nums;background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:3.4rem;font-weight:600}.kv-hero-num small{font-family:var(--font-sans);color:var(--ink-2);margin-left:6px;font-size:.95rem;font-weight:700}.kv-hero-split{color:var(--muted);flex-wrap:wrap;gap:2px 14px;margin-top:auto;font-size:.74rem;display:flex}.kv-hero-split span{align-items:center;gap:5px;display:inline-flex}.kv-hero-split i{background:var(--line-strong);border-radius:50%;width:7px;height:7px}.kv-hero-split i.ok{background:var(--ok)}.kv-hero-split i.bad{background:var(--danger)}.kv-hero-split b{font-family:var(--font-display);color:var(--ink);font-weight:600}.kv-tile-value{white-space:nowrap;font-family:var(--font-display);flex-wrap:nowrap;align-items:baseline;margin-top:4px;line-height:1.1;display:flex}.kv-tile-value b{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:2rem;font-weight:600}.kv-tile-value small{font-family:var(--font-sans);color:var(--ink-2);margin:0 5px 0 3px;font-size:.8rem;font-weight:700}.kv-tile.warn .kv-label,.kv-tile.warn .kv-tile-value b{color:var(--kv-warn-ink)}.kv-tile-meter{background:var(--surface-2);border-radius:4px;height:4px;margin-top:2px;overflow:hidden}.kv-tile-meter span{background:var(--grad);transform-origin:0;height:100%;transition:width .7s var(--ease);animation:kv-grow-x 1.1s var(--ease) .35s backwards;border-radius:4px;display:block}.kv-tile-hint{color:var(--muted);margin-top:auto;font-size:.72rem;line-height:1.5}.kv-two{grid-template-columns:1.25fr 1fr;gap:20px;display:grid}.kv-two>.kv-card{flex-direction:column;display:flex}.kv-meters{flex-direction:column;gap:11px;margin:0;padding:0;list-style:none;display:flex}.kv-meters li{animation:kv-fade .5s var(--ease) backwards;animation-delay:calc(var(--i,0) * 35ms + .15s);grid-template-columns:9.5em minmax(0,1fr) 6em;align-items:center;gap:12px;font-size:.85rem;display:grid}.kv-meter-name{white-space:nowrap}.kv-meter-name small{font-family:var(--font-display);color:var(--muted);margin-left:6px;font-size:.7rem}.kv-meter{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.kv-meter span{background:var(--kv-bar);transform-origin:0;height:100%;transition:width .7s var(--ease);animation:kv-grow-x .9s var(--ease) backwards;animation-delay:calc(var(--i,0) * 45ms + .22s);border-radius:999px;display:block}.kv-meters li.high .kv-meter{background:var(--kv-warn-soft)}.kv-meters li.high .kv-meter span{background:var(--kv-warn)}.kv-meter-val{font-family:var(--font-display);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:4px;font-weight:600;display:flex}.kv-meter-val small{font-family:var(--font-sans);color:var(--muted);margin-left:6px;font-weight:400}.kv-meters li.high .kv-meter-val{color:var(--kv-warn-ink)}.kv-legend-note{color:var(--muted);align-items:center;gap:4px;margin:16px 0 0;font-size:.74rem;display:flex}.kv-cols{border-bottom:1px solid var(--line-strong);flex:1;align-items:stretch;gap:6px;min-height:210px;margin-bottom:44px;display:flex}.kv-col{isolation:isolate;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;padding:0;display:flex;position:relative}.kv-col:before{content:"";z-index:-1;background:var(--surface-2);opacity:0;transition:opacity .2s var(--ease);border-radius:12px 12px 0 0;position:absolute;inset:0 6%}.kv-col:hover:before,.kv-col:focus-visible:before{opacity:1}.kv-col-val{font-family:var(--font-display);animation:kv-fade .4s var(--ease) backwards;animation-delay:calc(var(--i,0) * 60ms + .7s);margin-bottom:6px;font-size:.82rem;font-weight:600}.kv-col-bar{background:var(--kv-bar-v);transform-origin:bottom;width:min(28px,58%);min-height:2px;transition:filter .2s var(--ease);animation:kv-grow-y .9s var(--ease) backwards;animation-delay:calc(var(--i,0) * 60ms + .25s);border-radius:7px 7px 2px 2px;display:block}.kv-col:hover .kv-col-bar,.kv-col:focus-visible .kv-col-bar{filter:brightness(1.12)saturate(1.1)}.kv-col-label{flex-direction:column;align-items:center;font-size:.8rem;font-weight:700;line-height:1.25;display:flex;position:absolute;top:calc(100% + 6px)}.kv-col.sat .kv-col-label{color:var(--kv-sat)}.kv-col.sun .kv-col-label{color:var(--kv-sun)}.kv-col-label small{font-family:var(--font-display);color:var(--muted);font-size:.68rem;font-weight:400}.kv-col-tip{z-index:3;background:var(--kv-toast-bg);color:var(--kv-toast-ink);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s var(--ease), transform .25s var(--spring);border-radius:10px;padding:6px 10px;font-size:.74rem;position:absolute;bottom:calc(100% - 14px);left:50%;transform:translate(-50%,6px)scale(.96)}.kv-col:hover .kv-col-tip,.kv-col:focus-visible .kv-col-tip{opacity:1;transform:translate(-50%)scale(1)}.kv-issues{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.kv-issues li{animation:kv-rise .5s var(--ease) backwards;animation-delay:calc(min(var(--i,0), 12) * 40ms + .2s)}.kv-issues button{border:1px solid var(--line);background:var(--bg-elev);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .2s var(--ease), transform .3s var(--spring), box-shadow .3s var(--ease);border-radius:14px;align-items:flex-start;gap:12px;padding:11px 14px;font-size:.86rem;display:flex}.kv-issues button:hover{border-color:color-mix(in srgb, var(--accent) 45%, transparent);box-shadow:var(--shadow-md);transform:translate(3px)}.kv-issue-main small{color:var(--ink-2);margin-top:2px;font-size:.78rem;display:block}.kv-ok-line{color:var(--ok);align-items:center;gap:10px;margin:0;font-weight:700;display:flex}.kv-ok-badge{background:color-mix(in srgb, var(--ok) 13%, transparent);width:32px;height:32px;animation:kv-pop .6s var(--spring) .35s backwards;border-radius:50%;place-items:center;display:grid}.kv-daytabs{flex-wrap:wrap;gap:8px;display:flex}.kv-daytabs button{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 82%, transparent);min-width:78px;color:var(--ink-2);font:inherit;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color .2s var(--ease), box-shadow .3s var(--ease), background .2s var(--ease), transform .3s var(--spring);border-radius:16px;flex-direction:column;align-items:center;padding:9px 12px 8px;line-height:1.3;display:flex}.kv-daytabs button:hover{border-color:var(--line-strong);background:var(--surface);transform:translateY(-2px)}.kv-daytabs b{font-family:var(--font-head);color:var(--ink);font-size:.98rem}.kv-daytabs span{font-family:var(--font-display);font-size:.74rem}.kv-daytabs small{align-items:center;gap:4px;font-size:.72rem;display:flex}.kv-daytabs button.active{border-color:var(--accent);background:var(--surface);color:var(--ink);box-shadow:0 0 0 3px var(--accent-soft), 0 12px 26px -16px var(--accent-glow)}.kv-daytabs button.active b{color:var(--accent)}.kv-daytabs .sat b,.kv-daytabs .sat.active b{color:var(--kv-sat)}.kv-daytabs .sun b,.kv-daytabs .sun.active b{color:var(--kv-sun)}.kv-tray{border:1px dashed color-mix(in srgb, var(--danger) 45%, transparent);background:color-mix(in srgb, var(--danger) 4%, var(--surface));border-radius:20px;padding:16px 18px}.kv-tray h3{color:var(--danger);align-items:center;gap:6px;margin:0 0 12px;font-size:.92rem;display:flex}.kv-tray-list{flex-wrap:wrap;gap:8px;display:flex}.kv-tray-item{border:1px solid var(--line);border-left:3px solid var(--k);background:var(--surface);max-width:340px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .3s var(--spring), box-shadow .3s var(--ease);border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 13px;font-size:.82rem;display:flex}.kv-tray-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.kv-tray-item small{color:var(--ink-2);font-size:.74rem}.kv-legend{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px 18px;margin-bottom:12px;font-size:.76rem;display:flex}.kv-legend span{align-items:center;gap:6px;display:inline-flex}.sw{border-radius:4px;width:18px;height:12px;display:inline-block}.sw.nursing,.sw.rehab,.sw.care{background:color-mix(in srgb, var(--k) 16%, var(--surface));border-left:3px solid var(--k)}.sw.travel{background:repeating-linear-gradient(90deg, var(--muted) 0 4px, transparent 4px 7px);height:4px}.sw.off{border:1px solid var(--line);background:repeating-linear-gradient(135deg, var(--surface-2) 0 3px, transparent 3px 6px)}.kv-gantt-scroll{margin:0 -24px;padding:0 24px 4px;overflow-x:auto}.kv-gantt{min-width:1080px}.kv-grow{border-bottom:1px solid var(--line);transition:background .25s var(--ease);grid-template-columns:200px minmax(0,1fr);display:grid}.kv-grow:not(.head):hover{background:color-mix(in srgb, var(--surface-2) 55%, transparent)}.kv-grow.focus{background:linear-gradient(90deg, var(--accent-soft), transparent 45%)}.kv-grow.head{border-bottom:none}.kv-grow.head .kv-gtrack{background:0 0;height:24px}.kv-glabel{z-index:3;background:var(--surface);min-width:0;transition:background .25s var(--ease);flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:6px 12px 6px 10px;display:flex;position:sticky;left:0}.kv-grow:not(.head):hover .kv-glabel{background:color-mix(in srgb, var(--surface-2) 55%, var(--surface))}.kv-grow.focus .kv-glabel{background:color-mix(in srgb, var(--accent) 7%, var(--surface))}.kv-grow.head .kv-glabel{z-index:auto;background:0 0}.kv-gname{max-width:100%;color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-size:.86rem;display:flex}.kv-gname b{transition:color .2s var(--ease)}.kv-gname:hover b,.kv-grow.focus .kv-gname b{color:var(--accent)}.kv-grow.absent .kv-gname b{color:var(--muted);text-decoration:line-through}.kv-gmeta{min-height:20px;color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:.72rem;display:flex}.kv-absent-btn{border:1px solid var(--line-strong);background:var(--surface);height:20px;color:var(--ink-2);font:inherit;cursor:pointer;opacity:0;transition:opacity .2s var(--ease), transform .25s var(--spring), border-color .2s var(--ease), color .2s var(--ease);border-radius:999px;padding:0 8px;font-size:.68rem;transform:translate(-4px)}.kv-grow:hover .kv-absent-btn,.kv-absent-btn:focus-visible,.kv-absent-btn.on{opacity:1;transform:none}.kv-absent-btn:hover{border-color:color-mix(in srgb, var(--danger) 45%, transparent);color:var(--danger)}.kv-absent-btn.on{border-color:color-mix(in srgb, var(--danger) 40%, transparent);color:var(--danger)}@media (hover:none){.kv-absent-btn{opacity:1;transform:none}}.kv-gtrack{background-image:linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:9.09091% 100%;height:58px;position:relative}.kv-hour{font-family:var(--font-display);color:var(--muted);font-variant-numeric:tabular-nums;font-size:.7rem;position:absolute;top:4px;transform:translate(-50%)}.kv-off{background:repeating-linear-gradient(135deg, var(--surface-2) 0 6px, transparent 6px 12px);position:absolute;top:0;bottom:0}.kv-off.full{color:var(--muted);place-items:center;font-size:.76rem;display:grid}.kv-travel{background:repeating-linear-gradient(90deg, var(--muted) 0 4px, transparent 4px 7px);opacity:.55;height:4px;animation:kv-fade .6s var(--ease) backwards;animation-delay:calc(var(--r,0) * 45ms + .45s);border-radius:2px;margin-top:-2px;position:absolute;top:50%}.kv-blk{border:none;border-left:3px solid var(--k);background:color-mix(in srgb, var(--k) 14%, var(--surface));min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transform-origin:0;transition:transform .3s var(--spring), box-shadow .3s var(--ease), background .2s var(--ease);animation:kv-blk-in .55s var(--spring) backwards;animation-delay:calc(var(--r,0) * 45ms + var(--i,0) * 70ms + 80ms);border-radius:8px;flex-direction:column;justify-content:center;padding:0 7px;display:flex;position:absolute;top:7px;bottom:7px}.kv-blk:hover,.kv-blk:focus-visible{z-index:2;background:color-mix(in srgb, var(--k) 20%, var(--surface));box-shadow:0 10px 22px -12px var(--k);transform:translateY(-2px)}.kv-blk.team{border-left:5px double var(--k)}.kv-blk.short{padding:0 3px}.kv-blk.short .kv-blk-name{letter-spacing:-.02em;font-size:.7rem}.kv-blk.bad{box-shadow:0 0 0 2px var(--danger);animation:kv-blk-in .55s var(--spring) backwards, kv-bad 2.2s ease-in-out 1s infinite;animation-delay:calc(var(--r,0) * 45ms + var(--i,0) * 70ms + 80ms), 1s}.kv-blk.bad .kv-icon{color:var(--danger)}.kv-blk-name{white-space:nowrap;align-items:center;gap:3px;font-size:.76rem;font-weight:700;line-height:1.25;display:flex;overflow:hidden}.kv-blk-meta{color:var(--ink-2);white-space:nowrap;font-size:.66rem;line-height:1.25;overflow:hidden}.kv-cancelled{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin:14px 0 0;font-size:.8rem;display:flex}.kv-cancelled button{border:1px solid var(--line);color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:2px 10px;text-decoration:line-through}.kv-route-body{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.kv-route-list{flex-direction:column;margin:0;padding:0;font-size:.86rem;list-style:none;display:flex;position:relative}.kv-route-list:before{content:"";background:linear-gradient(180deg, var(--warm), var(--rose), var(--violet));opacity:.35;border-radius:2px;width:2px;margin-left:-1px;position:absolute;top:20px;bottom:24px;left:calc(3.6em + 17px)}.kv-route-list li{animation:kv-rise .5s var(--ease) backwards;animation-delay:calc(var(--i,0) * .11s + .25s);grid-template-columns:3.6em minmax(0,1fr);gap:8px;padding:9px 0;display:grid;position:relative}.kv-route-list li>span{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:600}.kv-route-list li>div{text-indent:-26px;padding-left:26px}.kv-route-list li.office{color:var(--ink-2)}.kv-route-list small{text-indent:0;color:var(--muted);font-size:.74rem;display:block}.kv-route-badge{background:var(--k);color:#fff;width:18px;height:18px;font-family:var(--font-display);text-indent:0;vertical-align:1px;box-shadow:0 0 0 3px var(--surface);border-radius:50%;place-items:center;margin-right:8px;font-size:.66rem;font-style:normal;font-weight:700;display:inline-grid}.kv-route-badge.rehab{color:#12100e}.kv-route-badge.office{background:var(--ink);border-radius:6px}.kv-week-scroll{overflow-x:auto}.kv-week-table{border-collapse:collapse;width:100%;min-width:880px;font-size:.84rem}.kv-week-table th,.kv-week-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:4px 6px}.kv-week-table thead th{color:var(--muted);font-size:.76rem;font-weight:600}.kv-week-table thead th button{color:var(--ink);font:inherit;font-family:var(--font-head);cursor:pointer;transition:background .2s var(--ease);background:0 0;border:none;border-radius:999px;padding:4px 8px;font-weight:700}.kv-week-table thead th button:hover{background:var(--surface-2)}.kv-week-table thead th.sat button{color:var(--kv-sat)}.kv-week-table thead th.sun button{color:var(--kv-sun)}.kv-week-table thead th button small{font-family:var(--font-display);color:var(--muted);margin-left:4px;font-weight:400}.kv-week-table tbody th{white-space:nowrap;transition:color .2s var(--ease);font-weight:600}.kv-week-table tbody tr:hover th{color:var(--accent)}.kv-week-table td.off{text-align:center;color:var(--muted)}.kv-week-table td.absent{background:repeating-linear-gradient(135deg, var(--danger-soft) 0 6px, transparent 6px 12px)}.kv-wcell{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .2s var(--ease), background .2s var(--ease), transform .3s var(--spring), box-shadow .3s var(--ease);background:0 0;border:1px solid #0000;border-radius:12px;flex-direction:column;gap:5px;padding:7px 9px;display:flex}.kv-wcell:hover{border-color:var(--line);background:var(--surface);box-shadow:var(--shadow-md);transform:translateY(-2px)}.kv-wcount{font-family:var(--font-display);align-items:center;gap:4px;font-weight:600;display:flex}.kv-wcount small{font-family:var(--font-sans);color:var(--muted);font-weight:400}.kv-wcount.zero{color:var(--muted);font-weight:400}.kv-wtrack{background:var(--surface-2);border-radius:4px;height:8px;position:relative}.kv-wtrack i{background:var(--k);transform-origin:0;animation:kv-grow-x .5s var(--ease) backwards;animation-delay:calc(var(--r,0) * 30ms + var(--i,0) * 50ms + .2s);border-radius:2px;position:absolute;top:0;bottom:0}.kv-wabsent{color:var(--danger);font-size:.8rem;font-weight:700}.kv-week-total th,.kv-week-total td{color:var(--muted);font-weight:600}.kv-week-total td{font-family:var(--font-display);padding-left:15px}.kv-week-total td.bad{color:var(--danger)}.kv-app .num{font-variant-numeric:tabular-nums;text-align:right!important}.kv-list-card .kv-card-head h2{margin-right:auto}.kv-search{border:1px solid var(--line-strong);background:var(--bg-elev);min-width:220px;height:38px;color:var(--ink);font:inherit;transition:border-color .2s var(--ease), box-shadow .2s var(--ease);border-radius:999px;padding:0 16px;font-size:.86rem}.kv-table-scroll{overflow-x:auto}.kv-table{border-collapse:collapse;width:100%;font-size:.86rem}.kv-table th{border-bottom:1px solid var(--line-strong);text-align:left;color:var(--muted);white-space:nowrap;padding:8px 12px;font-size:.74rem;font-weight:700}.kv-table td{border-bottom:1px solid var(--line);vertical-align:top;transition:box-shadow .2s var(--ease);padding:11px 12px}.kv-table td:nth-child(-n+2){white-space:nowrap}.kv-table tbody tr{cursor:pointer;transition:background .15s var(--ease)}.kv-table tbody tr:hover,.kv-table tbody tr:focus-visible{background:color-mix(in srgb, var(--accent) 4%, var(--surface))}.kv-table tbody tr:hover td:first-child,.kv-table tbody tr:focus-visible td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.kv-table tbody tr:hover td:first-child b{color:var(--accent)}.kv-days{gap:3px;display:inline-flex}.kv-days i{width:22px;height:22px;color:var(--muted);border-radius:7px;place-items:center;font-size:.7rem;font-style:normal;display:inline-grid}.kv-days i.on{background:var(--surface-2);color:var(--ink);font-weight:700}.kv-pats,.kv-conds{flex-wrap:wrap;gap:4px;display:flex}.kv-pat{border-left:3px solid var(--k);background:color-mix(in srgb, var(--k) 10%, var(--surface));white-space:nowrap;border-radius:7px;padding:2px 9px 2px 7px;font-size:.74rem}.kv-modal-back{z-index:100;-webkit-backdrop-filter:blur(6px);animation:kv-fade .25s var(--ease);background:#1e140f6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.kv-modal{border:1px solid var(--line);background:var(--surface);width:min(780px,100%);max-height:calc(100vh - 48px);box-shadow:var(--shadow-lg);animation:kv-modal-in .45s var(--spring);border-radius:24px;flex-direction:column;display:flex;overflow:hidden}.kv-modal>header,.kv-modal>footer{align-items:center;gap:8px;padding:16px 22px;display:flex}.kv-modal>header{border-bottom:1px solid var(--line);background:radial-gradient(60% 140% at 0% 0%, color-mix(in srgb, var(--warm) 10%, transparent), transparent 70%), var(--surface);justify-content:space-between}.kv-modal>footer{border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface-2) 50%, var(--surface))}.kv-modal h3{margin:0;font-size:1.1rem}.kv-modal-body{padding:22px;overflow:auto}.kv-grow-space{flex:1}.kv-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.kv-field{min-width:0;color:var(--ink-2);border:none;flex-direction:column;gap:6px;margin:0;padding:0;font-size:.8rem;font-weight:700;display:flex}.kv-field.wide{grid-column:1/-1}.kv-field legend{margin-bottom:6px;padding:0}.kv-field input,.kv-field select,.kv-pattern input,.kv-pattern select,.kv-login-card input{border:1px solid var(--line-strong);background:var(--bg-elev);min-width:0;height:40px;color:var(--ink);font:inherit;transition:border-color .2s var(--ease), box-shadow .25s var(--ease);border-radius:11px;padding:0 12px;font-size:.88rem;font-weight:400}.kv-field input:hover,.kv-field select:hover,.kv-login-card input:hover{border-color:color-mix(in srgb, var(--accent) 30%, var(--line-strong))}.kv-field input:focus,.kv-field select:focus,.kv-pattern input:focus,.kv-pattern select:focus,.kv-login-card input:focus,.kv-search:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.kv-daypick{flex-wrap:wrap;gap:6px;display:flex}.kv-daypick label{border:1px solid var(--line-strong);width:42px;height:36px;color:var(--ink-2);cursor:pointer;transition:background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease), transform .3s var(--spring);border-radius:11px;place-items:center;display:grid;position:relative}.kv-daypick label:active{transform:scale(.92)}.kv-daypick label.on{background:var(--btn-bg);color:var(--btn-ink);border-color:#0000}.kv-daypick input,.kv-switch input{opacity:0;pointer-events:none;position:absolute}.kv-daypick label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.kv-chips{flex-wrap:wrap;gap:6px;display:flex}.kv-chips button{border:1px solid var(--line-strong);background:var(--bg-elev);color:var(--ink-2);font:inherit;cursor:pointer;transition:background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease), transform .3s var(--spring);border-radius:999px;padding:5px 12px;font-size:.8rem;font-weight:500}.kv-chips button:active{transform:scale(.94)}.kv-chips button small{opacity:.7;margin-left:2px}.kv-chips button.on{border-color:var(--ink);background:var(--ink);color:var(--bg);font-weight:700}.kv-chips button.on small{opacity:.75}.kv-chips.ng button.on{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.kv-chips button:hover:not(.on){border-color:var(--ink);color:var(--ink)}.kv-pattern-list{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.kv-pattern{border:1px solid var(--line);background:var(--bg-elev);width:100%;animation:kv-rise .35s var(--ease) backwards;border-radius:14px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.kv-pattern input,.kv-pattern select{height:34px}.kv-pattern input[type=time]{width:104px}.kv-tilde{color:var(--muted)}.kv-roles{gap:2px;display:inline-flex}.kv-roles button{border:1px solid var(--line-strong);min-width:36px;height:30px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:0 6px;font-size:.72rem;font-weight:700}.kv-roles button.on{border-color:var(--ink);background:var(--ink);color:var(--bg)}.kv-settings{flex-direction:column;gap:20px;max-width:880px;display:flex}.kv-actions{flex-wrap:wrap;gap:10px;display:flex}.kv-panel{z-index:60;border:1px solid var(--line);background:var(--surface);width:min(420px,100vw - 24px);box-shadow:-30px 0 80px -40px #3c1e1473, var(--shadow-lg);animation:kv-panel-in .5s var(--spring);border-radius:24px;flex-direction:column;display:flex;position:fixed;top:12px;bottom:12px;right:12px;overflow:hidden}.kv-panel>header{border-bottom:1px solid var(--line);background:radial-gradient(90% 140% at 0% 0%, color-mix(in srgb, var(--k) 14%, transparent), transparent 70%), var(--surface);justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 20px 16px 22px;display:flex}.kv-panel h2{margin:6px 0 2px;font-size:1.3rem}.kv-panel>header p{color:var(--muted);margin:0;font-size:.82rem}.kv-kind{background:color-mix(in srgb, var(--k) 14%, transparent);height:22px;color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 8px;font-size:.72rem;font-weight:700;display:inline-flex}.kv-kind:before{content:"";background:var(--k);border-radius:50%;width:8px;height:8px}.kv-panel-body{animation:kv-fade .35s var(--ease);flex-direction:column;gap:22px;padding:18px 22px 32px;display:flex;overflow:auto}.kv-panel-body>section{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-2) 35%, var(--surface));border-radius:16px;padding:16px}.kv-panel h3{letter-spacing:.08em;color:var(--accent);margin:0 0 12px;font-size:.78rem}.kv-panel .kv-field+.kv-field{margin-top:12px}.kv-dl{grid-template-columns:7.5em minmax(0,1fr);gap:7px 12px;margin:0;font-size:.86rem;display:grid}.kv-dl dt{color:var(--muted)}.kv-dl dd{margin:0}.kv-alert{animation:kv-rise .4s var(--ease) backwards;border-radius:14px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.84rem;line-height:1.6;display:flex}.kv-alert .kv-icon{margin-top:3px}.kv-alert ul{margin:0;padding-left:16px}.kv-alert.bad{background:var(--danger-soft);color:var(--danger)}.kv-alert.warn{background:var(--kv-warn-soft);color:var(--kv-warn-ink)}.kv-switches{flex-direction:column;gap:12px;margin-top:16px;display:flex}.kv-switch{cursor:pointer;align-items:flex-start;gap:10px;font-size:.86rem;display:flex;position:relative}.kv-switch-track{background:var(--line-strong);width:38px;height:22px;transition:background .25s var(--ease);border-radius:999px;flex:none;margin-top:1px;position:relative}.kv-switch-track:after{content:"";width:16px;height:16px;transition:transform .4s var(--spring), width .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.kv-switch:active .kv-switch-track:after{width:20px}.kv-switch input:checked+.kv-switch-track{background:var(--btn-bg)}.kv-switch input:checked+.kv-switch-track:after{background:var(--btn-ink);transform:translate(16px)}.kv-switch:active input:checked+.kv-switch-track:after{transform:translate(12px)}.kv-switch input:focus-visible+.kv-switch-track{outline:2px solid var(--accent);outline-offset:2px}.kv-switch b{display:block}.kv-switch small{color:var(--muted);font-size:.74rem;display:block}.kv-toast{z-index:90;background:var(--kv-toast-bg);width:max-content;max-width:min(680px,100vw - 300px);color:var(--kv-toast-ink);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-lg);animation:kv-toast-in .55s var(--spring);border-radius:16px;align-items:center;gap:10px;padding:11px 18px 11px 11px;font-size:.86rem;line-height:1.5;display:flex;position:fixed;bottom:24px;left:calc(50% + 126px);overflow:hidden;transform:translate(-50%)}.kv-toast.out{animation:kv-toast-out .3s var(--ease) forwards}.kv-app:has(.kv-panel) .kv-toast{max-width:max(280px,min(680px,100vw - 708px));left:calc(50% - 90px)}.kv-toast-icon{color:#34d399;width:28px;height:28px;animation:kv-pop .5s var(--spring) .15s backwards;background:#34d3992e;border-radius:50%;flex:none;place-items:center;display:grid}.kv-toast.warn .kv-toast-icon{color:#fbbf24;background:#fbbf242e}.kv-toast.error .kv-toast-icon{color:#ff8a8e;background:#ff6b702e}.kv-toast-time{background:var(--grad);transform-origin:0;width:100%;height:2px;animation:5s linear forwards kv-shrink;position:absolute;bottom:0;left:0}.kv-form-error{color:var(--danger);margin:14px 0 0;font-size:.82rem;font-weight:700}.kv-crash{background:var(--surface-2);width:100%;max-height:140px;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;border-radius:10px;margin:0 0 8px;padding:10px 12px;font-size:.74rem;overflow:auto}.kv-login-card>.kv-btn+.kv-btn{margin-top:0}.kv-empty{isolation:isolate;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-md);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:10px;padding:76px 24px;display:flex;position:relative;overflow:hidden}.kv-empty .orbs{--orb-opacity:.32}.kv-empty>:not(.orbs){z-index:1;position:relative}.kv-empty h2{margin:12px 0 0;font-size:1.35rem}.kv-empty p{max-width:480px;color:var(--ink-2);margin:0 0 14px}.kv-login{isolation:isolate;background:var(--bg);place-items:center;min-height:100vh;padding:24px 16px;display:grid;position:relative;overflow:hidden}.kv-login>.orbs{--orb-opacity:.62}.kv-login-card{z-index:1;border:1px solid color-mix(in srgb, var(--surface) 70%, transparent);background:color-mix(in srgb, var(--surface) 74%, transparent);-webkit-backdrop-filter:blur(26px)saturate(150%);width:min(400px,100%);box-shadow:var(--shadow-lg);animation:kv-card-in .8s var(--spring) backwards;border-radius:28px;flex-direction:column;align-items:center;gap:12px;padding:38px 32px 26px;display:flex;position:relative}.kv-login-card>*{animation:kv-rise .6s var(--ease) backwards}.kv-login-card>:nth-child(2){animation-delay:.15s}.kv-login-card>:nth-child(3){animation-delay:.22s}.kv-login-card>:nth-child(4){animation-delay:.29s}.kv-login-card>:nth-child(5){animation-delay:.36s}.kv-login-card>:nth-child(n+6){animation-delay:.43s}.kv-login-card h1{font-family:var(--font-display);letter-spacing:-.02em;margin:6px 0 0;font-size:1.85rem;font-weight:600}.kv-login-tag{font-family:var(--font-head);color:var(--ink-2);margin:0 0 10px;font-size:.95rem}.kv-login-card label{width:100%;color:var(--ink-2);flex-direction:column;gap:6px;font-size:.8rem;font-weight:700;display:flex}.kv-login-card input{background:color-mix(in srgb, var(--bg-elev) 85%, transparent);border-radius:13px;height:46px;padding:0 14px}.kv-login-card .kv-btn{justify-content:center;width:100%;margin-top:6px}.kv-login-note{color:var(--muted);align-items:flex-start;gap:6px;margin:4px 0 0;font-size:.74rem;line-height:1.6;display:flex}.kv-login-note .kv-icon{margin-top:3px}.kv-login-note span{text-wrap:balance}.kv-login-inline{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;margin-top:4px;padding:0;font-weight:700}.kv-login-back{color:var(--ink-2);transition:color .2s var(--ease);font-size:.8rem;text-decoration:none}.kv-login-back:hover{color:var(--accent)}@keyframes kv-fade{0%{opacity:0}}@keyframes kv-fade-in{to{opacity:1}}@keyframes kv-rise{0%{opacity:0;transform:translateY(14px)}}@keyframes kv-card-in{0%{opacity:0;transform:translateY(24px)scale(.96)}}@keyframes kv-pop{0%{opacity:0;transform:scale(.3)}}@keyframes kv-grow-x{0%{transform:scaleX(0)}}@keyframes kv-grow-y{0%{transform:scaleY(0)}}@keyframes kv-blk-in{0%{opacity:0;transform:translateY(6px)scaleX(.6)}}@keyframes kv-bad{0%,to{box-shadow:0 0 0 2px var(--danger)}50%{box-shadow:0 0 0 2px var(--danger), 0 0 0 6px var(--danger-soft)}}@keyframes kv-dot{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--danger) 50%, transparent)}60%{box-shadow:0 0 0 5px #0000}}@keyframes kv-breathe{0%,to{opacity:1}50%{opacity:.35}}@keyframes kv-draw{to{stroke-dashoffset:0}}@keyframes kv-spin{to{transform:rotate(360deg)}}@keyframes kv-sheen{0%{transform:translate(-110%)}to{transform:translate(110%)}}@keyframes kv-panel-in{0%{opacity:0;transform:translate(48px)}}@keyframes kv-modal-in{0%{opacity:0;transform:translateY(18px)scale(.96)}}@keyframes kv-toast-in{0%{opacity:0;transform:translate(-50%,24px)scale(.94)}}@keyframes kv-toast-out{to{opacity:0;transform:translate(-50%,12px)scale(.97)}}@keyframes kv-shrink{to{transform:scaleX(0)}}.kv-mbar,.kv-nav-short,.kv-mode,.kv-agenda{display:none}.kv-agenda{flex-direction:column;gap:12px}.kv-ag-staff{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);animation:kv-rise .5s var(--ease) backwards;animation-delay:calc(min(var(--r,0), 10) * 50ms);border-radius:20px;padding:14px 14px 10px}.kv-ag-staff.focus{border-color:color-mix(in srgb, var(--accent) 35%, var(--line))}.kv-ag-staff>header{align-items:center;gap:8px;display:flex}.kv-ag-staff>header>div{flex-wrap:wrap;flex:1;align-items:center;gap:2px 6px;min-width:0;display:flex}.kv-ag-staff>header small{color:var(--muted);flex-basis:100%;font-size:.76rem}.kv-ag-staff.absent>header b{color:var(--muted);text-decoration:line-through}.kv-ag-route{border:1px solid var(--line-strong);background:var(--surface);height:36px;color:var(--ink-2);font:inherit;white-space:nowrap;cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:0 12px;font-size:.76rem;font-weight:700;display:inline-flex}.kv-ag-route:active{background:var(--surface-2)}.kv-ag-staff .kv-absent-btn{opacity:1;height:36px;padding:0 12px;font-size:.76rem;transform:none}.kv-ag-staff ol{margin:8px 0 0;padding:0;list-style:none}.kv-ag-move{height:22px;color:var(--muted);align-items:center;gap:8px;padding-left:18px;font-size:.72rem;display:flex}.kv-ag-move:before{content:"";background:repeating-linear-gradient(180deg, var(--muted) 0 3px, transparent 3px 6px);opacity:.6;width:2px;height:100%;margin-left:-11px;margin-right:3px}.kv-ag-visit{border:none;border-left:3px solid var(--k);background:color-mix(in srgb, var(--k) 10%, var(--surface));width:100%;min-height:56px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:background .2s var(--ease), transform .2s var(--ease);border-radius:12px;align-items:center;gap:12px;padding:8px 10px 8px 12px;display:flex}.kv-ag-visit:active{background:color-mix(in srgb, var(--k) 18%, var(--surface));transform:scale(.98)}.kv-ag-visit.bad{box-shadow:0 0 0 2px var(--danger)}.kv-ag-visit.bad .kv-icon{color:var(--danger)}.kv-ag-visit time{width:3.4em;font-family:var(--font-display);flex-direction:column;flex:none;font-size:1rem;font-weight:600;line-height:1.2;display:flex}.kv-ag-visit time small{color:var(--muted);font-size:.72rem;font-weight:400}.kv-ag-visit>span{flex:1;min-width:0}.kv-ag-visit b{align-items:center;gap:4px;font-size:.92rem;display:flex}.kv-ag-visit>span small{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;display:block;overflow:hidden}.kv-ag-visit>.kv-icon{color:var(--muted)}.kv-week-table tbody th,.kv-week-table thead th:first-child{z-index:1;background:var(--surface);position:sticky;left:0}@media (width<=1180px){.kv-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kv-hero-stat{grid-column:1/-1}.kv-two,.kv-route-body{grid-template-columns:1fr}}@media (width<=860px){.kv-app{grid-template-columns:1fr}.kv-mbar{padding:calc(10px + env(safe-area-inset-top)) 12px 0 16px;align-items:center;gap:4px;display:flex}.kv-mbar .kv-brand{margin-right:auto;padding:0;font-size:1.1rem}.kv-mbar .kv-icon-btn{width:40px;height:40px}.kv-side{top:auto;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:40;background:color-mix(in srgb, var(--surface) 90%, transparent);border-radius:22px;flex-direction:row;height:auto;margin:0;padding:5px;position:fixed;box-shadow:0 1px 2px #0000000d,0 12px 32px -8px #0000002e}.kv-side>.kv-brand,.kv-side-foot{display:none}.kv-nav{flex-direction:row;flex:1;gap:0;min-width:0}.kv-nav a{border-radius:17px;flex-direction:column;flex:1 1 0;justify-content:center;gap:3px;min-width:0;min-height:52px;padding:6px 2px 5px;font-size:.68rem;line-height:1.2}.kv-nav a:hover:not(.active){background:0 0}.kv-nav a:hover .kv-icon{transform:none}.kv-nav a.active .kv-icon{animation:kv-pop .4s var(--spring)}.kv-nav-ind{border-radius:17px}.kv-nav-ind:before,.kv-nav-full{display:none}.kv-nav-short{display:inline}.kv-top{-webkit-backdrop-filter:none;background:0 0;padding:14px 16px 8px;position:static}.kv-title h1{font-size:1.35rem}.kv-toolbar{width:100%;margin-left:0}.kv-week{width:100%}.kv-week>span{text-align:center;flex:1}.kv-week .kv-icon-btn{width:36px;height:36px}.kv-chip-btn{height:34px}.kv-toolbar>.kv-btn{flex:1 1 0;height:44px}.kv-body{padding:8px 12px calc(104px + env(safe-area-inset-bottom))}.kv-banner{margin:4px 12px 0}.kv-form{grid-template-columns:1fr}.kv-meters li{grid-template-columns:7.5em minmax(0,1fr) 5em;gap:8px}.kv-card{padding:18px 16px}.kv-gantt-scroll{margin:0 -16px;padding:0 16px 4px}.kv-grow{grid-template-columns:150px minmax(0,1fr)}.kv-gantt{min-width:1000px}.kv-daytabs{scrollbar-width:none;flex-wrap:nowrap;margin:0 -12px;padding:2px 12px 6px;overflow-x:auto}.kv-daytabs button{flex:none;min-width:66px}.kv-role{font-size:.7rem}.kv-kpis{gap:12px}.kv-hero-stat,.kv-tile{padding:16px}.kv-tile-value b{font-size:1.7rem}.kv-tile-value small{margin:0 3px 0 2px}.kv-toast{left:50%;bottom:calc(84px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}.kv-app:has(.kv-panel) .kv-toast{left:50%;bottom:calc(84px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}.kv-panel{top:calc(8px + env(safe-area-inset-top));right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:70;width:calc(100vw - 16px)}.kv-panel>header .kv-icon-btn{width:40px;height:40px}}@media (width<=640px){.kv-mode{border:1px solid var(--line);background:var(--surface-2);border-radius:999px;gap:4px;padding:4px;display:flex}.kv-mode button{height:38px;color:var(--ink-2);font:inherit;cursor:pointer;transition:background .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease);background:0 0;border:none;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:.86rem;font-weight:700;display:inline-flex}.kv-mode button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.kv-day[data-mode=list]>.kv-gantt-card,.kv-day[data-mode=gantt]>.kv-agenda{display:none}.kv-day[data-mode=list]>.kv-agenda{display:flex}.kv-table-scroll{overflow:visible}.kv-table,.kv-table tbody{display:block}.kv-table thead{display:none}.kv-table tbody tr{border:1px solid var(--line);background:var(--surface);border-radius:16px;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:10px;padding:14px 16px;display:flex}.kv-table tbody tr:active{background:var(--surface-2)}.kv-table td{white-space:nowrap;border:none;padding:0}.kv-table td:nth-child(-n+2){white-space:nowrap}.kv-table .c-name{flex:0 auto;font-size:1rem}.kv-table .c-role,.kv-table .c-gender,.kv-table .c-move,.kv-table .c-max,.kv-table .c-area{color:var(--ink-2);font-size:.82rem}.kv-table .c-week{font-family:var(--font-display);order:1;font-weight:600}.kv-table .c-week:before{content:"今週 ";font-family:var(--font-sans);color:var(--muted);font-size:.74rem;font-weight:400}.kv-table .c-role{flex-basis:auto;order:2}.kv-table .c-gender{order:3}.kv-table .c-move{order:4}.kv-table .c-max{flex:auto;order:5;text-align:left!important}.kv-table .c-gender:before,.kv-table .c-move:before{content:"· ";color:var(--muted)}.kv-table .c-max:before{content:"· 上限 ";color:var(--muted)}.kv-table .c-days{order:6}.kv-table .c-time{font-family:var(--font-display);order:7;margin-left:auto;font-size:.84rem}.kv-table .c-week{margin-left:auto}.kv-table tbody tr:has(.c-role):after{content:"";flex-basis:100%;order:1;height:0}.kv-table .c-area{flex:auto}.kv-table .c-area:before{content:"· ";color:var(--muted)}.kv-table .c-pats,.kv-table .c-conds{white-space:normal;flex-basis:100%}.kv-table .c-conds:not(:has(.badge)){display:none}.kv-list-card .kv-card-head{gap:10px}.kv-search{flex-basis:100%;order:3;height:44px}.kv-list-card .kv-card-head .kv-btn{height:40px}.kv-week-table{min-width:760px}.kv-modal-back{align-items:end;padding:0}.kv-modal{width:100%;max-height:92dvh;animation:kv-sheet-in .5s var(--spring);border-bottom:none;border-radius:24px 24px 0 0}.kv-modal>header{padding-top:22px;position:relative}.kv-modal>header:before{content:"";background:var(--line-strong);border-radius:4px;width:40px;height:4px;margin-left:-20px;position:absolute;top:8px;left:50%}.kv-modal-body{padding:18px 16px}.kv-modal>footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.kv-modal>footer .kv-btn{height:44px}.kv-daypick label{width:38px;height:38px}.kv-pattern{gap:8px}.kv-pattern select,.kv-pattern input[type=time]{flex:40%;width:auto;height:40px}.kv-roles button{height:34px}.kv-chips button{padding:8px 12px}}@keyframes kv-sheet-in{0%{transform:translateY(100%)}}@media (hover:none){.kv-hero-stat:hover,.kv-tile:hover,.kv-wcell:hover,.kv-issues button:hover,.kv-daytabs button:hover,.kv-tray-item:hover,.kv-blk:hover{transform:none}.kv-hero-stat:hover,.kv-tile:hover{box-shadow:var(--shadow-md)}.kv-wcell:hover{box-shadow:none;background:0 0;border-color:#0000}.kv-table tbody tr:hover{background:var(--surface)}.kv-table tbody tr:hover td:first-child{box-shadow:none}.kv-table tbody tr:hover td:first-child b,.kv-week-table tbody tr:hover th,.kv-gname:hover b{color:inherit}.kv-btn.ghost:hover:not([disabled]){background:var(--surface);color:var(--ink);box-shadow:none}.kv-btn.ghost:active:not([disabled]){background:var(--ink);color:var(--bg)}}.kv-dd-line{display:block}.kv-dd-line b{color:var(--ink-2);font-weight:700}.kv-pat-team{background:color-mix(in srgb, var(--k) 18%, var(--surface));border-radius:999px;margin-left:4px;padding:0 5px;font-size:.68rem;font-weight:700}.kv-ag-team{align-items:center;gap:4px;margin-top:2px;font-weight:700;color:var(--ink-2)!important;display:flex!important}.kv-crew{border-top:1px dashed var(--line);flex-direction:column;flex-basis:100%;gap:6px;padding-top:6px;display:flex}.kv-crew-slot{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.kv-crew-label{min-width:4.8em;color:var(--muted);font-size:.74rem;font-weight:700}.kv-crew .kv-roles{flex-wrap:wrap;gap:3px}.kv-crew .kv-roles button{min-width:0;padding:0 8px}.kv-rate{background:var(--surface-2);border-radius:999px;gap:3px;padding:3px;display:inline-flex}.kv-rate button{width:32px;height:28px;color:var(--muted);font:inherit;cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease), transform .25s var(--spring);background:0 0;border:none;border-radius:999px;font-size:.9rem;font-weight:700}.kv-rate button:active{transform:scale(.9)}.kv-rate button.on.r1,.kv-pm-sw.r1,.kv-pm-cell.r1{background:var(--kv-r1);color:#fff}.kv-rate button.on.r2,.kv-pm-sw.r2,.kv-pm-cell.r2{background:var(--kv-r2);color:#1a1a1a}.kv-rate button.on.r3,.kv-pm-sw.r3{background:var(--surface);color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line-strong)}.kv-rate button.on.r4,.kv-pm-sw.r4,.kv-pm-cell.r4{background:var(--kv-r4);color:#1a1a1a}.kv-rate button.on.r5,.kv-pm-sw.r5,.kv-pm-cell.r5{background:var(--kv-r5);color:#fff}.kv-pair-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.kv-pair-list li{border-bottom:1px solid var(--line);color:var(--ink);justify-content:space-between;align-items:center;gap:10px;padding:6px 0;font-weight:500;display:flex}.kv-pair-list li>span:first-child{align-items:center;gap:6px;display:flex}.kv-pair-line{background:var(--surface-2);border-radius:12px;align-items:flex-start;gap:8px;margin:2px 0 12px;padding:9px 12px;font-size:.84rem;font-weight:700;display:flex}.kv-pair-line small{color:var(--ink-2);font-weight:400;display:block}.kv-pair-line.r1{background:var(--danger-soft);color:var(--danger)}.kv-pair-line.r2{background:color-mix(in srgb, var(--kv-r2) 18%, var(--surface))}.kv-pm-sw{border-radius:7px;flex:none;place-items:center;width:22px;height:22px;font-size:.78rem;font-style:normal;font-weight:700;display:inline-grid}.kv-pm-legend{color:var(--ink-2);flex-wrap:wrap;gap:6px 16px;margin-bottom:12px;font-size:.76rem;display:flex}.kv-pm-legend span{align-items:center;gap:6px;display:inline-flex}.kv-pm-scroll{padding-bottom:4px;overflow-x:auto}.kv-pm{border-collapse:separate;border-spacing:2px;font-size:.78rem}.kv-pm thead th{vertical-align:bottom;height:64px;color:var(--ink-2);padding:0 0 4px;font-weight:700}.kv-pm thead th span{writing-mode:vertical-rl;letter-spacing:.05em;display:inline-block}.kv-pm tbody th{z-index:1;background:var(--surface);text-align:left;white-space:nowrap;padding:0 10px 0 0;font-weight:600;position:sticky;left:0}.kv-pm tbody th .kv-role{margin-left:6px}.kv-pm td{padding:0;position:relative}.kv-pm td.self{background:repeating-linear-gradient(135deg, var(--surface-2) 0 3px, transparent 3px 6px);border-radius:6px}.kv-pm-cell{background:var(--surface-2);width:30px;height:30px;color:var(--ink-2);font:inherit;cursor:pointer;transition:transform .25s var(--spring), box-shadow .2s var(--ease);border:none;border-radius:7px;place-items:center;font-weight:700;display:grid}.kv-pm-cell:hover{box-shadow:0 0 0 2px var(--ink);transform:scale(1.12)}.kv-pm-menu{z-index:5;border:1px solid var(--line);background:var(--surface);min-width:168px;box-shadow:var(--shadow-lg);animation:kv-modal-in .3s var(--spring);border-radius:14px;flex-direction:column;gap:2px;padding:8px;display:flex;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.kv-pm-menu b{color:var(--muted);padding:2px 6px 6px;font-size:.74rem}.kv-pm-menu button{color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:8px;padding:6px;font-size:.84rem;display:flex}.kv-pm-menu button:hover,.kv-pm-menu button.on{background:var(--surface-2)}.kv-pm-menu button.on{font-weight:700}@media (width<=640px){.kv-table .c-quals{white-space:normal;flex-basis:100%;order:6}.kv-table .c-quals:not(:has(.badge)){display:none}.kv-pair-list li{flex-wrap:wrap}}.kv-modal-tabs{background:var(--surface-2);scrollbar-width:none;border-radius:999px;gap:4px;margin:0 0 18px;padding:4px;display:flex;overflow-x:auto}.kv-modal-tabs button{height:36px;color:var(--ink-2);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:999px;flex:1 0 auto;padding:0 14px;font-size:.84rem;font-weight:700}.kv-modal-tabs button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-md)}.kv-info-sec+.kv-info-sec{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.kv-info-sec h4{justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;font-size:.92rem;display:flex}.kv-field-aside{color:var(--muted);margin-left:8px;font-weight:500}.kv-link-btn{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.8rem;font-weight:700}.kv-info-problems{background:var(--danger-soft);color:var(--danger);border-radius:12px;gap:4px;margin:0 0 16px;padding:10px 14px;font-size:.8rem;font-weight:700;list-style:none;display:grid}.kv-info-problems li{align-items:center;gap:6px;display:flex}.kv-info-fund{border:1px solid var(--line);border-radius:14px;gap:8px;padding:14px;display:grid}.kv-info-fund .kv-link-btn{justify-self:end}.kv-ins-sum{color:var(--muted);margin-top:2px;font-size:.74rem;font-weight:500;display:block}@media (width<=640px){.kv-info-sec .kv-form{grid-template-columns:1fr}}.kv-check{color:var(--ink);flex-direction:row;align-items:center;gap:10px;font-weight:500}.kv-check input{width:18px;height:18px;accent-color:var(--ink)}.kv-billing{flex-direction:column;gap:16px;min-width:0;display:flex}.kv-bill-head{gap:18px;display:grid}.kv-bill-month{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.kv-bill-month label{color:var(--ink-2);gap:6px;font-size:.8rem;font-weight:700;display:grid}.kv-bill-month select{border:1px solid var(--line-strong);background:var(--bg-elev);min-width:220px;height:44px;color:var(--ink);font:inherit;border-radius:12px;padding:0 12px;font-size:1rem;font-weight:700}.kv-bill-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.kv-bill-kpis>div{background:var(--surface-2);border-radius:14px;gap:4px;padding:14px 16px;display:grid}.kv-bill-kpis small{color:var(--muted);font-size:.74rem;font-weight:700}.kv-bill-kpis b{font-family:var(--font-display);font-size:1.25rem}.kv-bill-note{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:14px;align-items:center;gap:10px;padding:12px 16px;font-size:.85rem;display:flex}.kv-bill-note>span{flex:1}.kv-bill-note.warn{border-color:color-mix(in srgb, var(--kv-warn) 30%, transparent);background:var(--kv-warn-soft);color:var(--kv-warn-ink)}.kv-bill-note .kv-btn{flex:none}.kv-bill-empty{padding:20px 4px}.kv-bill-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.kv-bill-table td.c-ins{display:table-cell}.kv-bill-table td.c-ins small{color:var(--muted);margin-top:2px;font-size:.72rem;display:block}.kv-bill-kind{background:var(--surface-2);white-space:nowrap;border-radius:999px;margin:0 4px 2px 0;padding:1px 8px;font-size:.72rem;font-weight:700;display:inline-block}.kv-bill-kind.medical{color:#1d4f9c;background:#2463c41f}.kv-bill-warn{color:var(--kv-warn-ink);align-items:center;gap:3px;margin-top:2px;font-size:.72rem;font-weight:700;display:inline-flex}.kv-bill-total{background:var(--surface-2);border-radius:16px;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-bottom:14px;padding:16px 18px;display:flex}.kv-bill-total span{color:var(--ink-2);font-size:.85rem;font-weight:700}.kv-bill-total b{font-family:var(--font-display);font-size:1.8rem}.kv-bill-total small{color:var(--muted);flex-basis:100%;font-size:.78rem}.kv-bill-warnings{background:var(--kv-warn-soft);color:var(--kv-warn-ink);margin-bottom:14px}.kv-bill-sections{gap:14px;display:grid}.kv-bill-sec{border:1px solid var(--line);border-radius:14px;padding:14px 16px}.kv-bill-sec h4{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;margin:0 0 8px;font-size:.92rem;display:flex}.kv-bill-sec h4 small{color:var(--muted);font-size:.76rem;font-weight:500}.kv-bill-lines{border-collapse:collapse;width:100%;font-size:.8rem}.kv-bill-lines td{border-bottom:1px solid var(--line);vertical-align:top;padding:6px 0}.kv-bill-lines td small{color:var(--muted)}.kv-bill-lines .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;padding-left:10px}.kv-bill-calc{grid-template-columns:auto 1fr;gap:4px 14px;margin:10px 0 0;font-size:.82rem;display:grid}.kv-bill-calc dt{color:var(--muted)}.kv-bill-calc dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.kv-bill-extra{margin:0;font-size:.82rem}.kv-bill-visits{margin:0;padding:0;list-style:none;display:grid}.kv-bill-visits li{border-bottom:1px solid var(--line);grid-template-columns:5.5em 7.5em minmax(0,1fr) auto;align-items:baseline;gap:4px 10px;padding:8px 0;font-size:.8rem;display:grid}.kv-bill-visits li.skipped{color:var(--muted)}.kv-bill-visits .n small{color:var(--muted);font-size:.72rem;display:block}.kv-bill-visits .a{font-variant-numeric:tabular-nums;text-align:right}.kv-bill-issued{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.kv-bill-issued h4{margin:0 0 8px;font-size:.88rem}.kv-bill-issued>div{align-items:center;gap:10px;padding:8px 0;font-size:.82rem;display:flex}.kv-bill-issued>div>span{flex:1;min-width:0}.kv-bill-issued small{color:var(--muted);font-size:.74rem;display:block}.kv-bill-issued .voided{color:var(--muted);text-decoration:line-through}.kv-bill-paid{color:var(--ink-2);align-items:center;gap:6px;font-size:.78rem;font-weight:700;display:flex}.kv-bill-paid input{border:1px solid var(--line-strong);height:36px;font:inherit;border-radius:10px;padding:0 8px;font-size:.82rem}.kv-bad{color:var(--danger)}.kv-field textarea{border:1px solid var(--line-strong);background:var(--bg-elev);color:var(--ink);font:inherit;resize:vertical;border-radius:11px;padding:10px 12px;font-size:.88rem;font-weight:400}@media (width<=860px){.kv-bill-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kv-bill-note{flex-wrap:wrap}.kv-bill-visits li{grid-template-columns:5.5em minmax(0,1fr) auto}.kv-bill-visits .t{color:var(--muted);grid-area:2/1}.kv-bill-visits .n{grid-row:1/span 2}}.kv-bill-table td.c-name .kv-bill-warn{width:fit-content;display:flex}.kv-bill-paid{white-space:nowrap}@media (width<=640px){.kv-bill-table tbody tr{justify-content:space-between}.kv-bill-table .c-name{flex:auto}.kv-bill-table .c-total{order:0;font-size:1rem}.kv-bill-table td.c-ins{white-space:normal;flex:100%;order:1;display:block}.kv-bill-table td.c-ins small{margin-left:4px;display:inline}.kv-bill-table .c-cost{display:none}.kv-bill-table .c-count{color:var(--ink-2);order:2;font-size:.8rem}.kv-bill-table .c-count:after{content:" 回"}.kv-bill-table .c-doc{order:3}.kv-modal footer:has(.kv-bill-paid){flex-wrap:wrap}.kv-modal footer:has(.kv-bill-paid) .kv-grow-space{display:none}.kv-modal footer:has(.kv-bill-paid) .kv-btn.primary{flex:100%}.kv-bill-paid{flex:1}.kv-bill-paid input{flex:1;min-width:0}}.kv-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.kv-shortcut{border:1px solid var(--line);background:var(--surface);min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .2s var(--ease), box-shadow .2s var(--ease);border-radius:16px;align-items:flex-start;gap:12px;padding:14px 16px;text-decoration:none;display:flex}.kv-shortcut:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));box-shadow:var(--shadow-md)}.kv-shortcut-icon{background:var(--surface-2);width:34px;height:34px;color:var(--accent);border-radius:10px;flex:none;place-items:center;display:grid}.kv-shortcut>span:last-child{min-width:0}.kv-shortcut b{font-size:.86rem;display:block}.kv-shortcut small{color:var(--muted);margin-top:2px;font-size:.74rem;line-height:1.5;display:block}@media (width<=1100px){.kv-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.kv-shortcut{align-items:center;gap:10px;padding:12px}.kv-shortcut small{display:none}.kv-shortcut b{font-size:.8rem}}.kv-ava{border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative}.kv-ava.admin{background:var(--ink);box-shadow:0 6px 16px -8px #00000080}.kv-ava.chosei{background:var(--orb-pink);box-shadow:0 6px 16px -8px #f5487a99}.kv-ava.chosei svg{overflow:visible}.kv-ava.chosei .face{fill:#fff}.kv-ava.chosei .eyes{fill:var(--ink);transform-origin:24px 23.5px;animation:5s infinite kv-blink}.kv-ava.chosei .mouth{fill:none;stroke:var(--ink);stroke-width:2.1px;stroke-linecap:round}.kv-ava.chosei .cheek{fill:#ff8fab;opacity:.55}.kv-ava.chosei .antenna{stroke:#fff;stroke-width:2px;stroke-linecap:round}.kv-ava.chosei .signal{fill:#fff;animation:2.4s ease-in-out infinite kv-signal}@keyframes kv-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}@keyframes kv-signal{0%,to{opacity:1}50%{opacity:.35}}.kv-mock-pill{background:var(--surface-2);height:19px;color:var(--ink-2);letter-spacing:.02em;vertical-align:1px;border-radius:999px;align-items:center;margin:0 6px;padding:0 8px;font-size:.66rem;font-weight:700;display:inline-flex}a.kv-btn{text-decoration:none}.kv-agents{flex-direction:column;gap:20px;min-width:0;display:flex}.kv-agents>*,.kv-agent-grid>*{animation:kv-rise .6s var(--ease) backwards}.kv-agent-grid>:nth-child(2){animation-delay:70ms}.kv-agents>.kv-card{animation-delay:.14s}.kv-agent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.kv-agent-card{flex-direction:column;gap:14px;display:flex;overflow:hidden}.kv-agent-card:before{content:"";background:var(--ink);height:4px;position:absolute;inset:0 0 auto}.kv-agent-card.chosei:before{background:var(--orb-pink)}.kv-agent-card>header{align-items:center;gap:14px;display:flex}.kv-agent-card h2{letter-spacing:.01em;margin:0;font-size:1.2rem}.kv-agent-card>header p{color:var(--muted);margin:2px 0 0;font-size:.78rem}.kv-agent-lead{color:var(--ink-2);margin:0;font-size:.9rem}.kv-agent-can{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.kv-agent-can li{background:var(--surface-2);color:var(--ink-2);border-radius:999px;align-items:center;gap:5px;padding:4px 11px 4px 9px;font-size:.78rem;display:inline-flex}.kv-agent-can .kv-icon{color:var(--ok)}.kv-agent-link{border:1px dashed var(--line-strong);background:color-mix(in srgb, var(--surface-2) 45%, transparent);border-radius:16px;flex-direction:column;gap:8px;margin-top:4px;padding:16px;display:flex}.kv-agent-link .kv-note{margin:0}.kv-agent-actions{flex-wrap:wrap;gap:8px;display:flex}.kv-agent-actions .kv-btn{height:38px}.kv-agent-foot{border-top:1px solid var(--line);color:var(--ink-2);align-items:center;gap:7px;margin-top:auto;padding-top:12px;font-size:.8rem;display:flex}.kv-agent-foot b{font-family:var(--font-display);font-size:1rem}.kv-agent-foot small{color:var(--muted);margin-left:6px}.kv-copy{border:1px solid var(--line-strong);background:var(--surface);border-radius:12px;align-items:center;gap:8px;min-width:0;padding:4px 4px 4px 12px;display:flex}.kv-copy>.kv-icon{color:var(--muted);flex:none}.kv-copy input{min-width:0;height:32px;color:var(--ink);font-family:var(--font-mono);text-overflow:ellipsis;background:0 0;border:none;flex:1;padding:0;font-size:.78rem}.kv-copy input:focus{outline:none}.kv-copy-btn{background:var(--ink);height:32px;color:var(--bg);font:inherit;cursor:pointer;transition:background .2s var(--ease), transform .2s var(--spring);border:none;border-radius:9px;flex:none;align-items:center;gap:5px;padding:0 12px;font-size:.78rem;font-weight:700;display:inline-flex}.kv-copy-btn:active{transform:scale(.95)}.kv-copy-btn.ok{background:var(--ok)}.kv-copy-btn.ng{background:var(--kv-warn-ink)}.kv-acc-table td{vertical-align:middle}.kv-acc-table tbody tr{cursor:default}.kv-acc-table tbody tr:hover{background:0 0}.kv-acc-table tbody tr:hover td:first-child{box-shadow:none}.kv-acc-table tbody tr:hover td:first-child b{color:var(--ink)}.kv-acc-table tr.none td{color:var(--muted)}.kv-acc-table .a-name b{color:var(--ink);display:block}.kv-acc-table .a-name small,.kv-acc-table .a-status small{color:var(--muted);font-size:.72rem;font-weight:400;display:block}.kv-acc-table code,.kv-acc-who code,.kv-login-lead code{background:var(--surface-2);font-family:var(--font-mono);color:var(--ink);border-radius:6px;padding:2px 7px;font-size:.8rem}.kv-dim{color:var(--muted)}.kv-st{white-space:nowrap;align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:inline-flex}.kv-st:before{content:"";background:var(--line-strong);border-radius:50%;width:8px;height:8px}.kv-st.ok{color:var(--ok)}.kv-st.ok:before{background:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb, var(--ok) 18%, transparent)}.kv-st.wait{color:var(--kv-warn-ink)}.kv-st.wait:before{background:var(--kv-warn)}.kv-st.warn{color:var(--danger)}.kv-st.warn:before{background:var(--danger)}.kv-st.off{color:var(--muted)}.kv-st.off:before{border:1.5px solid var(--muted);background:0 0}.kv-st.none{color:var(--muted);font-weight:400}.kv-acc-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.kv-mini{border:1px solid var(--line-strong);background:var(--surface);height:30px;color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer;transition:background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease), transform .2s var(--spring);border-radius:999px;align-items:center;gap:4px;padding:0 11px;font-size:.76rem;font-weight:700;display:inline-flex}.kv-mini:hover:not([disabled]){border-color:var(--ink)}.kv-mini:active:not([disabled]){transform:scale(.95)}.kv-mini.primary{border-color:var(--ink);background:var(--ink);color:var(--bg)}.kv-mini.danger{border-color:color-mix(in srgb, var(--danger) 40%, transparent);color:var(--danger)}.kv-mini.danger:hover:not([disabled]){border-color:var(--danger);background:var(--danger-soft)}.kv-mini[disabled]{opacity:.5;cursor:not-allowed}.kv-acc-who{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;font-weight:400;display:flex}.kv-acc-who b{color:var(--ink);font-size:1.05rem}.kv-acc-who span{color:var(--muted);font-size:.8rem}.kv-field-hint{color:var(--muted);font-size:.72rem;font-weight:400}.kv-field-end{justify-content:flex-end}.kv-ok-text{color:var(--ok)}.kv-issued{flex-direction:column;gap:14px;display:flex}.kv-issued-notes{color:var(--ink-2);flex-direction:column;gap:8px;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.kv-issued-notes li{gap:8px;display:flex}.kv-issued-notes .kv-icon{color:var(--muted);flex:none;margin-top:4px}.kv-side-me{font-family:var(--font-mono);color:var(--muted);margin-left:auto;font-size:.7rem}.kv-settings>:nth-child(4){animation-delay:.18s}.kv-login-card.wide{width:min(460px,100%)}.kv-auth-h1{font-family:var(--font-head);letter-spacing:.02em;text-align:center;margin:6px 0 0;font-size:1.5rem;font-weight:700}.kv-login-who{color:var(--ink-2);text-align:center;margin:-2px 0 0;font-size:.9rem}.kv-login-who b{color:var(--ink)}.kv-login-lead{color:var(--ink-2);text-align:center;text-wrap:pretty;margin:0 0 4px;font-size:.86rem;line-height:1.75}.kv-login-error{background:var(--danger-soft);width:100%;color:var(--danger);animation:kv-shake .4s var(--ease);border-radius:12px;align-items:flex-start;gap:7px;margin:0;padding:10px 12px;font-size:.8rem;line-height:1.6;display:flex}.kv-login-error .kv-icon{flex:none;margin-top:3px}.kv-login-back.as-link{font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem}.kv-login-card>.kv-btn.ghost{margin-top:0}.kv-auth-wait{z-index:1;animation:kv-breathe 1.6s var(--ease) infinite;position:relative}@keyframes kv-shake{0%,to{transform:none}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.kv-chat{isolation:isolate;background:var(--bg);flex-direction:column;height:100dvh;display:flex;position:relative}.kv-chat>.orbs{z-index:-1;--orb-opacity:.22}.kv-chat-col{width:min(760px,100%);margin:0 auto}.kv-chat-top{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(16px)saturate(140%);box-shadow:var(--shadow-md);animation:kv-rise .5s var(--ease) backwards;border-radius:22px;flex:none;align-items:center;gap:10px;margin:12px 12px 0;padding:10px 12px 10px 14px;display:flex}.kv-chat-who{flex-direction:column;min-width:0;line-height:1.35;display:flex}.kv-chat-who b{font-family:var(--font-head);font-size:1.08rem}.kv-chat-who small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;overflow:hidden}.kv-chat-who .kv-mock-pill{margin-left:0}.kv-chat-me{background:var(--surface-2);max-width:11em;height:34px;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.8rem;font-weight:700;display:inline-flex}.kv-chat-me span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.kv-chat-banner{background:var(--kv-warn-soft);width:min(760px,100% - 24px);color:var(--kv-warn-ink);border-radius:14px;flex:none;align-items:center;gap:7px;margin:10px auto 0;padding:9px 14px;font-size:.8rem;display:flex}.kv-chat-log{overscroll-behavior:contain;flex:1;min-height:0;padding:8px 16px 20px;overflow-y:auto}.kv-chat-day{color:var(--muted);text-align:center;margin:14px 0 6px;font-size:.72rem;font-weight:700}.kv-msg{animation:kv-msg-in .45s var(--spring) backwards;gap:10px;margin-top:12px;display:flex}.kv-msg time{color:var(--muted);margin-top:3px;font-size:.66rem;display:block}.kv-msg.me{transform-origin:100% 100%;flex-direction:column;align-items:flex-end}.kv-msg.agent{transform-origin:0 100%;align-items:flex-start}.kv-msg.agent>.kv-ava{margin-top:2px}.kv-msg-body{flex-direction:column;flex:auto;align-items:flex-start;gap:8px;min-width:0;max-width:min(560px,100% - 40px);display:flex}.kv-bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:20px;margin:0;padding:10px 15px;font-size:.92rem;line-height:1.7}.kv-msg.agent .kv-bubble{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-top-left-radius:6px}.kv-msg.me .kv-bubble{background:var(--ink);max-width:min(520px,86%);color:var(--bg);border-bottom-right-radius:6px}.kv-msg-actions{flex-wrap:wrap;gap:8px;display:flex}.kv-msg-actions .kv-btn{height:38px}.kv-typing{gap:5px;padding:14px 16px;display:inline-flex}.kv-typing i{background:var(--muted);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite kv-typing}.kv-typing i:nth-child(2){animation-delay:.15s}.kv-typing i:nth-child(3){animation-delay:.3s}@keyframes kv-typing{0%,60%,to{opacity:.4;transform:none}30%{opacity:1;transform:translateY(-4px)}}@keyframes kv-msg-in{0%{opacity:0;transform:translateY(8px)scale(.96)}}.kv-chat-input{padding:8px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:blur(16px);flex:none}.kv-chat-chips{scrollbar-width:none;gap:8px;margin:0 -16px 8px;padding:2px 16px 4px;display:flex;overflow-x:auto}.kv-chat-chips::-webkit-scrollbar{display:none}.kv-chat-chips button{border:1px solid var(--ink);background:var(--surface);height:36px;color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer;animation:kv-rise .4s var(--ease) backwards;transition:background .2s var(--ease), color .2s var(--ease), transform .2s var(--spring);border-radius:999px;flex:none;padding:0 14px;font-size:.82rem;font-weight:700}.kv-chat-chips button:nth-child(2){animation-delay:50ms}.kv-chat-chips button:nth-child(3){animation-delay:.1s}.kv-chat-chips button:nth-child(4){animation-delay:.15s}.kv-chat-chips button:nth-child(5){animation-delay:.2s}.kv-chat-chips button:hover{background:var(--ink);color:var(--bg)}.kv-chat-chips button:active{transform:scale(.95)}.kv-chat-input form{border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--shadow-sm);transition:border-color .2s var(--ease), box-shadow .25s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:5px 5px 5px 16px;display:flex}.kv-chat-input form:focus-within{border-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 8%, transparent)}.kv-chat-input input{min-width:0;height:38px;color:var(--ink);font:inherit;background:0 0;border:none;flex:1;font-size:.95rem}.kv-chat-input input:focus{outline:none}.kv-send{background:var(--ink);width:40px;height:40px;color:var(--bg);cursor:pointer;transition:opacity .2s var(--ease), transform .25s var(--spring);border:none;border-radius:50%;flex:none;place-items:center;display:grid}.kv-send:not([disabled]):hover{transform:rotate(-12deg)scale(1.06)}.kv-send[disabled]{opacity:.3;cursor:default}.kv-chat-foot{color:var(--muted);text-align:center;margin:6px 0 0;font-size:.68rem}.kv-cc{border:1px solid var(--line);background:var(--surface);width:min(480px,100%);box-shadow:var(--shadow-md);border-radius:18px;font-size:.86rem;overflow:hidden}.kv-cc>header{border-bottom:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);align-items:center;gap:7px;padding:10px 14px;font-size:.8rem;font-weight:700;display:flex}.kv-cc>footer{border-top:1px solid var(--line);color:var(--ink-2);padding:9px 14px;font-size:.76rem}.kv-cc ul,.kv-cc ol{margin:0;padding:0;list-style:none}.kv-cc-visits li{border-left:3px solid var(--k,var(--line-strong));gap:12px;padding:10px 14px;display:flex}.kv-cc-visits li+li{border-top:1px solid var(--line)}.kv-cc-visits time{width:3em;font-family:var(--font-display);flex:none;font-weight:600}.kv-cc-visits span{flex-direction:column;min-width:0;display:flex}.kv-cc-visits small{color:var(--muted);font-size:.76rem}.kv-cc-visits em{color:var(--kv-warn-ink);margin-top:3px;font-size:.76rem;font-style:normal}.kv-cc-change li{grid-template-columns:minmax(7em,.9fr) minmax(0,1.4fr);gap:4px 12px;padding:9px 14px;display:grid}.kv-cc-change li+li{border-top:1px solid var(--line)}.kv-cc-change .lbl{font-weight:700}.kv-cc-change .diff{flex-wrap:wrap;align-items:center;gap:2px 6px;display:flex}.kv-cc-change s{color:var(--muted);-webkit-text-decoration-color:color-mix(in srgb, var(--danger) 60%, transparent);text-decoration-color:color-mix(in srgb, var(--danger) 60%, transparent)}.kv-cc-change .kv-icon{color:var(--muted)}.kv-cc-change b{color:var(--ink)}.kv-cc-spin{border:2px solid var(--line-strong);border-top-color:var(--ink);border-radius:50%;width:13px;height:13px;margin-left:auto;animation:.8s linear infinite kv-spin}.kv-cc-ask>li{animation:kv-rise .4s var(--ease) backwards;padding:10px 14px}.kv-cc-ask>li+li{border-top:1px solid var(--line)}.kv-cc-ask ol{flex-direction:column;gap:5px;margin-top:6px;display:flex}.kv-cc-ask ol li{animation:kv-rise .35s var(--ease) backwards;flex-wrap:wrap;align-items:baseline;gap:2px 10px;padding-left:18px;display:flex;position:relative}.kv-cc-ask ol li:before{content:"";background:var(--line-strong);border-radius:50%;width:8px;height:8px;position:absolute;top:.55em;left:2px}.kv-cc-ask .who{font-weight:700}.kv-cc-ask .res{font-size:.8rem}.kv-cc-ask small{color:var(--muted);flex-basis:100%;font-size:.74rem}.kv-cc-ask li.asking .res{color:var(--muted)}.kv-cc-ask li.asking:before{background:var(--kv-warn);animation:1s ease-in-out infinite kv-breathe}.kv-cc-ask li.ok .res{color:var(--ok);font-weight:700}.kv-cc-ask li.ok:before{background:var(--ok)}.kv-cc-ask li.ng .res{color:var(--muted)}.kv-cc-ask li.ng:before{border:1.5px solid var(--muted);background:0 0}.kv-cc-ask li.cond .res{color:var(--kv-warn-ink);font-weight:700}.kv-cc-ask li.cond:before{background:var(--kv-warn)}.kv-cc-bars li{grid-template-columns:6.5em minmax(0,1fr) 3.6em;align-items:center;gap:10px;padding:7px 14px;display:grid}.kv-cc-bars li:first-child{padding-top:12px}.kv-cc-bars li:last-child{padding-bottom:12px}.kv-cc-bars i{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.kv-cc-bars i span{border-radius:inherit;background:var(--kv-bar);transform-origin:0;height:100%;animation:kv-grow-x .8s var(--ease) backwards;display:block}.kv-cc-bars b{font-family:var(--font-display);text-align:right}.kv-cc-bars small{color:var(--muted);font-weight:400}.kv-cc-to{color:var(--muted);margin:0;padding:10px 14px 0;font-size:.76rem}.kv-cc-quote{border-left:3px solid var(--accent);background:var(--surface-2);border-radius:4px 12px 12px 4px;margin:8px 14px 14px;padding:10px 14px;line-height:1.75}.kv-cc-list li{align-items:center;gap:10px;padding:10px 14px;display:flex}.kv-cc-list li+li{border-top:1px solid var(--line)}.kv-cc-list span{flex-direction:column;flex:1;min-width:0;display:flex}.kv-cc-list small{color:var(--muted);font-size:.76rem}.kv-cc-list em{background:var(--surface-2);color:var(--ink-2);border-radius:999px;flex:none;padding:3px 10px;font-size:.72rem;font-style:normal;font-weight:700}.kv-cc-list em.wait{background:var(--kv-warn-soft);color:var(--kv-warn-ink)}@media (width<=1100px){.kv-agent-grid{grid-template-columns:1fr}}@media (width>=861px){.kv-chat-chips{flex-wrap:wrap;overflow:visible}}@media (width<=860px){.kv-chat-input input{font-size:16px}}@media (width<=640px){.kv-agent-card>header{gap:12px}.kv-acc-table thead{display:none}.kv-acc-table,.kv-acc-table tbody{display:block}.kv-acc-table tbody tr{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:12px 2px;display:grid}.kv-acc-table td{border:none;padding:0;display:block}.kv-acc-table .a-name{grid-column:1}.kv-acc-table .a-status{text-align:right;grid-area:1/2}.kv-acc-table .a-id,.kv-acc-table .a-last{display:none}.kv-acc-table tr:has(.a-id code) .a-id{grid-column:1/-1;font-size:.76rem;display:block}.kv-acc-table .a-act{grid-column:1/-1}.kv-acc-table .a-act:not(:has(button)){display:none}.kv-acc-actions{justify-content:flex-start}.kv-mini{height:34px}.kv-chat-top{margin:calc(8px + env(safe-area-inset-top)) 8px 0;gap:6px;padding:8px 6px 8px 10px}.kv-chat-me{display:none}.kv-chat-log{padding:4px 12px 16px}.kv-chat-input{padding:8px 12px calc(10px + env(safe-area-inset-bottom))}.kv-chat-chips{margin:0 -12px 8px;padding:2px 12px 4px}.kv-msg-body{max-width:calc(100% - 40px)}.kv-cc-change li{grid-template-columns:1fr}.kv-cc-bars li{grid-template-columns:5.5em minmax(0,1fr) 3.4em}}@media (hover:none){.kv-chat-chips button:hover{background:var(--surface);color:var(--ink)}.kv-send:not([disabled]):hover{transform:none}}@media (prefers-reduced-motion:reduce){.kv-ava.chosei .eyes,.kv-ava.chosei .signal,.kv-typing i,.kv-auth-wait{animation:none}.kv-msg,.kv-chat-chips button,.kv-cc-ask>li,.kv-cc-ask ol li{animation-duration:.01ms;animation-delay:0s!important}}.kv-login-tag{text-align:center;text-wrap:balance}.kv-sync{color:var(--muted);align-items:center;gap:4px;display:inline-flex}.kv-sync.saved .kv-icon{color:var(--ok)}.kv-sync.pending .kv-icon,.kv-sync.saving .kv-icon{animation:1s linear infinite kv-spin}.kv-sync.offline,.kv-sync.failed{color:var(--danger);font-weight:700}.kv-mock-pill.live{background:color-mix(in srgb, var(--ok) 12%, transparent);color:var(--ok)}.kv-bubble.err{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 30%, transparent)!important;background:var(--danger-soft)!important}.kv-msg-tools{color:var(--muted)}.kv-typing-label{color:var(--muted);margin-left:6px;font-size:.78rem}.kv-agent-amcp{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;font-size:.78rem;display:flex}.kv-bubble.kv-rich{white-space:normal}.kv-rich p{white-space:pre-wrap;margin:0}.kv-rich p+p,.kv-rich p+ul,.kv-rich ul+p{margin-top:8px}.kv-rich ul{margin:6px 0 0;padding-left:1.2em}.kv-rich li+li{margin-top:2px}.kv-rich b{font-weight:700}.amcp code{font-family:var(--font-mono);background:var(--surface-2);border-radius:6px;padding:1px 6px;font-size:.84em}.amcp-grid{grid-template-columns:1.4fr 1fr;gap:20px;margin-bottom:20px;display:grid}.amcp-card{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md);min-width:0;padding:26px 28px}.amcp-card h2{align-items:center;gap:12px;margin:0 0 18px;font-size:1.15rem;display:flex}.amcp-step{background:var(--grad);color:#fff;width:30px;height:30px;font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;font-size:.88rem;font-weight:600;display:grid}.url-box{background:linear-gradient(var(--bg-elev), var(--bg-elev)) padding-box, var(--grad) border-box;border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:8px 8px 8px 16px;display:flex}.amcp .url-box code{white-space:nowrap;min-width:0;color:var(--ink);background:0 0;flex:1;padding:0;font-size:.92rem;overflow-x:auto}.copy{background:var(--ink);height:36px;color:var(--bg);font:inherit;cursor:pointer;transition:background .2s var(--ease);border:none;border-radius:10px;flex:none;padding:0 16px;font-size:.82rem;font-weight:700}.copy.ok{background:var(--ok);color:#fff}.copy.ng{background:var(--danger);color:#fff}.amcp-steps{color:var(--ink-2);margin:20px 0 0;padding-left:22px;font-size:.92rem}.amcp-steps li{margin-bottom:8px}.amcp-note{color:var(--muted);margin:14px 0 0;font-size:.8rem}.amcp-error{border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);padding:12px 16px;font-size:.9rem}.amcp-facts{grid-template-columns:auto 1fr;gap:8px 16px;margin:0 0 18px;font-size:.88rem;display:grid}.amcp-facts dt{color:var(--muted)}.amcp-facts dd{min-width:0;margin:0}.amcp .btn[disabled]{opacity:.6;cursor:progress;transform:none}.test-result{border-radius:var(--radius);border:1px solid var(--line);animation:pop .4s var(--ease);margin-top:18px;padding:14px 16px;font-size:.88rem}.test-result p{margin:0 0 4px}.test-result b{font-size:.95rem}.test-result.ok{background:color-mix(in srgb, var(--ok) 10%, transparent);border-color:color-mix(in srgb, var(--ok) 30%, transparent)}.test-result.ok b{color:var(--ok)}.test-result.warn{background:color-mix(in srgb, var(--warm) 12%, transparent);border-color:color-mix(in srgb, var(--warm) 35%, transparent)}.test-result.ng{background:var(--danger-soft);border-color:color-mix(in srgb, var(--danger) 30%, transparent)}.test-result.ng b{color:var(--danger)}.ms{font-family:var(--font-display);color:var(--muted);margin-left:10px;font-size:.78rem}.amcp details summary{cursor:pointer;color:var(--accent);font-size:.84rem;font-weight:600}.amcp pre{border-radius:var(--radius-sm);background:var(--surface-2);max-height:320px;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;margin:10px 0 0;padding:14px 16px;font-size:.78rem;line-height:1.55;overflow:auto}@keyframes pop{0%{opacity:0;transform:translateY(6px)}}.tool-spec+.tool-spec{border-top:1px solid var(--line);margin-top:28px;padding-top:28px}.tool-spec-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.tool-spec-head h3{margin:0;font-size:1.1rem}.tool-tips{color:var(--ink-2);margin:10px 0 16px;font-size:.9rem}.ops{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.op{border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);border-radius:999px;padding:4px 12px;font-size:.8rem;font-weight:600}.param-wrap{overflow-x:auto}.params{border-collapse:collapse;width:100%;font-size:.86rem}.params th,.params td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:9px 10px}.params th{color:var(--muted);font-size:.76rem;font-weight:600}.params td:first-child{white-space:nowrap}.params td.type{color:var(--muted);font-family:var(--font-mono);font-size:.8rem}.req{background:var(--danger-soft);color:var(--danger);border-radius:6px;margin-left:6px;padding:1px 6px;font-size:.68rem;font-weight:700}.llm-desc{margin-top:16px}.server-link{margin-top:22px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-block}@media (width<=1100px){.amcp-grid{grid-template-columns:1fr}}@media (width<=640px){.amcp-card{padding:20px 16px}}.me-wait{min-height:60vh;padding-top:120px}.me-offline{justify-items:start;gap:12px;max-width:480px;display:grid}.me-header{padding-bottom:40px}.me-hello{align-items:center;gap:22px;display:flex}.me-home{flex:none;margin-left:auto}.me-hello .avatar{box-shadow:0 0 0 6px color-mix(in srgb, var(--surface) 70%, transparent), 0 16px 36px -14px var(--accent-glow)}.me-hello .eyebrow{margin-bottom:4px}.me-hello h1{margin:0;font-size:clamp(1.7rem,3.2vw,2.3rem);line-height:1.25}.me-hello-sub{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px 12px;margin:8px 0 0;font-size:.88rem;display:flex}.me-hello-sub>span:first-child{font-family:var(--font-mono)}.me-body{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:36px;display:grid}.me-tabs{gap:4px;display:grid;position:sticky;top:96px}.me-tabs a{min-height:46px;color:var(--ink-2);transition:background .15s var(--ease), color .15s var(--ease);border-radius:12px;align-items:center;gap:10px;padding:0 14px;font-weight:500;text-decoration:none;display:flex}.me-tabs a svg{color:var(--muted)}.me-tabs a:hover{background:var(--surface-2);color:var(--ink)}.me-tabs a.active{background:var(--ink);color:var(--bg);font-weight:700}.me-tabs a.active svg{color:var(--bg)}.me-main{gap:24px;min-width:0;display:grid}.me-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.me-panel-head h2{margin:0;font-size:1.35rem}.me-panel-head p{color:var(--ink-2);margin:6px 0 0;font-size:.92rem}.me-panel-head .badge{flex:none}.me-note{color:var(--muted);gap:8px;margin:14px 0 0;font-size:.84rem;display:flex}.me-note svg{flex:none;margin-top:3px}.me-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);padding:26px 28px}.me-card h2{margin:0 0 16px;font-size:1.15rem}.me-facts{border-top:1px solid var(--line);grid-template-columns:140px 1fr;margin:0;display:grid}.me-facts dt,.me-facts dd{border-bottom:1px solid var(--line);margin:0;padding:12px 0}.me-facts dt{color:var(--muted);font-size:.86rem;font-weight:700}.me-facts dd{overflow-wrap:anywhere}.me-facts code{font-family:var(--font-mono);font-size:.9em}.me-form{gap:14px;max-width:440px;display:grid}.me-form label{gap:6px;font-size:.88rem;font-weight:700;display:grid}.me-form input{border:1px solid var(--line-strong);background:var(--surface);height:46px;color:var(--ink);font:inherit;border-radius:10px;padding:0 14px;font-size:16px;font-weight:400}.me-form input:focus{border-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb, var(--rose) 16%, transparent);outline:none}.me-ok{color:var(--ok);align-items:center;gap:6px;margin:0;font-size:.86rem;font-weight:700;display:flex}.me-signout{justify-content:space-between;align-items:center;gap:16px;display:flex}.me-signout h2{margin-bottom:4px}.me-signout p{color:var(--ink-2);margin:0;font-size:.88rem}.me-signout .btn{flex:none}@media (width<=900px){.me-body{grid-template-columns:1fr;gap:20px}.me-tabs{scrollbar-width:none;gap:6px;display:flex;position:static;overflow-x:auto}.me-tabs a{border:1px solid var(--line);flex:none;min-height:42px}.me-tabs a.active{border-color:var(--ink)}}@media (width<=640px){.me-hello{flex-wrap:wrap;gap:16px}.me-home{width:100%;margin-left:0}.me-hello .avatar{width:56px!important;height:56px!important;font-size:1.4rem!important}.me-card{padding:20px 18px}.me-facts{grid-template-columns:110px 1fr}.me-panel-head{flex-direction:column}.me-signout{flex-direction:column;align-items:stretch}}.visit-lp{flex-direction:column;gap:56px;display:flex}.vl-hero{grid-template-columns:1fr 1.1fr;align-items:center;gap:40px;display:grid}.vl-hero h2,.vl-steps h2,.vl-login h2{margin:0;font-size:clamp(1.5rem,2.8vw,2.1rem);line-height:1.35}.vl-hero-copy p:last-child{color:var(--ink-2);margin:16px 0 0}.vl-mock{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-lg), 0 40px 60px -36px var(--accent-glow);border-radius:22px;padding:18px 20px 16px;animation:7s ease-in-out infinite vl-float;position:relative}@keyframes vl-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.vl-mock-head{align-items:center;gap:6px;margin-bottom:14px;display:flex}.vl-mock-head span{background:var(--surface-2);border-radius:50%;width:9px;height:9px}.vl-mock-head span:first-child{background:color-mix(in srgb, var(--red) 70%, var(--surface))}.vl-mock-head span:nth-child(2){background:color-mix(in srgb, var(--rose) 60%, var(--surface))}.vl-mock-head span:nth-child(3){background:color-mix(in srgb, var(--violet) 60%, var(--surface))}.vl-mock-head b{color:var(--ink-2);margin-left:8px;font-size:.78rem}.vl-mock-row{border-top:1px solid var(--line);grid-template-columns:3.2em 1fr;align-items:center;gap:10px;padding:6px 0;font-size:.8rem;display:grid}.vl-mock-name{color:var(--ink-2);font-weight:700}.vl-mock-track{background-image:linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:10% 100%;height:30px;position:relative}.vl-mock-track i{border-left:3px solid var(--k);background:color-mix(in srgb, var(--k) 18%, var(--surface));transform-origin:0;animation:vl-grow .6s var(--ease) both;border-radius:5px;position:absolute;top:4px;bottom:4px}.vl-mock-track i.nursing{--k:var(--kv-nursing)}.vl-mock-track i.rehab{--k:var(--kv-rehab)}@keyframes vl-grow{0%{opacity:0;transform:scaleX(.2)}}.vl-mock-foot{justify-content:flex-end;margin-top:12px;display:flex}.vl-pill{background:color-mix(in srgb, var(--ok) 14%, transparent);color:var(--ok);border-radius:999px;padding:4px 12px;font-size:.76rem;font-weight:700}.vl-features{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (width<=1100px){.vl-features{grid-template-columns:repeat(2,1fr)}}.vl-feature{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);transition:transform .45s var(--spring), box-shadow .45s var(--ease), opacity .9s var(--ease), filter .9s var(--ease);padding:26px 24px;position:relative;overflow:hidden}.vl-feature:before{content:"";background:var(--grad);transform-origin:0;height:3px;transition:transform .6s var(--ease);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.vl-feature:after{content:"";background:var(--orb-pink);opacity:0;filter:blur(40px);width:160px;height:160px;transition:opacity .5s var(--ease);pointer-events:none;border-radius:50%;position:absolute;top:-60px;right:-60px}.vl-feature:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}.vl-feature:hover:before{transform:scaleX(1)}.vl-feature:hover:after{opacity:.18}.vl-no{font-family:var(--font-display);color:var(--accent);align-items:center;gap:10px;font-size:.9rem;font-weight:600;display:inline-flex}.vl-no:after{content:"";background:var(--grad);width:24px;height:2px;transition:width .5s var(--ease);border-radius:2px}.vl-feature:hover .vl-no:after{width:44px}.vl-feature h3{margin:12px 0 8px;font-size:1.12rem}.vl-feature p{color:var(--ink-2);margin:0;font-size:.9rem}.vl-steps ol{counter-reset:step;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0 0;padding:0;list-style:none;display:grid;position:relative}.vl-steps ol:before{content:"";background:var(--grad);opacity:.35;transform-origin:0;height:2px;transition:transform 1.4s var(--ease) .3s;border-radius:2px;position:absolute;top:37px;left:36px;right:36px;transform:scaleX(0)}.vl-steps.in ol:before{transform:scaleX(1)}.vl-steps li{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);counter-increment:step;transition:transform .45s var(--spring), box-shadow .45s var(--ease);padding:22px 22px 22px 70px;position:relative}.vl-steps li:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.vl-steps li:before{content:counter(step);background:var(--grad);color:#fff;width:34px;height:34px;font-family:var(--font-display);box-shadow:0 6px 16px -6px var(--accent-glow);border-radius:50%;place-items:center;font-weight:600;display:grid;position:absolute;top:20px;left:20px}.vl-steps b{font-size:1.05rem;display:block}.vl-steps span{color:var(--ink-2);margin-top:4px;font-size:.88rem;display:block}.vl-login{isolation:isolate;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-lg);border-radius:28px;align-items:center;gap:28px;padding:44px 48px;display:flex;position:relative;overflow:hidden}.vl-login>:not(.orbs){z-index:1;position:relative}.vl-login .orbs{--orb-opacity:.42}.vl-login p{max-width:560px;color:var(--ink-2);margin:8px 0 0}.vl-login-actions{flex:none;gap:10px;margin-left:auto;display:grid}.vl-login .btn{height:52px;padding:0 34px;font-size:1rem}@media (width<=900px){.vl-hero,.vl-features,.vl-steps ol{grid-template-columns:1fr}.vl-login{flex-direction:column;align-items:flex-start;padding:30px 24px}.vl-login-actions{width:100%;margin-left:0}.visit-lp{gap:40px}.vl-steps ol:before{display:none}}.kv-map{z-index:0;border:1px solid var(--line);background:var(--surface-2);width:100%;font-family:var(--font-sans);isolation:isolate;border-radius:16px;position:relative;overflow:hidden}.kv-map-route-box{height:400px}.kv-map-clients{height:380px}.kv-map-pick{height:240px}.kv-map .leaflet-tile-pane{filter:saturate(.75)contrast(.96)}.kv-map .leaflet-control-zoom{overflow:hidden;border:1px solid var(--line)!important;box-shadow:var(--shadow-md)!important;border-radius:12px!important}.kv-map .leaflet-control-zoom a{border-color:var(--line);width:32px;height:32px;color:var(--ink);font:400 18px/31px var(--font-sans)}.kv-map .leaflet-control-attribution{background:color-mix(in srgb, var(--surface) 82%, transparent);color:var(--muted);border-top-left-radius:8px;padding:1px 7px;font-size:10px}.kv-map .leaflet-control-attribution a{color:var(--ink-2)}.kv-map .leaflet-tooltip{border:1px solid var(--line);box-shadow:var(--shadow-md);color:var(--ink);border-radius:999px;padding:4px 10px;font-size:.76rem;font-weight:700}.kv-map .leaflet-tooltip-top:before{display:none}.kv-pin-wrap{background:0 0;border:none}.kv-pin{box-sizing:border-box;width:100%;height:100%;transition:transform .25s var(--spring);place-items:center;display:grid}.kv-pin.num{background:var(--k,var(--ink));color:#fff;font-family:var(--font-display);box-shadow:0 3px 8px -2px color-mix(in srgb, var(--k,#000) 55%, transparent);animation:kv-pop .5s var(--spring) backwards;border:2.5px solid #fff;border-radius:999px;font-size:12px;font-weight:700}.kv-pin.num.rehab{color:#12100e}.kv-pin.num.multi{white-space:nowrap;width:auto;min-width:100%;padding:0 7px}.kv-pin.hot{box-shadow:0 0 0 4px color-mix(in srgb, var(--k,#000) 25%, transparent), 0 6px 14px -4px color-mix(in srgb, var(--k,#000) 60%, transparent);transform:scale(1.3)}.kv-pin.office{background:var(--ink);color:#fff;border:2.5px solid #fff;border-radius:9px;box-shadow:0 4px 10px -3px #00000080}.kv-pin.dot{background:var(--k,var(--muted));cursor:pointer;border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0000004d}.kv-pin.dot:hover{transform:scale(1.5)}.kv-pin.dot.dim{opacity:.22}.kv-pin.pick{cursor:grab;position:relative}.kv-pin.pick:before{content:"";background:var(--accent);border-radius:50% 50% 50% 0;width:26px;height:26px;margin-left:-13px;position:absolute;top:2px;left:50%;transform:rotate(-45deg);box-shadow:0 4px 10px -2px #d9261c8c}.kv-pin.pick i{background:#fff;border-radius:50%;width:10px;height:10px;margin-left:-5px;position:absolute;top:10px;left:50%}.leaflet-dragging .kv-pin.pick{cursor:grabbing}.kv-map-casing{stroke:#fff;stroke-width:8px;stroke-opacity:.95;stroke-linecap:round;stroke-linejoin:round;fill:none}.kv-map-route{stroke:var(--rose);stroke-width:4px;stroke-opacity:.95;stroke-linecap:round;stroke-linejoin:round;fill:none}.kv-map-route.straight{stroke-dasharray:2 9;stroke-width:3px}.kv-map-signal{stroke:#fff;stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:1 26;fill:none;animation:1.6s linear infinite kv-map-flow}@keyframes kv-map-flow{to{stroke-dashoffset:-27px}}.kv-route-total{background:var(--surface-2);height:30px;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.8rem;font-weight:700;display:inline-flex}.kv-route-total small{background:var(--surface);color:var(--muted);border-radius:999px;padding:1px 7px;font-size:.68rem}.kv-route-total.road small{background:color-mix(in srgb, var(--ok) 12%, transparent);color:var(--ok)}.kv-route-list li.hot>div{color:var(--accent)}.kv-route-list small.kv-route-leg{color:var(--muted);margin:-4px 0 2px;padding-left:26px;font-size:.7rem;display:block}.kv-clients{flex-direction:column;gap:20px;min-width:0;display:flex}.kv-clients>*{animation:kv-rise .6s var(--ease) backwards}.kv-clients>:nth-child(2){animation-delay:90ms}.kv-map-card .kv-legend{margin:0}.sw.office{background:var(--ink);border-radius:3px;width:12px}.kv-loc{flex-direction:column;gap:8px;font-weight:400;display:flex}.kv-loc-search{gap:8px;display:flex}.kv-loc-search input{flex:1}.kv-loc-search .kv-btn{flex:none;height:40px}.kv-loc-hits{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-md);animation:kv-rise .3s var(--ease);border-radius:12px;flex-direction:column;gap:2px;margin:0;padding:6px;list-style:none;display:flex}.kv-loc-hits button{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:7px;padding:7px 10px;font-size:.84rem;display:flex}.kv-loc-hits button:hover{background:var(--surface-2)}.kv-loc-err{color:var(--danger);margin:0;font-size:.78rem}.kv-loc-note{color:var(--muted);margin:0;font-size:.72rem}.kv-engine{color:var(--muted);align-items:center;gap:6px;font-size:.78rem;font-weight:700;display:inline-flex}.kv-engine:before{content:"";background:var(--line-strong);border-radius:50%;width:8px;height:8px}.kv-engine.on{color:var(--ok)}.kv-engine.on:before{background:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb, var(--ok) 18%, transparent)}.kv-engine.off{color:var(--danger)}.kv-engine.off:before{background:var(--danger)}.kv-roads{flex-direction:column;gap:14px;display:flex}.kv-roads-stat{flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.kv-roads-stat b{font-family:var(--font-display);font-size:1.8rem;font-weight:600;line-height:1}.kv-roads-stat b small{color:var(--muted);font-size:.85rem;font-weight:400}.kv-roads-stat span{color:var(--ink-2);font-size:.84rem}.kv-roads code,.kv-settings .kv-note code{background:var(--surface-2);font-family:var(--font-mono);border-radius:6px;padding:1px 6px;font-size:.74rem}.kv-settings>:nth-child(5){animation-delay:.24s}.kv-banner.info{border-color:var(--line);background:var(--surface);color:var(--ink-2);box-shadow:var(--shadow-sm)}.kv-banner.info>span{flex:1}.kv-btn.sm{height:32px;padding:0 14px;font-size:.8rem}@media (width<=860px){.kv-map-route-box{height:320px}.kv-map-clients{height:300px}.kv-banner.info{flex-wrap:wrap}}@media (width<=640px){.kv-map-route-box{height:280px}.kv-map-clients{height:260px}.kv-map-pick{height:220px}.kv-loc-search{flex-direction:column}.kv-loc-search .kv-btn{width:100%}.kv-route-total{justify-content:center;width:100%}}@media (prefers-reduced-motion:reduce){.kv-map-signal{display:none}.kv-pin.num{animation:none}}.site-header{z-index:50;pointer-events:none;padding:12px 12px 0;position:sticky;top:0}.header-inner{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 78%, transparent);-webkit-backdrop-filter:saturate(160%)blur(18px);height:64px;box-shadow:var(--shadow-sm);pointer-events:auto;transition:box-shadow .4s var(--ease), background .4s var(--ease);border-radius:18px;align-items:center;gap:28px;display:flex}.site-header.scrolled .header-inner{background:color-mix(in srgb, var(--surface) 90%, transparent);box-shadow:var(--shadow-md)}.brand-link{flex:none;align-items:center;text-decoration:none;display:flex}.site-nav{gap:2px;display:flex}.site-nav a{color:var(--ink-2);white-space:nowrap;transition:color .2s var(--ease), background .2s var(--ease);border-radius:999px;padding:7px 14px;font-size:.92rem;font-weight:500;text-decoration:none}.site-nav a:hover{color:var(--ink);background:var(--surface-2)}.site-nav a.active{color:var(--accent);background:var(--surface-2);font-weight:700}.header-actions{align-items:center;gap:10px;margin-left:auto;margin-right:-6px;display:flex}.header-contact{flex:none}.user-menu{position:relative}.user-btn{border:1px solid var(--line-strong);background:var(--surface);width:40px;height:40px;color:var(--ink-2);cursor:pointer;transition:border-color .2s var(--ease), color .2s var(--ease), box-shadow .25s var(--ease);border-radius:50%;place-items:center;padding:0;display:grid}.user-btn:hover,.user-btn.open{border-color:var(--ink);color:var(--ink)}.user-btn.signed-in{background:linear-gradient(var(--surface), var(--surface)) padding-box, var(--grad) border-box;border:2px solid #0000}.user-btn.signed-in:hover,.user-btn.signed-in.open{box-shadow:0 8px 22px -10px var(--accent-glow)}.avatar{background:var(--grad);color:#fff;font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;font-weight:700;line-height:1;display:grid}.user-btn .avatar{width:30px!important;height:30px!important;font-size:.8rem!important}.user-pop{z-index:60;border:1px solid var(--line);background:var(--surface);width:300px;box-shadow:var(--shadow-lg);animation:pop-in .22s var(--ease);transform-origin:100% 0;border-radius:18px;padding:8px;position:absolute;top:calc(100% + 12px);right:0}@keyframes menu-fade{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}}.user-pop-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;margin-bottom:6px;padding:12px 12px 14px;display:flex}.user-pop-head>div{min-width:0}.user-pop-head b{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;display:block;overflow:hidden}.user-pop-head small{color:var(--muted);align-items:center;gap:8px;font-size:.8rem;display:flex}.role-tag{background:var(--surface-2);color:var(--ink-2);border-radius:999px;padding:0 8px;font-size:.72rem;font-weight:700;line-height:1.7}.role-tag.admin{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent)}.user-pop-links{display:grid}.user-pop-links a,.user-pop-out{width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:background .15s var(--ease);background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;padding:0 12px;font-size:.92rem;text-decoration:none;display:flex}.user-pop-links a svg,.user-pop-out svg{color:var(--muted)}.user-pop-links a:hover,.user-pop-out:hover{background:var(--surface-2)}.user-pop-out{border-top:1px solid var(--line);color:var(--ink-2);border-radius:0 0 11px 11px;margin-top:6px;padding-top:4px}.user-pop-guest{gap:12px;padding:12px;display:grid}.user-pop-title{margin:0;font-weight:700}.user-pop-guest .btn{justify-content:center;width:100%}.user-pop-note{background:var(--surface-2);color:var(--ink-2);border-radius:10px;gap:8px;margin:0;padding:10px 12px;font-size:.8rem;line-height:1.6;display:flex}.user-pop-note svg{color:var(--muted);flex:none;margin-top:3px}.user-pop-contact{color:var(--accent);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:.86rem;font-weight:700}.menu-btn{background:var(--ink);cursor:pointer;border:0;border-radius:12px;width:42px;height:42px;padding:0;display:none;position:relative}.menu-btn span{background:var(--bg);height:2px;transition:transform .3s var(--ease), opacity .2s var(--ease);border-radius:2px;position:absolute;left:12px;right:12px}.menu-btn span:first-child{top:14px}.menu-btn span:nth-child(2){top:20px}.menu-btn span:nth-child(3){top:26px}.menu-btn[aria-expanded=true] span:first-child{transform:translateY(6px)rotate(45deg)}.menu-btn[aria-expanded=true] span:nth-child(2){opacity:0}.menu-btn[aria-expanded=true] span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.mnav-backdrop{z-index:-1;-webkit-backdrop-filter:blur(4px);pointer-events:auto;animation:menu-fade .25s var(--ease);background:#14101852;position:fixed;inset:0}.mnav{overscroll-behavior:contain;border:1px solid var(--line);background:var(--surface);max-height:calc(100dvh - 96px);box-shadow:var(--shadow-lg);pointer-events:auto;animation:pop-in .25s var(--ease);transform-origin:top;border-radius:18px;padding:10px;position:absolute;top:calc(100% + 8px);left:8px;right:8px;overflow-y:auto}.mnav-links{display:grid}.mnav-links a{border-bottom:1px solid var(--line);min-height:54px;color:var(--ink);justify-content:space-between;align-items:center;padding:0 14px;font-size:1.02rem;font-weight:700;text-decoration:none;display:flex}.mnav-links a:last-child{border-bottom:0}.mnav-links a .arrow{color:var(--muted);font-weight:400}.mnav-links a.active,.mnav-links a.active .arrow{color:var(--accent)}.mnav-actions{border-top:1px solid var(--line);gap:10px;margin-top:8px;padding:14px 4px 4px;display:grid}.mnav-actions .btn{justify-content:center;width:100%}@media (width<=900px){.site-nav,.header-contact{display:none}.menu-btn{display:block}}@media (width<=760px){.site-header{padding:8px 8px 0}.header-inner{height:58px;padding-right:12px}.header-actions{gap:8px;margin-right:0}.user-pop{width:auto;position:fixed;top:74px;left:8px;right:8px}}@media (prefers-reduced-motion:reduce){.user-pop,.mnav,.mnav-backdrop{animation:none}}.page-header{margin-top:-76px;padding:120px 0 36px;position:relative;overflow:hidden}.page-header .orbs{--orb-opacity:.32;-webkit-mask-image:linear-gradient(#000 45%,#0000);mask-image:linear-gradient(#000 45%,#0000)}.page-header .container{position:relative}.crumbs{color:var(--muted);gap:8px;margin-bottom:18px;font-size:.82rem;display:flex}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--ink)}.page-header h1{letter-spacing:-.01em;margin:0;font-size:clamp(1.9rem,3.6vw,2.7rem);font-weight:700;line-height:1.25}.page-header .lead{max-width:720px;color:var(--ink-2);margin:14px 0 0}.page-meta{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}@media (width<=760px){.page-header{margin-top:-66px;padding-top:100px}}.site-footer{border-top:1px solid var(--line);margin-top:110px;padding:48px 0 40px;font-size:.9rem}.footer-grid{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;display:grid}.footer-brand p{color:var(--ink-2);margin:12px 0 18px}.footer-link{color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.footer-link:hover{color:var(--accent)}.footer-copy{font-family:var(--font-display);margin-top:6px;display:inline-block}.footer-dot{margin:0 8px}.site-footer h4{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:.78rem}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:4px 0}.site-footer li a{color:var(--ink-2);text-decoration:none}.site-footer li a:hover{color:var(--accent)}.footer-note{border-top:1px solid var(--line);color:var(--muted);grid-column:1/-1;margin:12px 0 0;padding-top:20px;font-size:.8rem}@media (width<=760px){.site-footer li a,.footer-link{padding:6px 0;display:inline-block}}@media (width<=640px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
