:root{--cn-bg:#f4f4f2;--cn-surface:#ffffff;--cn-surface-elevated:#ffffff;--cn-surface-sunken:#ececea;--cn-border:rgba(0,0,0,0.08);--cn-hairline:rgba(0,0,0,0.06);--cn-text:#1b1b1d;--cn-text-muted:#9a9aa0;--cn-primary:#2f6df6;--cn-primary-contrast:#ffffff;--cn-danger:#e5484d;--cn-success:#34c759;--cn-flag:#e8a13a;--cn-press:rgba(0,0,0,0.045);--cn-focus-ring:rgba(47,109,246,0.40);--cn-skeleton:rgba(0,0,0,0.055);--cn-skeleton-hi:rgba(0,0,0,0.10);--cn-chat-bg:#e9e9e7;--cn-bubble-in:#ffffff;--cn-bubble-in-text:#1b1b1d;--cn-bubble-out:#2f6df6;--cn-bubble-out-text:#ffffff;--cn-tick:rgba(255,255,255,0.9);--cn-overlay:rgba(20,20,22,0.45);--cn-shadow:0 1px 2px rgba(0,0,0,0.10),0 10px 30px rgba(0,0,0,0.07);--cn-shadow-fab:0 6px 16px rgba(47,109,246,0.40),0 2px 5px rgba(0,0,0,0.12);--cn-shadow-pop:0 6px 22px rgba(0,0,0,0.18),0 1px 3px rgba(0,0,0,0.12);--cn-radius-sm:8px;--cn-radius-md:12px;--cn-radius-lg:18px;--cn-radius-bubble:17px;--cn-radius-full:9999px;--cn-sp-1:4px;--cn-sp-2:8px;--cn-sp-3:12px;--cn-sp-4:16px;--cn-sp-5:20px;--cn-sp-6:24px;--cn-sp-8:32px;--cn-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji",sans-serif;--cn-text-display:700 30px/1.05 var(--cn-font);--cn-text-title:700 21px/1.1 var(--cn-font);--cn-text-body:500 16.5px/1.32 var(--cn-font);--cn-text-callout:600 14px/1.3 var(--cn-font);--cn-text-caption:500 12px/1.3 var(--cn-font);--cn-letter-tight:-0.01em;--cn-dur-instant:100ms;--cn-dur-fast:160ms;--cn-dur-base:240ms;--cn-dur-slow:320ms;--cn-ease-out:cubic-bezier(0.16,1,0.3,1);--cn-ease-in:cubic-bezier(0.4,0,1,1);--cn-ease-spring:cubic-bezier(0.34,1.45,0.62,1);--cn-hit:44px}@media (prefers-color-scheme:dark){:root{--cn-bg:#0f1012;--cn-surface:#1b1c20;--cn-surface-elevated:#26272d;--cn-surface-sunken:#141518;--cn-border:rgba(255,255,255,0.10);--cn-hairline:rgba(255,255,255,0.07);--cn-text:#f3f3f5;--cn-text-muted:#8a8a90;--cn-primary:#5a8cff;--cn-primary-contrast:#0f1012;--cn-danger:#ff6166;--cn-success:#32d74b;--cn-flag:#f0b24a;--cn-press:rgba(255,255,255,0.06);--cn-focus-ring:rgba(90,140,255,0.45);--cn-skeleton:rgba(255,255,255,0.07);--cn-skeleton-hi:rgba(255,255,255,0.13);--cn-chat-bg:#0b0c0e;--cn-bubble-in:#26272d;--cn-bubble-in-text:#f3f3f5;--cn-bubble-out:#3f74f0;--cn-bubble-out-text:#ffffff;--cn-tick:rgba(255,255,255,0.9);--cn-overlay:rgba(0,0,0,0.6);--cn-shadow:0 1px 2px rgba(0,0,0,0.5),0 10px 34px rgba(0,0,0,0.45);--cn-shadow-fab:0 6px 18px rgba(0,0,0,0.5),0 2px 6px rgba(0,0,0,0.4);--cn-shadow-pop:0 6px 22px rgba(0,0,0,0.5),0 1px 3px rgba(0,0,0,0.4)}}[data-theme=light]{--cn-bg:#f4f4f2;--cn-surface:#ffffff;--cn-surface-elevated:#ffffff;--cn-surface-sunken:#ececea;--cn-border:rgba(0,0,0,0.08);--cn-hairline:rgba(0,0,0,0.06);--cn-text:#1b1b1d;--cn-text-muted:#9a9aa0;--cn-primary:#2f6df6;--cn-primary-contrast:#ffffff;--cn-danger:#e5484d;--cn-success:#34c759;--cn-flag:#e8a13a;--cn-press:rgba(0,0,0,0.045);--cn-focus-ring:rgba(47,109,246,0.40);--cn-skeleton:rgba(0,0,0,0.055);--cn-skeleton-hi:rgba(0,0,0,0.10);--cn-chat-bg:#e9e9e7;--cn-bubble-in:#ffffff;--cn-bubble-in-text:#1b1b1d;--cn-bubble-out:#2f6df6;--cn-bubble-out-text:#ffffff;--cn-tick:rgba(255,255,255,0.9);--cn-overlay:rgba(20,20,22,0.45);--cn-shadow:0 1px 2px rgba(0,0,0,0.10),0 10px 30px rgba(0,0,0,0.07);--cn-shadow-fab:0 6px 16px rgba(47,109,246,0.40),0 2px 5px rgba(0,0,0,0.12);--cn-shadow-pop:0 6px 22px rgba(0,0,0,0.18),0 1px 3px rgba(0,0,0,0.12)}[data-theme=dark]{--cn-bg:#0f1012;--cn-surface:#1b1c20;--cn-surface-elevated:#26272d;--cn-surface-sunken:#141518;--cn-border:rgba(255,255,255,0.10);--cn-hairline:rgba(255,255,255,0.07);--cn-text:#f3f3f5;--cn-text-muted:#8a8a90;--cn-primary:#5a8cff;--cn-primary-contrast:#0f1012;--cn-danger:#ff6166;--cn-success:#32d74b;--cn-flag:#f0b24a;--cn-press:rgba(255,255,255,0.06);--cn-focus-ring:rgba(90,140,255,0.45);--cn-skeleton:rgba(255,255,255,0.07);--cn-skeleton-hi:rgba(255,255,255,0.13);--cn-chat-bg:#0b0c0e;--cn-bubble-in:#26272d;--cn-bubble-in-text:#f3f3f5;--cn-bubble-out:#3f74f0;--cn-bubble-out-text:#ffffff;--cn-tick:rgba(255,255,255,0.9);--cn-overlay:rgba(0,0,0,0.6);--cn-shadow:0 1px 2px rgba(0,0,0,0.5),0 10px 34px rgba(0,0,0,0.45);--cn-shadow-fab:0 6px 18px rgba(0,0,0,0.5),0 2px 6px rgba(0,0,0,0.4);--cn-shadow-pop:0 6px 22px rgba(0,0,0,0.5),0 1px 3px rgba(0,0,0,0.4)}@media (prefers-reduced-motion:reduce){:root{--cn-dur-instant:0.01ms;--cn-dur-fast:0.01ms;--cn-dur-base:0.01ms;--cn-dur-slow:0.01ms;--cn-ease-spring:linear}}.cn-root,.cn-screen{font-family:var(--cn-font);color:var(--cn-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.cn-root *,.cn-screen *{box-sizing:border-box}.cn-screen{display:flex;flex-direction:column;height:100dvh;background:var(--cn-bg);padding-top:env(safe-area-inset-top)}.cn-root [hidden],.cn-screen [hidden]{display:none!important}.cn-root :focus-visible,.cn-screen :focus-visible{outline:none;box-shadow:0 0 0 4px var(--cn-focus-ring)}.cn-hit{min-width:var(--cn-hit);min-height:var(--cn-hit)}@keyframes cn-shimmer{0%{background-position:-260px 0}to{background-position:260px 0}}@keyframes cn-spin{to{transform:rotate(1turn)}}@keyframes cn-pop{0%{transform:scale(0)}70%{transform:scale(1.25)}to{transform:scale(1)}}@keyframes cn-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}@keyframes cn-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.cn-segnav{display:flex;gap:3px;padding:3px;background:var(--cn-surface-sunken);border-radius:11px}.cn-segnav__item{flex:1 1;border:none;cursor:pointer;border-radius:var(--cn-radius-sm);padding:7px 4px;font:var(--cn-text-callout);letter-spacing:var(--cn-letter-tight);color:var(--cn-text-muted);background:transparent;transition:color var(--cn-dur-base) var(--cn-ease-out),background var(--cn-dur-base) var(--cn-ease-out)}.cn-segnav__item.is-selected{font-weight:600;color:var(--cn-text);background:var(--cn-surface-elevated);box-shadow:0 1px 3px rgba(0,0,0,.14)}.cn-todolist{container-type:inline-size;flex:1 1;overflow-y:auto;overflow-x:hidden;padding:8px 20px 120px}@container (min-width: 680px){.cn-todolist{padding-left:40px;padding-right:40px}.cn-todo__title{font-size:17.5px}}.cn-todo{max-height:70px;opacity:1;overflow:hidden;transition:max-height var(--cn-dur-slow) var(--cn-ease-spring),opacity var(--cn-dur-base) var(--cn-ease-out)}.cn-todo.is-expanded{max-height:300px}.cn-todo.is-removing{max-height:0;opacity:0}.cn-todo__row{display:flex;align-items:flex-start;gap:14px;padding:13px 12px;margin:0 -12px;border-radius:10px;border-bottom:1px solid var(--cn-hairline);background:transparent;transform:translateX(0);transition:transform var(--cn-dur-slow) var(--cn-ease-spring),opacity var(--cn-dur-base) var(--cn-ease-out),background-color var(--cn-dur-instant) linear;will-change:transform,opacity}.cn-todo__row.is-pressed,.cn-todo__row:active{background:var(--cn-press)}.cn-todo.is-removing .cn-todo__row{transform:translateX(36px);opacity:0}.cn-todo.is-inserting .cn-todo__row{animation:cn-slide-up var(--cn-dur-base) var(--cn-ease-out)}.cn-checkbox{width:22px;height:22px;flex:none;margin-top:1px;border-radius:var(--cn-radius-full);border:2px solid var(--cn-text-muted);background:transparent;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:background-color var(--cn-dur-fast) var(--cn-ease-out),border-color var(--cn-dur-fast) var(--cn-ease-out)}.cn-checkbox.is-checked{border-color:var(--cn-primary);background:var(--cn-primary)}.cn-checkbox__tick{stroke:var(--cn-primary-contrast);stroke-dasharray:18;stroke-dashoffset:18;transition:stroke-dashoffset .22s 80ms var(--cn-ease-out)}.cn-checkbox.is-checked .cn-checkbox__tick{stroke-dashoffset:0}.cn-todo__body{flex:1 1;min-width:0;cursor:pointer;padding:1px 0}.cn-todo__line{display:flex;align-items:center;gap:8px}.cn-todo__title{font:var(--cn-text-body);letter-spacing:var(--cn-letter-tight);color:var(--cn-text);transition:color var(--cn-dur-base) var(--cn-ease-out)}.cn-todo.is-done .cn-todo__title{color:var(--cn-text-muted);text-decoration:line-through}.cn-todo__flag{width:8px;height:8px;flex:none;background:var(--cn-flag);transform:rotate(45deg);border-radius:1.5px}.cn-todo__meta{margin-left:auto;font-size:13.5px;font-weight:500;color:var(--cn-text-muted);white-space:nowrap}.cn-todo__editor{padding:12px 0 6px}.cn-todo__note{width:100%;border:none;outline:none;resize:none;background:transparent;color:var(--cn-text);font-size:14.5px;line-height:1.45;padding:0;min-height:38px}.cn-todo__editor-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.cn-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-size:13px;font-weight:600;padding:7px 11px;border-radius:var(--cn-radius-sm);border:1px solid var(--cn-border);color:var(--cn-text-muted);background:transparent;transition:all var(--cn-dur-fast) var(--cn-ease-out)}.cn-chip.is-on{border-color:var(--cn-flag);color:var(--cn-flag)}.cn-chip--danger{border:none;color:var(--cn-danger)}.cn-quick{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--cn-hairline)}.cn-quick__dot{width:22px;height:22px;flex:none;border-radius:var(--cn-radius-full);border:2px solid var(--cn-text-muted);opacity:.55}.cn-quick__input{flex:1 1;border:none;outline:none;background:transparent;font:var(--cn-text-body);letter-spacing:var(--cn-letter-tight);color:var(--cn-text);padding:0}.cn-fab{position:absolute;right:22px;bottom:calc(30px + env(safe-area-inset-bottom));width:56px;height:56px;border-radius:var(--cn-radius-full);background:var(--cn-primary);border:none;cursor:pointer;box-shadow:var(--cn-shadow-fab);display:flex;align-items:center;justify-content:center;transform:rotate(0deg);transition:transform var(--cn-dur-slow) var(--cn-ease-spring);z-index:5}.cn-fab.is-open{transform:rotate(45deg)}.cn-fab__bar{position:absolute;border-radius:2px;background:var(--cn-primary-contrast)}.cn-fab__bar--h{width:20px;height:2.5px}.cn-fab__bar--v{width:2.5px;height:20px}.cn-search{display:flex;align-items:center;gap:10px;background:var(--cn-surface-sunken);border-radius:11px;padding:9px 13px}.cn-search__input{flex:1 1;border:none;outline:none;background:transparent;font-size:16px;color:var(--cn-text);padding:0}.cn-msglist{container-type:inline-size;flex:1 1;overflow-y:auto;overflow-x:hidden;padding:14px 0 10px;position:relative;background:var(--cn-chat-bg);-webkit-overflow-scrolling:touch}.cn-day{display:flex;justify-content:center;margin:10px 0 12px}.cn-day__label{font:var(--cn-text-caption);font-weight:600;color:var(--cn-text-muted);background:var(--cn-surface);padding:4px 12px;border-radius:11px;box-shadow:var(--cn-shadow)}.cn-msg{display:flex;justify-content:flex-start;padding:0 14px;margin-top:9px;max-height:300px;opacity:1;overflow:visible;transition:max-height var(--cn-dur-base) var(--cn-ease-out),opacity var(--cn-dur-base) var(--cn-ease-out),margin var(--cn-dur-base) var(--cn-ease-out)}.cn-msg.is-out{justify-content:flex-end}.cn-msg.is-grouped{margin-top:2px}.cn-msg.is-reacted{margin-bottom:12px}.cn-msg.is-removing{max-height:0;opacity:0;overflow:hidden}.cn-bubble{position:relative;max-width:76%;width:-moz-fit-content;width:fit-content;padding:8px 11px 7px;border-radius:var(--cn-radius-bubble);font-size:15.5px;line-height:1.32;word-break:break-word;background:var(--cn-bubble-in);color:var(--cn-bubble-in-text);box-shadow:0 1px 1px rgba(0,0,0,.06)}.cn-msg.is-out .cn-bubble{background:var(--cn-bubble-out);color:var(--cn-bubble-out-text);box-shadow:none}.cn-msg.is-tail:not(.is-out) .cn-bubble{border-bottom-left-radius:5px}.cn-msg.is-tail.is-out .cn-bubble{border-bottom-right-radius:5px}.cn-msg.is-entering:not(.is-out) .cn-bubble{animation:cn-slide-up var(--cn-dur-base) var(--cn-ease-out)}.cn-msg.is-entering.is-out .cn-bubble{animation:cn-msg-send var(--cn-dur-base) var(--cn-ease-spring)}@keyframes cn-msg-send{0%{transform:scale(.94);opacity:.5}to{transform:scale(1);opacity:1}}.cn-bubble__meta{font-size:11px;margin-left:8px;white-space:nowrap;color:var(--cn-text-muted)}.cn-msg.is-out .cn-bubble__meta{color:var(--cn-tick)}.cn-bubble__tick{margin-left:3px;opacity:.4}.cn-bubble.is-sent .cn-bubble__tick{opacity:1}.cn-bubble__edited{opacity:.85}.cn-bubble__reaction{position:absolute;bottom:-13px;left:6px;background:var(--cn-surface);box-shadow:var(--cn-shadow);border-radius:12px;padding:1px 5px;font-size:14px;line-height:18px;z-index:2;animation:cn-pop var(--cn-dur-base) var(--cn-ease-spring)}.cn-msg.is-out .cn-bubble__reaction{left:auto;right:6px}.cn-actions,.cn-reactbar{position:absolute;z-index:20;background:var(--cn-surface);box-shadow:var(--cn-shadow-pop);transform:scale(.5);opacity:0;pointer-events:none;transition:transform var(--cn-dur-base) var(--cn-ease-spring),opacity var(--cn-dur-fast) var(--cn-ease-out)}.cn-reactbar{display:flex;gap:2px;padding:5px 8px;border-radius:26px}.cn-actions{min-width:180px;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.cn-actions.is-open,.cn-reactbar.is-open{transform:scale(1);opacity:1;pointer-events:auto}.cn-reactbar__btn{border:none;font-size:25px;line-height:1;padding:5px;border-radius:var(--cn-radius-full)}.cn-actions__item,.cn-reactbar__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer}.cn-actions__item{display:flex;align-items:center;gap:11px;width:100%;border:none;font-size:15px;font-weight:500;color:var(--cn-text);padding:11px 16px;text-align:left}.cn-actions__item--danger{color:var(--cn-danger)}.cn-composer{flex:none;display:flex;align-items:flex-end;gap:8px;padding:9px 12px calc(11px + env(safe-area-inset-bottom));background:var(--cn-surface);border-top:1px solid var(--cn-hairline);z-index:7}.cn-composer__field{flex:1 1;resize:none;border:none;outline:none;background:var(--cn-surface-sunken);color:var(--cn-text);font-size:16px;line-height:1.35;padding:9px 14px;border-radius:19px;max-height:120px;min-height:38px}.cn-iconbtn{width:38px;height:38px;flex:none;border-radius:var(--cn-radius-full);border:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1}.cn-iconbtn.is-active,.cn-send{background:var(--cn-surface-sunken)}.cn-send{width:38px;height:38px;flex:none;border-radius:var(--cn-radius-full);border:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;transform:scale(.86);opacity:.6;transition:background var(--cn-dur-base) var(--cn-ease-spring),transform var(--cn-dur-base) var(--cn-ease-spring),opacity var(--cn-dur-base) var(--cn-ease-spring)}.cn-send.is-active{background:var(--cn-primary);transform:scale(1);opacity:1}.cn-editbar{flex:none;display:flex;align-items:center;gap:11px;padding:9px 16px;background:var(--cn-surface);border-top:1px solid var(--cn-hairline);z-index:7}.cn-editbar__rule{width:3px;align-self:stretch;border-radius:2px;background:var(--cn-primary);flex:none}.cn-editbar__title{font-size:13px;font-weight:600;color:var(--cn-primary)}.cn-editbar__preview{font-size:14px;color:var(--cn-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cn-emoji{position:absolute;left:0;right:0;bottom:0;background:var(--cn-surface);border-top:1px solid var(--cn-hairline);padding:14px 12px calc(14px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(6,1fr);grid-gap:4px;gap:4px;z-index:8;max-height:248px;overflow-y:auto;box-shadow:0 -8px 30px rgba(0,0,0,.12);transform:translateY(110%);transition:transform var(--cn-dur-slow) var(--cn-ease-spring)}.cn-emoji.is-open{transform:translateY(0)}@container (min-width: 680px){.cn-emoji{grid-template-columns:repeat(10,1fr)}}.cn-emoji__btn{border:none;background:transparent;font-size:26px;line-height:1;padding:6px;border-radius:var(--cn-radius-sm)}.cn-emoji__btn,.cn-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.cn-pill{position:absolute;right:14px;bottom:76px;width:40px;height:40px;border-radius:var(--cn-radius-full);background:var(--cn-surface);border:1px solid var(--cn-hairline);box-shadow:var(--cn-shadow);display:flex;align-items:center;justify-content:center;z-index:6;transform:translateY(12px) scale(.8);opacity:0;pointer-events:none;transition:transform var(--cn-dur-base) var(--cn-ease-out),opacity var(--cn-dur-base) var(--cn-ease-out)}.cn-pill.is-visible{transform:translateY(0) scale(1);opacity:1;pointer-events:auto}.cn-pill__badge{position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;border-radius:10px;background:var(--cn-primary);color:var(--cn-primary-contrast);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px}.cn-skel{background:var(--cn-skeleton);background-image:linear-gradient(90deg,var(--cn-skeleton),var(--cn-skeleton-hi),var(--cn-skeleton));background-size:260px 100%;animation:cn-shimmer 1.3s linear infinite;border-radius:7px}.cn-skel--dot{width:22px;height:22px;border-radius:var(--cn-radius-full);flex:none}.cn-skel--line{height:13px}.cn-skel--bubble{height:34px;border-radius:16px}.cn-skel-row{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--cn-hairline)}@media (prefers-reduced-motion:reduce){.cn-skel{animation:none}}.cn-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;padding:90px 40px 0}.cn-empty--centered{height:100%;padding:0 50px}.cn-empty__mark{width:62px;height:62px;border-radius:var(--cn-radius-full);border:2px dashed var(--cn-border);margin-bottom:10px}.cn-empty__title{font:var(--cn-text-title);font-size:19px;color:var(--cn-text)}.cn-empty__text{font-size:14.5px;color:var(--cn-text-muted);line-height:1.45;max-width:240px}.cn-noresults{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;padding:64px 30px 0}.cn-noresults__title{font-size:17px;font-weight:650;color:var(--cn-text)}.cn-noresults__text{font-size:14px;color:var(--cn-text-muted);line-height:1.45;max-width:220px}.cn-noresults__reset{margin-top:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--cn-border);background:transparent;color:var(--cn-primary);font-size:14px;font-weight:600;cursor:pointer;padding:9px 16px;border-radius:10px}.cn-loadmore{display:flex;justify-content:center;padding:4px 0 10px}.cn-loadmore__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--cn-border);background:var(--cn-surface);color:var(--cn-text-muted);font-size:13px;font-weight:600;cursor:pointer;padding:8px 16px;border-radius:20px}.cn-loadmore__spinner{width:22px;height:22px;border-radius:var(--cn-radius-full);border:2.4px solid var(--cn-border);border-top-color:var(--cn-text-muted);animation:cn-spin .8s linear infinite}.cn-endoflist{display:flex;justify-content:center;padding:6px 0 12px}.cn-endoflist__label{font-size:12px;font-weight:500;color:var(--cn-text-muted)}.cn-cover{position:absolute;inset:0;z-index:30;background:var(--cn-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--cn-dur-fast) var(--cn-ease-out)}.cn-cover.is-active{opacity:1;pointer-events:auto}.cn-scrim{position:absolute;inset:0;z-index:24;background:var(--cn-overlay);opacity:0;pointer-events:none;transition:opacity var(--cn-dur-base) var(--cn-ease-out)}.cn-scrim.is-open{opacity:1;pointer-events:auto}.cn-sheet{position:absolute;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:25;background:var(--cn-surface);border-radius:var(--cn-radius-lg);padding:20px 18px 16px;box-shadow:0 -8px 40px rgba(0,0,0,.25);transform:translateY(120%);opacity:0;pointer-events:none;transition:transform var(--cn-dur-slow) var(--cn-ease-spring),opacity var(--cn-dur-base) var(--cn-ease-out)}.cn-sheet.is-open{transform:translateY(0);opacity:1;pointer-events:auto}.cn-sheet__title{font-size:17px;font-weight:700;color:var(--cn-text);text-align:center}.cn-sheet__text{font-size:14px;color:var(--cn-text-muted);text-align:center;line-height:1.45;margin:6px 0 18px}.cn-btn{width:100%;border:none;cursor:pointer;font-size:16px;font-weight:600;padding:14px;border-radius:13px}.cn-btn--primary{background:var(--cn-primary);color:var(--cn-primary-contrast)}.cn-btn--danger{background:var(--cn-danger);color:#fff}.cn-btn--neutral{background:var(--cn-surface-sunken);color:var(--cn-text)}.cn-btn--ghost{background:transparent;color:var(--cn-text-muted)}.cn-btn+.cn-btn{margin-top:9px}.cn-btn:disabled{opacity:.5;cursor:default}.cn-codeentry{display:flex;flex-direction:column;align-items:center}.cn-codeentry__input{width:100%;max-width:240px;text-align:center;border:1px solid var(--cn-border);background:var(--cn-surface);color:var(--cn-text);font-size:20px;font-weight:600;letter-spacing:.15em;padding:14px;border-radius:13px;outline:none}.cn-codeentry__input.is-invalid{animation:cn-shake .4s}.cn-codeentry__error{font-size:13.5px;color:var(--cn-danger);font-weight:500;margin-top:8px}.cn-setup{padding:6px 24px 24px;container-type:inline-size}.cn-setup__field{margin-bottom:18px}.cn-setup__label{font-size:13.5px;font-weight:600;color:var(--cn-text-muted)}.cn-setup__input{width:100%;margin-top:7px;padding:13px 14px;border:1px solid var(--cn-border);border-radius:var(--cn-radius-md);background:var(--cn-surface);color:var(--cn-text);font-size:16px;outline:none}.cn-setup__pins{display:flex;gap:14px}.cn-setup__pins>*{flex:1 1}@container (min-width: 560px){.cn-setup{max-width:460px}}.cn-hint{font-size:12.5px;font-weight:500;margin-top:6px;color:var(--cn-text-muted)}.cn-hint--ok{color:var(--cn-success)}.cn-hint--warn{color:var(--cn-flag)}.cn-hint--danger{color:var(--cn-danger)}.cn-strength{display:flex;align-items:center;gap:10px;margin-top:10px}.cn-strength__bars{flex:1 1;display:flex;gap:5px}.cn-strength__bar{flex:1 1;height:4px;border-radius:2px;background:var(--cn-border);transition:background-color var(--cn-dur-base) var(--cn-ease-out)}.cn-strength__label{font-size:12px;font-weight:600;white-space:nowrap;color:var(--cn-text-muted)}.cn-strength.is-1 .cn-strength__bar:nth-child(-n+1),.cn-strength.is-2 .cn-strength__bar:nth-child(-n+2),.cn-strength.is-3 .cn-strength__bar:nth-child(-n+3),.cn-strength.is-4 .cn-strength__bar:nth-child(-n+4){background:currentColor}.cn-strength.is-1{color:var(--cn-danger)}.cn-strength.is-2,.cn-strength.is-3{color:var(--cn-flag)}.cn-strength.is-4{color:var(--cn-success)}.cn-strength.is-1 .cn-strength__label,.cn-strength.is-2 .cn-strength__label,.cn-strength.is-3 .cn-strength__label,.cn-strength.is-4 .cn-strength__label{color:currentColor}