/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--container-2xl:42rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-bold:700;--tracking-tight:-.025em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-neg:var(--neg);--radius-pill:var(--radius-pill);--shadow-menu:var(--shadow-menu);--shadow-sheet:var(--shadow-sheet)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mb-1{margin-bottom:var(--spacing)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-9{margin-bottom:calc(var(--spacing) * 9)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.max-w-2xl{max-width:var(--container-2xl)}.max-w-5xl{max-width:var(--container-5xl)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.overflow-x-auto{overflow-x:auto}.border{border-style:var(--tw-border-style);border-width:1px}.p-5{padding:calc(var(--spacing) * 5)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pb-1{padding-bottom:var(--spacing)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-neg{color:var(--color-neg)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.select-none{-webkit-user-select:none;user-select:none}@media (min-width:40rem){.sm\:block{display:block}}@media (min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:px-8{padding-inline:calc(var(--spacing) * 8)}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-\[22px\]{font-size:22px}}@media (min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}}:root{--bg:#0a0b12;--surface:#12141f;--surface-2:#171a28;--surface-3:#1e2233;--text:#e8eaf2;--text-strong:#fff;--text-muted:#8e94ab;--text-dim:#64748b;--border:#232742;--border-soft:#1a1e30;--brand:#7c5cff;--brand-light:#9d7cff;--brand-dark:#6244e8;--brand-soft:#7c5cff1f;--brand-line:#7c5cff59;--glow:#7c5cff1a;--pos:#34d399;--neg:#f87171;--warn:#fbbf24;--gold:#d4af5a;--gold-soft:#d4af5a26;--gold-line:#d4af5a73;--fav:#fbbf24;--fav-soft:#fbbf2426;--mark-bg:#7c5cff38;--shadow-menu:0 12px 32px #0000008c;--shadow-sheet:0 -12px 40px #00000080;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-pill:9999px;--glass-blur:16px;--glass-blur-lg:20px}[data-theme=light]{--bg:#f5f6fa;--surface:#fff;--surface-2:#f8f9fc;--surface-3:#eef0f6;--text:#2a2e3d;--text-strong:#12141f;--text-muted:#64748b;--text-dim:#94a3b8;--border:#e4e7ef;--border-soft:#eef0f6;--brand:#6244e8;--brand-light:#7c5cff;--brand-dark:#5133d6;--brand-soft:#7c5cff1a;--brand-line:#7c5cff4d;--glow:#7c5cff14;--pos:#10b981;--neg:#ef4444;--warn:#d97706;--gold:#b8860b;--gold-soft:#b8860b1a;--gold-line:#b8860b59;--fav:#d97706;--fav-soft:#d977061f;--mark-bg:#7c5cff2e;--shadow-menu:0 12px 32px #0f172a1f;--shadow-sheet:0 -12px 40px #0f172a26}.qz-modal{width:min(860px,100vw - 32px);max-height:92vh}.qz-body{min-height:260px}.qz-source-tabs,.qz-tabs{border-bottom:1px solid var(--border);gap:8px;margin-bottom:18px;display:flex}.qz-source-tabs button,.qz-tabs button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 12px}.qz-source-tabs button.active,.qz-tabs button.active{color:var(--text-strong);border-bottom-color:var(--brand-light)}.qz-photo-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;max-height:260px;margin-bottom:18px;display:grid;overflow-y:auto}.qz-photo-grid button{background:var(--surface-2);min-width:0;color:var(--text-muted);cursor:pointer;border:2px solid #0000;border-radius:10px;padding:5px}.qz-photo-grid button.selected{border-color:var(--brand-light)}.qz-photo-grid button>span,.qz-photo-grid img{aspect-ratio:1;object-fit:cover;background:var(--surface);border-radius:6px;justify-content:center;align-items:center;width:100%;display:flex}.qz-photo-grid small{text-overflow:ellipsis;white-space:nowrap;padding:5px 2px 2px;display:block;overflow:hidden}.qz-field-label,.qz-question-head label{color:var(--text-strong);margin-bottom:7px;font-size:13px;font-weight:600;display:block}.qz-auto{border:1px solid var(--border);border-radius:10px;margin:16px 0;padding:12px}.qz-auto legend{color:var(--text-strong);padding:0 6px;font-size:13px}.qz-auto label{align-items:center;gap:6px;margin-right:18px;display:inline-flex}.qz-attempt p,.qz-auto p,.qz-created p,.qz-record-summary p{color:var(--text-muted);margin:8px 0 0;font-size:12px}.qz-add-question{border:1px dashed var(--brand-line);background:var(--brand-soft);width:100%;color:var(--text-strong);cursor:pointer;border-radius:10px;padding:10px}.qz-add-question:disabled,.qz-icon-btn:disabled,.qz-link-btn:disabled{opacity:.45;cursor:not-allowed}.qz-question-editor{border:1px solid var(--border);border-radius:10px;margin-bottom:12px;padding:14px}.qz-attempt-head,.qz-option-row,.qz-question-head,.qz-record-summary,.qz-share-row{align-items:center;gap:10px;display:flex}.qz-attempt-head,.qz-question-head,.qz-record-summary{justify-content:space-between}.qz-option-list{gap:8px;margin:10px 0;display:grid}.qz-option-row .field{flex:1;min-width:0}.qz-correct-radio{min-width:92px;color:var(--text-muted);align-items:center;gap:5px;font-size:12px;display:flex}.qz-icon-btn,.qz-link-btn{color:var(--brand-light);cursor:pointer;background:0 0;border:0;padding:5px}.qz-icon-btn{font-size:20px}.qz-created{padding:20px 0}.qz-created h4{color:var(--text-strong);font-size:16px}.qz-share-row{margin-top:18px}.qz-share-row .field{flex:1;min-width:0}.qz-mail-state.sent{color:var(--success,#3fb97a)}.qz-mail-state.failed,.qz-mail-state.unsubscribed{color:var(--warning,#e5a44b)}.qz-attempt,.qz-record-game{border:1px solid var(--border);border-radius:10px;margin-bottom:10px;padding:13px}.qz-attempt-list{margin-top:12px}.qz-answer-list{margin:10px 0 0;padding:0;list-style:none}.qz-answer-list li{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:8px 0;font-size:12px;display:flex}.qz-answer-list li.correct>span:last-child{color:var(--success,#3fb97a)}.qz-answer-list li.wrong>span:last-child{color:var(--danger,#e36b75)}.qz-empty{color:var(--text-muted);text-align:center;padding:30px 10px}@media (max-width:560px){.qz-option-row{flex-wrap:wrap}.qz-option-row .field{flex-basis:calc(100% - 120px)}.qz-share-row{align-items:stretch}.qz-answer-list li,.qz-share-row{flex-direction:column}}@media (min-width:640px){[data-v2-shell] body{padding-left:64px}[data-v2-shell] .app-header{display:none}}.rail{z-index:50;width:64px;padding:12px 0 calc(12px + env(safe-area-inset-bottom));background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:6px;position:fixed;top:0;bottom:0;left:0}.rail,.rail-brand{align-items:center;display:flex}.rail-brand{width:40px;height:40px;color:var(--brand-light);background:radial-gradient(circle at 32% 30%,var(--brand-line),var(--brand-soft));border:1px solid var(--brand-line);border-radius:50%;flex-shrink:0;justify-content:center;margin-bottom:6px;font-size:19px;text-decoration:none;transition:transform .15s;position:relative}.rail-brand:hover{transform:scale(1.06)}.rail-items{flex-direction:column;flex:1;gap:6px;min-height:0;display:flex}.rail-item{border-radius:var(--radius-md);width:42px;height:42px;color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;font-family:inherit;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:flex;position:relative}.rail-item:hover{color:var(--text);background:var(--surface-3)}.rail-item.active,.rail-item.active:hover{color:var(--brand-light);background:var(--brand-soft);border-color:var(--brand-line)}.rail-item svg{width:20px;height:20px}.rail-tip{border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border);width:max-content;max-width:220px;box-shadow:var(--shadow-menu);color:var(--text);text-align:left;white-space:normal;opacity:0;pointer-events:none;z-index:60;padding:7px 12px;font-size:12px;line-height:1.5;transition:opacity .15s,transform .15s;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)translate(-4px)}.rail-brand:focus-visible .rail-tip,.rail-brand:hover .rail-tip,.rail-item:focus-visible .rail-tip,.rail-item:hover .rail-tip{opacity:1;transition-delay:.25s;transform:translateY(-50%)translate(0)}.rail-gear.open{color:var(--brand-light);background:var(--brand-soft);border-color:var(--brand-line)}.rail-gear-wrap{flex-shrink:0}.dropdown-menu.rail-menu{min-width:200px;inset:auto auto 0 calc(100% + 10px)}.rail-menu-meta{color:var(--text-dim);align-items:center;gap:4px;font-size:12px;display:inline-flex}.rail-lang-option{padding-left:26px}@media (max-width:639px){.rail{display:none}}.rail-faceinfo-body{color:var(--text-muted);flex-direction:column;gap:10px;font-size:13px;line-height:1.7;display:flex}.rail-faceinfo-body p{margin:0}.rail-add-wrap{flex-shrink:0}.rail-add-contact.open{color:var(--brand-light);background:var(--brand-soft);border-color:var(--brand-line)}.dropdown-menu.rail-add-menu{min-width:160px;top:0;bottom:auto}.gi-modal .modal-body{min-height:120px;padding:8px 0}.gi-state{text-align:center;color:var(--text-2,#8a8f98);padding:36px 20px;font-size:13px}.gi-state-error{color:var(--danger,#d45d5d)}.gi-list{max-height:46vh;margin:0;padding:0 6px;list-style:none;overflow-y:auto}.gi-row{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-size:13px;display:flex}.gi-row:hover{background:var(--brand-soft)}.gi-row.disabled{opacity:.55;cursor:not-allowed}.gi-row input[type=checkbox]{flex-shrink:0}.gi-row-name{font-weight:600}.gi-row-email,.gi-row-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gi-row-email{flex:1;min-width:0}.gi-row-birthday,.gi-row-email{color:var(--text-2,#8a8f98);font-size:12px}.gi-row-birthday{flex-shrink:0}.gi-foot{align-items:center;gap:10px;width:100%;display:flex}.gi-foot-count{text-align:left;color:var(--text-2,#8a8f98);flex:1;font-size:12px}:root{--avatar-size:64px;--mark-fg:#d4c8ff}[data-theme=light]{--mark-fg:#4c1d95}@media (min-width:640px){:root{--avatar-size:68px}}@media (min-width:768px){:root{--avatar-size:72px}}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Microsoft YaHei,sans-serif;transition:background-color .25s,color .25s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}*,:after,:before{box-sizing:border-box}img{max-width:100%}.t-strong{color:var(--text-strong)}.t-muted{color:var(--text-muted)}.t-dim{color:var(--text-dim)}.t-brand{color:var(--brand-light)}.app-header{z-index:40;border-bottom:1px solid var(--border);position:sticky;top:0}html[data-theme=dark] .app-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0b12e0}html[data-theme=light] .app-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f5f6fae0}.nav-link{white-space:nowrap;color:var(--text-muted);border-radius:8px;padding:6px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s}.nav-link:hover{color:var(--text);background:var(--surface-2)}.nav-link.active{background:var(--brand-soft);color:var(--brand-light)}.icon-btn{border:1px solid var(--border);background:var(--surface-2);height:34px;color:var(--text-muted);white-space:nowrap;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-family:inherit;font-size:12px;font-weight:600;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.icon-btn:hover{color:var(--brand-light);border-color:var(--brand-line)}.icon-btn .caret{transition:transform .2s}.icon-btn.open .caret{transform:rotate(180deg)}html[data-theme=dark] .icon-sun{display:block}html[data-theme=dark] .icon-moon,html[data-theme=light] .icon-sun{display:none}html[data-theme=light] .icon-moon{display:block}.dropdown{position:relative}.dropdown-menu{background:var(--surface);border:1px solid var(--border);min-width:190px;box-shadow:var(--shadow-menu);opacity:0;pointer-events:none;visibility:hidden;z-index:60;border-radius:12px;padding:6px;transition:opacity .15s,transform .15s,visibility .15s;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-6px)scale(.98)}.dropdown-menu.open{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)scale(1)}.dropdown-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;padding:9px 10px;font-family:inherit;font-size:13px;transition:background .15s;display:flex}.dropdown-item:hover{background:var(--surface-2)}.dropdown-item.active{background:var(--brand-soft);color:var(--brand-light)}.dropdown-item .check{opacity:0}.dropdown-item.active .check{opacity:1}.btn-primary{background:linear-gradient(90deg,var(--brand-dark),var(--brand-light));color:#fff;box-shadow:0 8px 20px var(--brand-soft);cursor:pointer;border:none;border-radius:10px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:filter .15s,transform .1s}.btn-primary:hover{filter:brightness(1.08)}.btn-primary:active{transform:scale(.98)}.move-mask{z-index:90;opacity:0;pointer-events:none;background:#00000080;transition:opacity .2s;position:fixed;inset:0}.move-mask.open{opacity:1;pointer-events:auto}.move-sheet{z-index:91;background:var(--surface);box-shadow:var(--shadow-sheet);max-height:80vh;padding-bottom:env(safe-area-inset-bottom,0);border-top-left-radius:20px;border-top-right-radius:20px;flex-direction:column;transition:transform .28s cubic-bezier(.2,.9,.3,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.move-sheet.open{transform:translateY(0)}@media (min-width:640px){.move-sheet{opacity:0;pointer-events:none;border-radius:16px;width:100%;max-width:420px;max-height:80vh;inset:50% auto auto 50%;transform:translate(-50%,-48%)scale(.96)}.move-sheet.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}}.move-sheet-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px 14px;display:flex}.move-sheet-grip{background:var(--border);border-radius:2px;width:36px;height:4px;position:absolute;top:8px;left:50%;transform:translate(-50%)}@media (min-width:640px){.move-sheet-grip{display:none}}.move-sheet-title{color:var(--text-strong);margin-bottom:4px;font-size:15px;font-weight:700}.move-sheet-sub{color:var(--text-muted);font-size:12px;line-height:1.5}.move-sheet-close{width:30px;height:30px;color:var(--text-dim);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:20px;line-height:1;display:flex}.move-sheet-close:hover{background:var(--surface-2);color:var(--text)}.move-sheet-body{flex:1;padding:8px 12px 16px;overflow-y:auto}.move-item{width:100%;color:var(--text);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;font-family:inherit;font-size:14px;transition:background .15s;display:flex}.move-item:hover{background:var(--surface-2)}.move-item:active{background:var(--surface-3)}.move-item.current{color:var(--brand-light);cursor:default}.move-item.current,.move-item.current:hover{background:var(--brand-soft)}.move-item-label{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.move-item-hint{color:var(--text-dim);flex-shrink:0;font-size:11px}.move-item.current .move-item-hint{color:var(--brand-light)}.modal-mask{z-index:80;opacity:0;pointer-events:none;visibility:hidden;background:#000000a6;justify-content:center;align-items:center;padding:16px;transition:opacity .2s,visibility .2s;display:flex;position:fixed;inset:0}.modal-mask.open{opacity:1;pointer-events:auto;visibility:visible}.modal{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;width:100%;max-width:480px;max-height:92vh;transition:transform .2s;display:flex;overflow:hidden;transform:scale(.96);box-shadow:0 24px 64px #00000080}.modal-mask.open .modal{transform:none}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.modal-head h3{color:var(--text-strong);font-size:15px;font-weight:700}.modal-head button{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 6px;font-family:inherit;font-size:20px;line-height:1}.modal-head button:hover{color:var(--text);background:var(--surface-2)}.modal-body{padding:22px;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;justify-content:flex-end;padding:16px 22px}.modal-foot,.modal-foot-right{align-items:center;gap:10px;display:flex}.btn-ghost{background:var(--surface-2);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:border-color .15s}.btn-ghost:hover{border-color:var(--brand-line)}.person-editor-foot{justify-content:space-between}.person-editor-foot-right{align-items:center;gap:10px;display:flex}.pe-birthday-date .qd{flex:auto;width:100%}.pe-holiday-list{flex-direction:column;gap:4px;display:flex}.pe-holiday-item{flex-wrap:wrap;align-items:center;gap:4px 10px;padding:4px 0;display:flex}.pe-holiday-check{cursor:pointer;color:var(--text);align-items:center;gap:7px;font-size:13px;display:inline-flex}.pe-holiday-check input{accent-color:var(--brand);cursor:pointer;width:15px;height:15px}.pe-holiday-check input:disabled{cursor:not-allowed}.pe-holiday-check input:disabled+span{opacity:.55}.pe-holiday-next{color:var(--text-dim);font-size:11px}.pe-holiday-ineligible{color:var(--warn,#b45309);font-size:11px}.pe-region-radios{flex-wrap:wrap;flex-basis:100%;gap:6px;padding-left:24px;display:flex}.pe-culture-days{flex-wrap:wrap;gap:6px 16px;margin-top:8px;display:flex}.name-modal-avatar{background:var(--surface-3);border:3px solid var(--brand);width:84px;height:84px;box-shadow:0 0 0 6px var(--brand-soft);border-radius:9999px;margin:0 auto 14px;overflow:hidden}.name-modal-avatar img{object-fit:cover;width:100%;height:100%;display:block}.field{background:var(--surface-2);border:1px solid var(--border);width:100%;color:var(--text);border-radius:9px;outline:none;padding:10px 14px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s}.field::placeholder{color:var(--text-dim)}.field:focus{border-color:var(--brand-line);box-shadow:0 0 0 3px var(--brand-soft)}.field.field-warn{border-color:#f871718c}.field.field-warn:focus{border-color:#f87171;box-shadow:0 0 0 3px #f8717126}textarea.field{resize:vertical;min-height:60px;line-height:1.5}html[data-theme=dark] .field-date{color-scheme:dark}html[data-theme=light] .field-date{color-scheme:light}.lunar-cal-toggle{background:var(--surface-3);border-radius:9px;gap:4px;margin-bottom:8px;padding:3px;display:inline-flex}.lunar-cal-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:5px 14px;font-family:inherit;font-size:12px;transition:all .15s}.lunar-cal-btn.on{background:var(--surface-2);color:var(--text);box-shadow:0 1px 3px #0000002e}.lunar-birthday-fields{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lunar-birthday-year{width:130px}.lunar-birthday-month{width:92px}.lunar-birthday-day{width:76px}.lunar-birthday-leap{color:var(--text-muted);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:inline-flex}.lunar-birthday-leap.disabled{opacity:.45;cursor:not-allowed}.lunar-birthday-preview{color:var(--brand);flex-basis:100%;margin-top:2px;font-size:12px}.lunar-birthday-preview.invalid{color:#f87171}.radio-group input[type=radio]{display:none}.radio-group label{cursor:pointer;border:1px solid var(--border);color:var(--text-muted);border-radius:9999px;padding:6px 12px;font-size:12px;transition:all .18s;display:inline-block}.radio-group label:hover{background:var(--surface-2)}.radio-group input[type=radio]:checked+label{background:var(--brand);border-color:var(--brand);color:#fff}.radio-group input[type=radio]:disabled+label{opacity:.4;cursor:not-allowed}.radio-group input[type=radio]:disabled+label:hover{background:0 0}.collapse-section{border:1px solid var(--border);border-radius:10px;margin-top:4px;overflow:hidden}.collapse-section+.collapse-section{margin-top:12px}.collapse-head{background:var(--surface-2);cursor:pointer;text-align:left;border:none;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 14px;font-family:inherit;transition:background .15s;display:flex}.collapse-head:hover{background:var(--surface-3)}.collapse-title{color:var(--text);font-size:13px;font-weight:600;line-height:1.3}.collapse-sub{color:var(--text-dim);margin-top:3px;font-size:11px;line-height:1.5}.collapse-icon{color:var(--text-dim);flex-shrink:0;transition:transform .2s}.collapse-section.open .collapse-icon{transform:rotate(180deg)}.collapse-body{border-top:1px solid var(--border);background:var(--surface);padding:18px 14px 14px;display:none}.collapse-section.open .collapse-body{display:block}.collapse-sub.filled{color:var(--brand-light);font-weight:500}.addr-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.addr-grid>.field-full{grid-column:1/-1}@media (max-width:480px){.addr-grid{grid-template-columns:1fr}.addr-grid>.field-half{grid-column:auto}}.field-label{color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:500;display:block}.field-hint{color:var(--text-dim);margin-top:6px;font-size:11px;line-height:1.55}.field-hint.warn{color:#f87171}.info-tip{vertical-align:middle;margin-left:6px;display:inline-flex;position:relative}.info-tip-btn{border:1px solid var(--text-dim);width:16px;height:16px;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:11px;line-height:1;display:inline-flex}.info-tip-btn:hover,.info-tip-btn[aria-expanded=true]{color:var(--brand-light);border-color:var(--brand-light)}.info-tip-bubble{z-index:60;background:var(--surface);border:1px solid var(--border);width:340px;max-width:min(340px,100vw - 48px);color:var(--text);white-space:pre-line;border-radius:10px;padding:10px 12px;font-size:12px;font-weight:400;line-height:1.7;position:absolute;top:22px;left:0;box-shadow:0 12px 32px #00000073}.pets-complete-row{color:var(--text-muted);cursor:pointer;align-items:center;gap:8px;margin-top:10px;font-size:12px;display:flex}.pets-complete-row input{accent-color:var(--brand)}.field-optional{color:var(--text-dim);font-size:11px;font-weight:400}.anniv-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.anniv-row[hidden]{display:none}.anniv-row .anniv-cat-select{flex:0 0 120px;width:120px}.anniv-row .anniv-name-input{flex:calc(100% - 136px);min-width:0}.anniv-row .anniv-recur-select{flex:0 0 96px;width:96px}.anniv-remove{width:28px;height:28px;color:var(--text-dim);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;line-height:1;transition:background .15s,color .15s,border-color .15s;display:flex}.anniv-remove:hover{background:var(--neg);border-color:var(--neg);color:#fff}.add-anniv-btn{background:var(--surface-2);border:1px dashed var(--border);color:var(--text-muted);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.add-anniv-btn:hover{border-color:var(--brand-line);color:var(--brand-light);background:var(--brand-soft)}.add-anniv-btn[hidden]{display:none}.qd{flex:0 0 150px;width:150px;position:relative}.qd-toggle{text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;width:100%;font-family:inherit;overflow:hidden}.qd-toggle.empty{color:var(--text-dim)}.qd-backdrop{z-index:1000;position:fixed;inset:0}.qd-pop{z-index:1001;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;width:252px;padding:10px;position:fixed;box-shadow:0 12px 32px #00000073}.qd-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.qd-title{gap:4px;font-size:13px;font-weight:600;display:flex}.qd-title-part{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:7px;padding:3px 8px}.qd-title-part:hover{background:var(--surface-2);color:var(--brand-light)}.qd-title-part.open{background:var(--brand-soft);color:var(--brand-light)}.qd-nav{border:1px solid var(--border);width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:7px;font-size:14px;line-height:1}.qd-nav:hover{color:var(--brand-light);border-color:var(--brand-line)}.qd-nav:disabled{opacity:.35;cursor:default}.qd-nav:disabled:hover{color:var(--text-muted);border-color:var(--border)}.qd-grid,.qd-weekdays{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.qd-weekdays{color:var(--text-dim);text-align:center;margin-bottom:4px;font-size:10px}.qd-day{height:28px;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;font-family:inherit;font-size:12px}.qd-day:hover{background:var(--surface-2)}.qd-day.empty{cursor:default;pointer-events:none}.qd-day.active{background:linear-gradient(135deg,var(--brand-dark),var(--brand-light));color:#fff;font-weight:600}.qd-opt-grid{gap:4px;display:grid}.qd-opt-grid.months{grid-template-columns:repeat(4,1fr)}.qd-opt-grid.years{grid-template-columns:repeat(5,1fr)}.qd-opt{border:1px solid var(--border);height:32px;color:inherit;cursor:pointer;background:0 0;border-radius:8px;font-family:inherit;font-size:12px}.qd-opt:hover{color:var(--brand-light);border-color:var(--brand-line)}.qd-opt.active{background:linear-gradient(135deg,var(--brand-dark),var(--brand-light));color:#fff;border-color:#0000;font-weight:600}.edit-delete-link{color:var(--neg);cursor:pointer;background:0 0;border:none;padding:6px 0;font-family:inherit;font-size:13px;font-weight:500;transition:color .15s}.edit-delete-link:hover{color:#dc2626;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.modal.danger-modal{max-width:480px}.danger-icon{color:#f87171;background:#f8717126;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}html[data-theme=light] .danger-icon{color:#dc2626;background:#fee2e2}.danger-title{color:var(--text-strong);margin-bottom:8px;font-size:15px;font-weight:700}.danger-desc{color:var(--text-muted);font-size:13px;line-height:1.65}.danger-desc b{color:var(--text-strong);font-weight:600}.btn-danger{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:10px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:filter .15s}.btn-danger:hover{filter:brightness(1.08)}.btn-cancel{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:border-color .15s,background .15s}.btn-cancel:hover{border-color:var(--brand-line);background:var(--surface-2)}.dialog-cancel-btn{color:var(--text);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:9px;padding:9px 20px;font-family:inherit;font-size:13px;font-weight:500;transition:border-color .15s,background .15s}.dialog-cancel-btn:hover{border-color:var(--brand-line);background:var(--surface-2)}.dialog-confirm-btn{color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:9px;padding:9px 20px;font-family:inherit;font-size:13px;font-weight:500;transition:filter .15s}.dialog-confirm-btn.brand{background:linear-gradient(90deg,var(--brand-dark),var(--brand-light))}.dialog-confirm-btn.danger{background:#ef4444}.dialog-confirm-btn:hover{filter:brightness(1.1)}.dialog-confirm-btn:disabled{background:var(--border);color:var(--text-dim);cursor:not-allowed}.dialog-confirm-btn:disabled:hover{filter:none}.toast{background:var(--surface);border:1px solid var(--brand-line);color:var(--text);box-shadow:var(--shadow-menu);opacity:0;pointer-events:none;z-index:100;border-radius:12px;max-width:90vw;padding:12px 22px;font-size:13px;transition:opacity .25s,transform .25s;position:fixed;bottom:32px;left:50%;transform:translate(-50%)translateY(8px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.toast-spinner{border:2px solid #7c5cff4d;border-top:2px solid var(--brand-light);vertical-align:middle;border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-right:8px;animation:toast-spin .7s linear infinite;display:inline-block}@keyframes toast-spin{to{transform:rotate(1turn)}}.ph-pick-tabs{background:var(--surface-2);border-radius:9999px;gap:4px;margin-bottom:12px;padding:4px;display:inline-flex}.ph-pick-tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:9999px;padding:6px 14px;font-size:13px}.ph-pick-tab:hover{color:var(--text)}.ph-pick-tab.active{background:var(--surface);color:var(--text-strong)}.ph-pick-search{margin-bottom:12px}.ph-pick-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;max-height:50vh;display:grid;overflow-y:auto}.ph-pick-cell{cursor:pointer;background:var(--surface-2);border:2px solid #0000;border-radius:8px;padding:0;position:relative;overflow:hidden}.ph-pick-cell:hover:not(:disabled){border-color:var(--brand-line)}.ph-pick-cell.sel{border-color:var(--brand-light)}.ph-pick-cell:disabled{opacity:.5;cursor:not-allowed}.ph-pick-cell img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.ph-pick-check{background:var(--brand-light);color:#fff;border-radius:9999px;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.ph-pick-empty{color:var(--text-dim);text-align:center;padding:24px 0;font-size:13px}.ph-pick-file{color:var(--text-strong);cursor:pointer;border:1px solid var(--border);background:var(--surface-2);border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;display:inline-flex}.ph-pick-file:hover{border-color:var(--text-dim)}.ph-pick-file input{display:none}.ph-pick-file.disabled{opacity:.5;pointer-events:none}.cp-bar{align-items:center;gap:10px;margin-bottom:12px;display:flex}.cp-search-wrap{flex:1;min-width:0;position:relative}.cp-search-icon{color:var(--text-dim);pointer-events:none;width:14px;height:14px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.cp-search-wrap input{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);border-radius:10px;outline:none;padding:8px 32px 8px 34px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s}.cp-search-wrap input::placeholder{color:var(--text-dim)}.cp-search-wrap input:focus{border-color:var(--brand-line);box-shadow:0 0 0 3px var(--brand-soft)}.cp-search-clear{background:var(--surface-3);width:20px;height:20px;color:var(--text-muted);cursor:pointer;border:none;border-radius:9999px;justify-content:center;align-items:center;font-size:13px;line-height:1;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.cp-search-clear:hover{background:var(--brand-soft);color:var(--brand-light)}.cp-search-clear.hidden{display:none}.cp-select-all{color:var(--text-muted);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.cp-list{border:1px solid var(--border);border-radius:10px;max-height:46vh;overflow-y:auto}.cp-list ul{margin:0;padding:0;list-style:none}.cp-row{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:13px;display:flex}.cp-row:hover{background:var(--surface-2)}.cp-row.disabled{opacity:.5;cursor:not-allowed}.cp-list li:last-child .cp-row{border-bottom:none}.cp-row-name{color:var(--text-strong);font-weight:500}.cp-row-email{color:var(--text-muted);margin-left:auto;font-size:12px}.cp-row-email.no-email{color:var(--text-dim)}.cp-section-head{color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:600;display:flex}.cp-section-count{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:11px}.cp-group-head{background:var(--surface-2);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:4px 12px;display:flex}.cp-group-toggle{min-width:0;color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:6px;padding:6px 0;font-family:inherit;font-size:12px;font-weight:600;display:flex}.cp-group-toggle:hover{color:var(--text)}.cp-group-arrow{font-size:12px;transition:transform .15s;display:inline-block}.cp-group-arrow.open{transform:rotate(90deg)}.cp-empty{color:var(--text-dim);text-align:center;padding:24px 0;font-size:13px}.cp-foot{align-items:center;gap:10px;width:100%;display:flex}.cp-foot-count{color:var(--text-muted);margin-right:auto;font-size:12px}.photo-mod-tile{background:var(--surface-2,#ffffff0a);border:1px solid var(--border,#ffffff1f);width:100%;height:100%;min-height:48px;color:var(--text-dim,#ffffff8c);text-align:center;box-sizing:border-box;border-radius:8px;flex-direction:column;gap:6px;padding:8px;display:flex}.photo-mod-icon,.photo-mod-tile{justify-content:center;align-items:center}.photo-mod-icon{color:#9db8f0;background:#78a0f529;border-radius:50%;width:20px;height:20px;font-size:13px;font-weight:700;display:inline-flex}.photo-mod-text{word-break:break-word;font-size:12px;line-height:1.4}.photo-mod-note{color:var(--text-muted,#fff6);font-size:11px}.photo-mod-cta{border:1px solid var(--border,#fff3);color:var(--text-normal,#fff);cursor:pointer;background:0 0;border-radius:999px;padding:2px 10px;font-size:11px}.photo-mod-appeal-modal .photo-mod-appeal-textarea{border:1px solid var(--border,#ffffff29);background:var(--surface-1,#ffffff0f);width:100%;min-height:96px;color:var(--text-normal,#fff);box-sizing:border-box;resize:vertical;border-radius:8px;padding:8px 10px;font-size:13px}.photo-fault-tile{background:var(--surface-2,#ffffff0a);border:1px dashed var(--border,#ffffff29);width:100%;height:100%;min-height:48px;color:var(--text-dim,#ffffff8c);text-align:center;box-sizing:border-box;border-radius:8px;flex-direction:column;gap:6px;padding:8px;display:flex}.photo-fault-icon,.photo-fault-tile{justify-content:center;align-items:center}.photo-fault-icon{color:#f5b43c;background:#f5b43c2e;border-radius:50%;width:20px;height:20px;font-size:13px;font-weight:700;display:inline-flex}.photo-fault-text{word-break:break-word;font-size:12px;line-height:1.4}.photo-processing-tile{background:var(--surface-2,#ffffff0a);border:1px solid var(--border,#ffffff1f);width:100%;height:100%;min-height:48px;color:var(--text-dim,#ffffff8c);text-align:center;box-sizing:border-box;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:8px;display:flex}.photo-processing-spinner{border:2px solid #ffffff2e;border-top-color:#6ea8fe;border-radius:50%;width:18px;height:18px;animation:photo-processing-spin .9s linear infinite}.photo-processing-text{font-size:12px;line-height:1.4}@keyframes photo-processing-spin{to{transform:rotate(1turn)}}.bm-slot{justify-content:center;align-items:center;display:inline-flex}.holiday-pref-section{padding:16px 20px}.holiday-pref-title{color:var(--text-strong);margin:0;font-size:15px;font-weight:700}.holiday-pref-sub{color:var(--text-dim);margin:6px 0 12px;font-size:12px;line-height:1.6}.holiday-pref-list{flex-direction:column;gap:4px;display:flex}.holiday-pref-row{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 0;display:flex}.holiday-pref-row:first-child{border-top:none}.holiday-pref-head{cursor:pointer;align-items:center;gap:8px;min-width:0;display:flex}.holiday-pref-name{color:var(--text-normal);font-size:14px;font-weight:600}.holiday-pref-offhint{color:var(--text-dim);font-size:12px}.holiday-pref-nosend{color:var(--warn,#b45309);font-size:12px}.holiday-pref-body{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.holiday-pref-select{border:1px solid var(--border);background:var(--surface);color:var(--text-normal);border-radius:9px;padding:5px 10px;font-family:inherit;font-size:13px}.holiday-pref-dates{color:var(--text-dim);font-size:12px;line-height:1.6}.holiday-pref-save{border:1px solid var(--brand-light);color:var(--brand-light);cursor:pointer;background:0 0;border-radius:999px;margin-left:auto;padding:5px 14px;font-family:inherit;font-size:12px;font-weight:600;transition:background .15s,color .15s}.holiday-pref-save:hover:not(:disabled){background:var(--brand-soft)}.holiday-pref-save:disabled{opacity:.6;cursor:default}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}