.ai-file-config-panel{position:relative}.ai-file-preset-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ai-file-preset-grid .unsupported{opacity:.58}.ai-file-delete-source{margin:16px 0}.ai-file-retention-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.ai-file-retention-row>div{display:flex;align-items:flex-start;gap:9px;padding:12px;border:1px solid rgba(139,62,88,.13);border-radius:12px;background:#ffffff85;color:#8b3e58}.ai-file-retention-row span{display:grid;gap:3px}.ai-file-retention-row strong{font-size:12px}.ai-file-retention-row small{color:var(--muted);font-size:10px;line-height:1.5}.ai-file-config-notice{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding:9px 11px;border-radius:10px;background:#91435e14;color:#87334f;font-size:11px}.ai-file-config-notice button{display:grid;width:24px;height:24px;place-items:center;border:0;border-radius:7px;background:#ffffffa8;color:inherit}@media(max-width:760px){.ai-file-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-file-retention-row{grid-template-columns:1fr}}.ai-video-config-panel{position:relative}.ai-video-preset-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.ai-video-parameter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.ai-video-parameter-grid label{display:grid;gap:6px}.ai-video-parameter-grid span{font-size:11px;color:var(--muted)}.ai-video-parameter-grid input,.ai-video-parameter-grid select{min-width:0;height:42px;padding:0 12px;border:1px solid rgba(139,62,88,.16);border-radius:12px;background:#ffffffad;color:var(--ink)}.ai-video-switch-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin:14px 0}.ai-video-limit{display:flex;gap:9px;align-items:center;padding:11px 13px;border:1px solid rgba(139,62,88,.13);border-radius:12px;background:#ffffff85;color:#8b3e58}.ai-video-limit span{display:grid;gap:2px}.ai-video-limit strong{font-size:12px}.ai-video-limit small{font-size:10px;color:var(--muted)}.ai-video-config-notice{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding:9px 11px;border-radius:10px;background:#91435e14;color:#87334f;font-size:11px}.ai-video-config-notice button{display:grid;width:24px;height:24px;place-items:center;border:0;border-radius:7px;background:#ffffffa8;color:inherit}@media(max-width:900px){.ai-video-preset-grid,.ai-video-parameter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-video-switch-row{grid-template-columns:1fr}}@media(max-width:560px){.ai-video-parameter-grid{grid-template-columns:1fr}}.ai-3d-config-panel{position:relative}.ai-3d-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ai-3d-parameter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.ai-3d-parameter-grid label{display:grid;gap:6px}.ai-3d-parameter-grid span{font-size:11px;color:var(--muted)}.ai-3d-parameter-grid input{min-width:0;height:42px;padding:0 12px;border:1px solid rgba(139,62,88,.16);border-radius:12px;background:#ffffffad;color:var(--ink)}.ai-3d-switch-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.ai-3d-limit{display:flex;gap:9px;align-items:center;padding:11px 13px;border:1px solid rgba(139,62,88,.13);border-radius:12px;background:#ffffff85;color:#8b3e58}.ai-3d-limit span{display:grid;gap:2px}.ai-3d-limit strong{font-size:12px}.ai-3d-limit small{font-size:10px;color:var(--muted)}.ai-3d-config-notice{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding:9px 11px;border-radius:10px;background:#91435e14;color:#87334f;font-size:11px}.ai-3d-config-notice button{display:grid;width:24px;height:24px;place-items:center;border:0;border-radius:7px;background:#ffffffa8;color:inherit}@media(max-width:900px){.ai-3d-parameter-grid,.ai-3d-switch-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.ai-3d-preset-grid,.ai-3d-parameter-grid,.ai-3d-switch-row{grid-template-columns:1fr}}.hero-card{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero-card-media{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#251d35}.hero-card-media img,.hero-card-media video{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.hero-card-media .hero-card-held-frame{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0}.hero-card-curtain{position:absolute;z-index:3;top:0;bottom:0;width:50.05%;overflow:hidden;transition:transform 2.4s cubic-bezier(.55,.02,.22,1);will-change:transform;filter:drop-shadow(0 0 18px rgba(41,16,28,.34))}.hero-card-curtain img{position:absolute;top:0;width:200%;height:100%;max-width:none;object-fit:cover}.hero-card-curtain-left{left:0;transform-origin:left center}.hero-card-curtain-left img{left:0}.hero-card-curtain-right{right:0;transform-origin:right center}.hero-card-curtain-right img{right:0}.hero-card-phase-opening .hero-card-curtain-left,.hero-card-phase-playing .hero-card-curtain-left,.hero-card-phase-holding .hero-card-curtain-left{transform:translate(-91%)}.hero-card-phase-opening .hero-card-curtain-right,.hero-card-phase-playing .hero-card-curtain-right,.hero-card-phase-holding .hero-card-curtain-right{transform:translate(91%)}.hero-card-runner{position:absolute;z-index:3;bottom:1.5%;left:50%;height:clamp(260px,45vh,460px);width:auto;opacity:0;background-repeat:no-repeat;background-position:center bottom;background-size:contain;filter:drop-shadow(0 10px 14px rgba(49,20,31,.28));transition:left 2.4s cubic-bezier(.55,.02,.22,1),opacity .16s ease;will-change:left}.hero-card-runner-woman{aspect-ratio:470 / 653;transform:translate(0);background-image:url(/assets/hero-card/woman-left.png)}.hero-card-runner-man{aspect-ratio:317 / 393;transform:translate(-100%);background-image:url(/assets/hero-card/man-right.png)}.hero-card-phase-opening .hero-card-runner-woman{left:4.5%}.hero-card-phase-opening .hero-card-runner-man{left:95.5%}.hero-card-phase-playing .hero-card-runner-woman,.hero-card-phase-holding .hero-card-runner-woman{left:4.5%;aspect-ratio:266 / 348;transform:translate(-100%);background-image:url(/assets/hero-card/woman-right.png)}.hero-card-phase-playing .hero-card-runner-man,.hero-card-phase-holding .hero-card-runner-man{left:95.5%;aspect-ratio:513 / 652;transform:translate(0);background-image:url(/assets/hero-card/man-left.png)}.hero-card-phase-closing .hero-card-runner-woman{left:50%;aspect-ratio:266 / 348;transform:translate(-100%);background-image:url(/assets/hero-card/woman-right.png)}.hero-card-phase-closing .hero-card-runner-man{left:50%;aspect-ratio:513 / 652;transform:translate(0);background-image:url(/assets/hero-card/man-left.png)}.hero-card-phase-opening .hero-card-runner,.hero-card-phase-closing .hero-card-runner{opacity:1}.hero-card-hug{position:absolute;z-index:3;left:50%;bottom:1%;width:clamp(130px,17vw,270px);aspect-ratio:.59;opacity:1;transform:translate(-50%);background:url(/assets/hero-card/hug.png) center bottom / contain no-repeat;filter:drop-shadow(0 10px 18px rgba(46,18,30,.32));animation:heroCardHugIn .6s cubic-bezier(.18,.8,.2,1) both}.hero-card-bow{position:absolute;z-index:3;left:50%;top:34%;width:clamp(82px,8.5vw,145px);aspect-ratio:505 / 582;padding:0;border:0;border-radius:50%;opacity:1;pointer-events:auto;cursor:pointer;transform:translate(-50%,-50%);background:transparent;filter:drop-shadow(0 12px 22px rgba(38,14,27,.38));transition:opacity .26s ease,transform .32s cubic-bezier(.2,.8,.2,1),filter .25s ease}.hero-card-bow>span{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/assets/hero-card/bow.png) center / contain no-repeat}.hero-card-bow:hover{filter:drop-shadow(0 0 18px rgba(255,214,225,.65)) drop-shadow(0 12px 22px rgba(38,14,27,.38));transform:translate(-50%,-50%) scale(1.06)}.hero-card-bow:focus-visible{outline:2px solid #fff4f7;outline-offset:7px}.hero-card-phase-opening .hero-card-bow,.hero-card-phase-playing .hero-card-bow,.hero-card-phase-holding .hero-card-bow{opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.65) rotate(-8deg)}.hero-card-phase-closing .hero-card-bow{opacity:0;pointer-events:none}.hero-card-lights{position:absolute;z-index:3;top:2%;left:50%;width:min(76vw,1050px);height:clamp(90px,13vw,170px);opacity:0;transform:translate(-50%) translateY(-8%);background:url(/assets/hero-card/lights.png) center top / contain no-repeat;filter:drop-shadow(0 0 5px rgba(255,218,135,.75));transition:opacity .65s ease 1.55s,filter .65s ease 1.55s}.hero-card-phase-opening .hero-card-lights,.hero-card-phase-playing .hero-card-lights,.hero-card-phase-holding .hero-card-lights,.hero-card-phase-closing .hero-card-lights{opacity:1;filter:drop-shadow(0 0 10px rgba(255,226,145,.95)) brightness(1.08)}.hero-card-phase-closing .hero-card-lights{transition-delay:0s;opacity:0}.hero-card-petals{position:absolute;z-index:3;top:0;right:0;bottom:0;left:0;overflow:hidden}.hero-card-petals span{--petal-x: 10%;position:absolute;top:-28%;left:var(--petal-x);width:clamp(42px,5.2vw,88px);aspect-ratio:1.1;opacity:0;background:url(/assets/hero-card/petal.png) center / contain no-repeat}.hero-card-phase-playing .hero-card-petals span,.hero-card-phase-holding .hero-card-petals span{animation:heroCardPetals 4.2s linear infinite}.hero-card-petals span:nth-child(1){--petal-x: 7%;animation-delay:-.2s!important;animation-duration:4.8s!important}.hero-card-petals span:nth-child(2){--petal-x: 19%;animation-delay:-2.1s!important;animation-duration:5.3s!important}.hero-card-petals span:nth-child(3){--petal-x: 32%;animation-delay:-.9s!important;animation-duration:4.4s!important}.hero-card-petals span:nth-child(4){--petal-x: 45%;animation-delay:-3.2s!important;animation-duration:5.7s!important}.hero-card-petals span:nth-child(5){--petal-x: 58%;animation-delay:-1.4s!important;animation-duration:4.9s!important}.hero-card-petals span:nth-child(6){--petal-x: 70%;animation-delay:-3.8s!important;animation-duration:5.5s!important}.hero-card-petals span:nth-child(7){--petal-x: 82%;animation-delay:-.6s!important;animation-duration:4.6s!important}.hero-card-petals span:nth-child(8){--petal-x: 91%;animation-delay:-2.7s!important;animation-duration:5.1s!important}@keyframes heroCardPetals{0%{opacity:0;transform:translate3d(0,-10%,0) rotate(-12deg)}12%{opacity:.82}88%{opacity:.72}to{opacity:0;transform:translate3d(52px,138vh,0) rotate(310deg)}}@keyframes heroCardHugIn{0%{opacity:0;transform:translate(-50%) scale(.78)}to{opacity:1;transform:translate(-50%) scale(1)}}@media(max-width:760px){.hero-card-runner{height:clamp(220px,38vh,350px);width:auto;bottom:5%}.hero-card-bow{width:clamp(78px,22vw,120px);top:36%}.hero-card-hug{width:clamp(125px,34vw,210px)}.hero-card-lights{width:112vw;top:8%}}@media(prefers-reduced-motion:reduce){.hero-card-curtain,.hero-card-runner,.hero-card-bow,.hero-card-lights{transition-duration:.01ms;transition-delay:0s}.hero-card-petals span{animation:none!important}}:root{font-family:Noto Sans SC,Microsoft YaHei,system-ui,sans-serif;color:#512d39;background:#f9eeee;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #512d39;--muted: #936f79;--rose-950: #5e2335;--rose-800: #8c3852;--rose-700: #a3435f;--rose-600: #bb5a72;--rose-500: #d97a91;--rose-300: #edb0bd;--rose-200: #f4cdd5;--rose-100: #fae6e9;--cream: #fffaf7;--paper: rgba(255, 252, 249, .86);--border: rgba(132, 63, 82, .15);--shadow: 0 22px 60px rgba(91, 43, 57, .1);--serif: "Noto Serif SC", "Songti SC", "STSong", Georgia, serif}.topbar-actions{min-width:0;height:100%;display:flex;align-items:center;justify-content:flex-end;gap:6px}.topbar-actions nav{flex:1 1 auto}.global-search-trigger{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 9px;color:inherit;background:#ffffff57;border:1px solid rgba(133,67,88,.13);border-radius:999px;font-size:10px;white-space:nowrap}.page-home .global-search-trigger{background:#ffffff1f;border-color:#ffffff3d}.global-search-trigger kbd{padding:2px 5px;border:1px solid currentColor;border-radius:4px;font:inherit;font-size:8px;opacity:.55}.search-backdrop{position:fixed;z-index:430;top:0;right:0;bottom:0;left:0;display:grid;place-items:start center;padding:10vh 20px 30px;background:#30162273;-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px)}.global-search-panel{width:min(820px,100%);max-height:78vh;overflow:hidden;display:grid;grid-template-rows:auto auto auto auto minmax(120px,1fr);color:#724453;background:#fffcfbfa;border:1px solid rgba(255,255,255,.72);border-radius:26px;box-shadow:0 34px 90px #431c2b47}.global-search-panel>header{min-height:70px;padding:0 22px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;border-bottom:1px solid rgba(129,66,86,.1)}.global-search-panel>header input{width:100%;height:48px;padding:0;border:0;outline:0;background:transparent;font:600 17px/1.4 var(--sans);color:#633b49}.global-search-panel>header button{display:grid;place-items:center;width:36px;height:36px;color:#885d69;background:#f8e8ed;border-radius:50%}.search-categories{display:flex;gap:5px;padding:12px 18px 7px;overflow-x:auto;scrollbar-width:none}.search-categories button{flex:0 0 auto;min-height:31px;padding:0 13px;color:#865b68;background:#fbf0f3;border-radius:999px;font-size:10px}.search-categories button.active{color:#fff;background:#b95e7c}.search-tag-cloud{display:flex;align-items:center;gap:6px;padding:6px 20px 11px;overflow-x:auto;scrollbar-width:none;color:#ac7082}.search-tag-cloud button{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;color:#9b526d;background:#fff;border:1px solid rgba(171,88,119,.16);border-radius:999px;font-size:9px}.search-tag-cloud button.active{color:#fff;background:#cf7594}.search-tag-cloud small{opacity:.55}.search-result-summary{display:flex;align-items:baseline;gap:6px;padding:4px 22px 9px;font-size:10px;color:#9a7280}.search-result-summary strong{font:700 18px Georgia,serif;color:#9c536d}.search-results{min-height:0;overflow-y:auto;padding:0 12px 15px}.search-results>button{width:100%;position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:13px 14px;text-align:left;color:#704451;background:transparent;border-radius:16px}.search-results>button:hover{background:#fbf0f3}.search-results>button>i{display:grid;place-items:center;width:39px;height:39px;color:#b45d7b;background:#f8dce5;border-radius:13px}.search-results>button>i svg{width:18px}.search-results>button>span{min-width:0;display:grid;gap:3px;padding-right:140px}.search-results>button small{color:#aa7d89;font-size:9px}.search-results>button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--serif);font-size:15px}.search-results>button p{margin:0;overflow:hidden;color:#8a6570;font-size:10px;line-height:1.55;white-space:nowrap;text-overflow:ellipsis}.search-results>button em{display:flex;gap:4px;font-style:normal}.search-results>button em b{color:#af617b;font-size:8px;font-weight:500}.search-results>button>u{position:absolute;top:17px;right:15px;max-width:130px;display:flex;align-items:center;gap:3px;overflow:hidden;color:#ad7a88;font-size:8px;text-decoration:none;white-space:nowrap;text-overflow:ellipsis}.search-empty{min-height:200px;display:grid;place-items:center;align-content:center;gap:8px;color:#b18490}.search-empty strong{font-family:var(--serif);color:#815361}.search-empty span{font-size:10px}.record-tags{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.record-tags span{padding:4px 8px;color:#a75573;background:#eeb3c53b;border:1px solid rgba(184,91,123,.11);border-radius:999px;font-size:8px;line-height:1}.search-focus-pulse{animation:search-focus-pulse 2.5s ease both}@keyframes search-focus-pulse{0%,to{box-shadow:inherit}18%,55%{box-shadow:0 0 0 5px #dd698e38,0 24px 60px #78314a2e;transform:translateY(-3px)}}.home-status-page,.date-wheel-page{padding-bottom:80px}.page-heading.home-status-heading p,.page-heading.wheel-heading p{margin-top:8px;color:#9a7580;font-size:10px}.little-home-shell.panel{padding:10px;overflow:visible;background:linear-gradient(145deg,#4a2540,#241d38);border-color:#ffffff38;box-shadow:0 36px 90px #441e3847}.little-home-stage{--home-tilt-x: 0deg;--home-tilt-y: 0deg;--home-light-x: 50%;--home-light-y: 50%;position:relative;z-index:1;aspect-ratio:3/2;perspective:1300px;border-radius:20px;overflow:hidden;background:#2e223b}.little-home-depth{position:absolute;top:-1.3%;right:-1.3%;bottom:-1.3%;left:-1.3%;transform-style:preserve-3d;transform:rotateX(var(--home-tilt-x)) rotateY(var(--home-tilt-y)) scale(1.035);transition:transform .18s ease-out}.little-home-background{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none;filter:saturate(1.04) contrast(1.02);transform:translateZ(0)}.little-home-ambient{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at var(--home-light-x) var(--home-light-y),rgba(255,255,255,.2),transparent 26%),linear-gradient(to top,rgba(35,15,40,.18),transparent 38%);mix-blend-mode:screen;transform:translateZ(18px)}.little-home-gloss{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(112deg,transparent 18%,rgba(255,255,255,.12) 42%,transparent 59%);opacity:.7;transform:translateZ(110px)}.home-resident{--resident-x: 40%;--resident-y: 45%;--resident-w: 24%;position:absolute;z-index:3;left:var(--resident-x);top:var(--resident-y);width:var(--resident-w);aspect-ratio:1;transform-style:preserve-3d;transform:translateZ(76px);transition:left .8s cubic-bezier(.2,.8,.2,1),top .8s cubic-bezier(.2,.8,.2,1),width .8s ease;pointer-events:none}.resident-sprite{position:absolute;top:0;right:0;bottom:0;left:0;background-repeat:no-repeat;background-size:300% 300%;filter:drop-shadow(0 10px 9px rgba(39,15,31,.35));animation:resident-breathe 3.2s ease-in-out infinite}.resident-one .resident-sprite{background-image:url(/assets/status-home/girl-states-v6.png)}.resident-partner .resident-sprite{background-image:url(/assets/status-home/boy-states-v6.png);animation-delay:-.9s}.resident-shadow{position:absolute;z-index:-1;left:23%;right:22%;bottom:7%;height:12%;border-radius:50%;background:#2b132059;filter:blur(8px);transform:translateZ(-10px)}.resident-card{position:absolute;z-index:5;left:50%;bottom:105%;min-width:155px;max-width:210px;padding:8px 10px;display:grid;gap:2px;color:#734252;background:#fff9f8e6;border:1px solid rgba(255,255,255,.75);border-radius:12px;box-shadow:0 9px 25px #3d162a2e;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);transform:translate(-50%) translateZ(45px)}.resident-card:after{content:"";position:absolute;left:50%;bottom:-5px;width:10px;height:10px;background:inherit;transform:translate(-50%) rotate(45deg)}.resident-card strong{font-family:var(--serif);font-size:12px}.resident-card span{font-size:8px;white-space:nowrap}.resident-card p{margin:2px 0 0;color:#a15a74;font-size:8px;line-height:1.4}.resident-card small{display:flex;align-items:center;gap:4px;margin-top:2px;color:#a7808a;font-size:6.5px}.state-entertainment .resident-sprite{background-position:0 0}.state-resting .resident-sprite{background-position:50% 0}.state-working .resident-sprite{background-position:100% 0}.state-eating .resident-sprite{background-position:0 50%}.state-cooking .resident-sprite{background-position:50% 50%}.state-exercise .resident-sprite{background-position:100% 50%}.state-chores .resident-sprite{background-position:0 100%}.state-out .resident-sprite{background-position:50% 100%}.state-available .resident-sprite{background-position:100% 100%}.resident-one.state-eating .resident-sprite,.resident-one.state-chores .resident-sprite{scale:-1 1}.resident-one.state-entertainment{--resident-x: 39%;--resident-y: 43%;--resident-w: 25%}.resident-partner.state-entertainment{--resident-x: 71%;--resident-y: 27%;--resident-w: 20%}.resident-one.state-resting{--resident-x: 4%;--resident-y: 35%;--resident-w: 23%}.resident-partner.state-resting{--resident-x: 14%;--resident-y: 38%;--resident-w: 22%}.resident-one.state-working{--resident-x: 39%;--resident-y: 47%;--resident-w: 19%}.resident-partner.state-working{--resident-x: 81%;--resident-y: 38%;--resident-w: 18%}.resident-one.state-eating{--resident-x: 40%;--resident-y: 29%;--resident-w: 16%}.resident-partner.state-eating{--resident-x: 51%;--resident-y: 29%;--resident-w: 16%}.resident-one.state-cooking{--resident-x: 33%;--resident-y: 18%;--resident-w: 15%}.resident-partner.state-cooking{--resident-x: 43%;--resident-y: 18%;--resident-w: 15%}.resident-one.state-exercise{--resident-x: 66%;--resident-y: 61%;--resident-w: 20%}.resident-partner.state-exercise{--resident-x: 78%;--resident-y: 59%;--resident-w: 18%}.resident-one.state-chores{--resident-x: 73%;--resident-y: 57%;--resident-w: 17%}.resident-partner.state-chores{--resident-x: 59%;--resident-y: 56%;--resident-w: 18%}.resident-one.state-out{--resident-x: 58%;--resident-y: 25%;--resident-w: 17%}.resident-partner.state-out{--resident-x: 66%;--resident-y: 25%;--resident-w: 18%}.resident-one.state-available{--resident-x: 55%;--resident-y: 54%;--resident-w: 18%}.resident-partner.state-available{--resident-x: 68%;--resident-y: 52%;--resident-w: 18%}.home-loading{position:absolute;z-index:15;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;align-content:center;gap:7px;color:#fff;background:#26142c7a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:10px;letter-spacing:.12em}.home-live-caption{min-height:61px;display:flex;align-items:center;gap:11px;padding:9px 14px 0;color:#f8d9e4}.home-live-caption div{flex:1;display:grid;gap:2px}.home-live-caption strong{font:600 12px var(--serif)}.home-live-caption span{color:#fff1f69e;font-size:8px}.presence-editor{margin-top:22px;padding:24px}.presence-editor>header{display:flex;align-items:center;justify-content:space-between;gap:18px}.presence-editor h2{margin:4px 0 0;font-family:var(--serif);font-size:22px}.presence-editor header p,.wheel-ai-panel footer p{display:flex;align-items:center;gap:5px;margin:0;font-size:9px}.success-text{color:#7c8f68}.error-text{color:#b84869}.presence-member-tabs{display:flex;gap:7px;margin:20px 0 13px}.presence-member-tabs button{min-height:34px;padding:0 18px;color:#956273;background:#f9e9ee;border-radius:999px;font-size:10px}.presence-member-tabs button.active{color:#fff;background:#b85d7d;box-shadow:0 7px 18px #a6486833}.presence-state-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px}.presence-state-grid>button{min-width:0;padding:9px 6px 10px;display:grid;justify-items:center;gap:4px;color:#865767;background:snow;border:1px solid rgba(169,86,116,.1);border-radius:15px}.presence-state-grid>button.active{color:#9c4868;border-color:#be547b8c;background:#fbe8ee;box-shadow:inset 0 0 0 2px #d5698f21;transform:translateY(-2px)}.presence-state-grid strong{overflow:hidden;max-width:100%;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.presence-state-grid small{min-height:24px;color:#a9808b;font-size:6.5px;line-height:1.45}.state-thumb{width:58px;height:58px;display:block;background-repeat:no-repeat;background-size:300% 300%;filter:drop-shadow(0 5px 4px rgba(84,40,57,.16))}.state-thumb.member-one{background-image:url(/assets/status-home/girl-states-v6.png)}.state-thumb.member-partner{background-image:url(/assets/status-home/boy-states-v6.png)}.state-thumb.frame-entertainment{background-position:0 0}.state-thumb.frame-resting{background-position:50% 0}.state-thumb.frame-working{background-position:100% 0}.state-thumb.frame-eating{background-position:0 50%}.state-thumb.frame-cooking{background-position:50% 50%}.state-thumb.frame-exercise{background-position:100% 50%}.state-thumb.frame-chores{background-position:0 100%}.state-thumb.frame-out{background-position:50% 100%}.state-thumb.frame-available{background-position:100% 100%}.presence-note-row{margin-top:17px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:12px}.presence-note-row label{display:grid;gap:7px;color:#8e6070;font-size:9px}.presence-note-row input{height:42px}@keyframes resident-breathe{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.012)}}.wheel-layout{display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(330px,.8fr);gap:20px;align-items:stretch}.wheel-stage.panel{position:relative;min-height:650px;padding:30px 30px 96px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(#fff6f314,#6629411a),var(--theme-wheel-stage,url(/assets/date-wheel-stage-v2.webp)) center/cover no-repeat;border-color:#d89e9d94;box-shadow:0 30px 80px #69324633,inset 0 0 50px #fffaf052}.wheel-stage:before,.wheel-stage:after{content:"";position:absolute;z-index:1;border-radius:50%;pointer-events:none}.wheel-stage:before{top:7%;right:9%;bottom:16%;left:9%;background:radial-gradient(circle,rgba(255,251,236,.78),rgba(255,222,226,.26) 45%,transparent 72%);filter:blur(5px);animation:wheelAura 4.8s ease-in-out infinite alternate}.wheel-stage:after{left:50%;top:45%;width:min(565px,91%);aspect-ratio:1;border:1px solid rgba(255,236,197,.5);box-shadow:0 0 0 8px #ffffff14,0 0 75px #ffdac46b;transform:translate(-50%,-50%)}.wheel-rotor{position:relative;z-index:2;width:min(540px,88%);aspect-ratio:1;overflow:hidden;border:1px solid rgba(255,241,212,.82);border-radius:50%;will-change:transform;filter:drop-shadow(0 30px 38px rgba(83,31,52,.3)) drop-shadow(0 0 15px rgba(255,224,185,.58))}.wheel-rotor.spinning{transition:transform 6.8s cubic-bezier(.1,.72,.09,1)}.wheel-art-face,.wheel-rotor canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;border-radius:50%}.wheel-art-face{z-index:0;object-fit:cover;-webkit-user-select:none;user-select:none}.wheel-rotor canvas{z-index:1}.wheel-hub{position:absolute;z-index:3;left:50%;top:50%;width:90px;height:90px;display:grid;place-items:center;align-content:center;color:#8d3657;background:radial-gradient(circle at 35% 25%,#fffef4,#f9dfdf 54%,#e4a6ae);border:5px solid #f6d59c;outline:2px solid rgba(144,57,72,.6);border-radius:50%;box-shadow:0 9px 25px #561f3052,inset 0 0 0 4px #ffffffb3,inset 0 -7px 12px #ac50642e;transform:translate(-50%,-50%)}.wheel-hub span{margin-top:2px;font:700 12px Georgia,serif}.wheel-hub small{font-size:6px;letter-spacing:.16em}.wheel-pointer{position:absolute;z-index:5;left:50%;top:14px;width:58px;height:82px;transform:translate(-50%);filter:drop-shadow(0 9px 9px rgba(83,31,51,.34))}.wheel-pointer:before{content:"";position:absolute;z-index:2;left:7px;right:7px;top:0;height:44px;background:radial-gradient(circle at 34% 28%,#fff4ce 0,#fff4ce 8%,#ecabc0 11%,#ecabc0 32%,#9e345b 58%,#5d1838);border:4px double #f4ce91;border-radius:50% 50% 47% 47%;box-shadow:inset 0 0 0 3px #ffffff59,0 0 18px #ffd7b58c}.wheel-pointer i{position:absolute;z-index:1;left:17px;top:34px;width:24px;height:39px;background:linear-gradient(90deg,#b8686c,#f6d69b 46%,#a74d5f);clip-path:polygon(0 0,100% 0,50% 100%)}.wheel-pointer i:after{content:"";position:absolute;left:50%;top:5px;width:6px;height:25px;background:#fff9dcb8;clip-path:inherit;transform:translate(-50%)}.wheel-spin-button{position:absolute;z-index:6;left:50%;bottom:25px;min-width:184px;height:52px;display:flex;align-items:center;justify-content:center;gap:8px;color:#fffaf0;background:linear-gradient(135deg,#b44468,#792d52 55%,#a94b68);border:1px solid rgba(255,227,184,.72);border-radius:999px;box-shadow:0 15px 32px #66233e5c,inset 0 1px #ffffff4d;transform:translate(-50%);font-size:11px;font-weight:700;letter-spacing:.08em}.wheel-spin-button:before{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1px solid rgba(255,239,206,.25);border-radius:inherit;pointer-events:none}.wheel-spin-button:not(:disabled):hover{box-shadow:0 18px 38px #66233e70,0 0 22px #ffd0b461,inset 0 1px #ffffff59;transform:translate(-50%) translateY(-2px)}.wheel-spin-button:disabled{opacity:.8}.wheel-spin-button svg{width:18px}.wheel-side{min-height:650px;padding:22px 18px;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(165deg,#fffcf6f5,#fae7ece6);border-color:#dfb7b3b3}.wheel-meta{display:flex;align-items:center;gap:7px;color:#a47483;font-size:8px}.wheel-result,.wheel-waiting{position:relative;margin:15px 0;min-height:150px;padding:21px;display:grid;place-items:start;align-content:center;gap:8px;overflow:hidden;border:1px solid rgba(223,175,165,.58);border-radius:19px;background:radial-gradient(circle at 15% 10%,rgba(255,255,255,.9),transparent 42%),linear-gradient(135deg,#fff0ec,#f2d4df);box-shadow:inset 0 0 30px #ffffff75}.wheel-result h2,.wheel-waiting h2{margin:0;color:#773f55;font:700 24px/1.25 var(--serif)}.wheel-result p,.wheel-waiting p{margin:0;color:#8f6573;font-size:10px;line-height:1.7}.wheel-result small{color:#b47a8d;font-size:7px}.wheel-waiting{place-items:center;text-align:center;color:#bb6d89}.wheel-waiting h2{font-size:19px}.wheel-option-list{min-height:0;overflow-y:auto;display:grid;align-content:start;gap:7px;padding-right:4px}.wheel-option-list>div{display:grid;grid-template-columns:9px 1fr;gap:9px;padding:9px 10px;color:#80515f;background:snow;border:1px solid rgba(169,87,116,.08);border-radius:12px}.wheel-option-list.editable>div{grid-template-columns:9px minmax(0,1fr) auto}.wheel-option-list>div.chosen{background:#fae0e9;border-color:#c1507859;transform:translate(-3px)}.wheel-option-list>div>i{width:8px;height:8px;margin-top:3px;border-radius:50%}.wheel-option-list>div>span{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:2px 7px;align-items:center}.wheel-option-list strong{min-width:0;font-size:9px}.wheel-option-list b{min-width:18px;color:#b0617c;font:700 8px Georgia,serif}.wheel-option-list small{grid-column:1/-1;color:#a07a84;font-size:7px;line-height:1.45}.wheel-hit-count{grid-column:3;color:#bb6d89;font:700 8px Georgia,serif;font-style:normal;white-space:nowrap}.wheel-option-list:not(.numbered) strong{grid-column:1/3}.wheel-option-list:not(.numbered) .wheel-hit-count{grid-column:3}.wheel-delete-option{align-self:center;width:28px;height:28px;display:grid;place-items:center;color:#ad526e;background:#fae7ed;border-radius:8px}.wheel-delete-option:disabled{opacity:.42}.wheel-delete-option:not(:disabled):hover{color:#fff;background:#b94b6c}.wheel-ai-panel{margin-top:20px;padding:25px}.wheel-ai-panel>header{display:flex;align-items:flex-start;gap:13px}.wheel-ai-panel>header>svg{flex:0 0 auto;margin-top:3px;color:#b85b7c}.wheel-ai-panel h2{margin:3px 0 5px;font:700 21px var(--serif)}.wheel-ai-panel header p{margin:0;color:#9d7782;font-size:9px}.wheel-ai-panel>label{margin-top:18px;display:grid;gap:8px;color:#8c5d6d;font-size:9px}.wheel-ai-panel textarea{resize:vertical;min-height:100px}.wheel-ai-panel>footer{margin-top:12px;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:15px}.wheel-ai-panel>footer p{max-width:68%;line-height:1.5}.wheel-stage .wheel-rotor.spinning .wheel-art-face{filter:saturate(1.08) brightness(1.03)}@keyframes wheelAura{0%{opacity:.62;transform:scale(.97)}to{opacity:.92;transform:scale(1.04)}}@media(max-width:1120px){.presence-state-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.wheel-layout{grid-template-columns:1fr}.wheel-side{min-height:420px;max-height:620px}}@media(max-width:780px){.topbar-actions{overflow:hidden}.global-search-trigger{width:36px;height:36px;padding:0;justify-content:center}.global-search-trigger span,.global-search-trigger kbd{display:none}.search-backdrop{padding:4vh 9px 15px}.global-search-panel{max-height:91vh;border-radius:20px}.search-results>button>span{padding-right:0}.search-results>button>u{display:none}.little-home-shell.panel{padding:5px}.little-home-stage{border-radius:15px}.resident-card{min-width:92px;max-width:120px;padding:5px 7px}.resident-card span,.resident-card p,.resident-card small{display:none}.resident-card strong{font-size:9px;text-align:center}.home-live-caption{min-height:52px}.home-live-caption span{display:none}.presence-editor{padding:18px 13px}.presence-editor>header{align-items:flex-start;flex-direction:column}.presence-state-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.state-thumb{width:52px;height:52px}.presence-note-row{grid-template-columns:1fr}.presence-note-row .button{width:100%}.wheel-stage.panel{min-height:470px;padding:45px 10px 88px}.wheel-rotor{width:min(390px,92%)}.wheel-pointer{top:21px;transform:translate(-50%) scale(.8);transform-origin:top center}.wheel-hub{width:70px;height:70px}.wheel-side{min-height:380px}.wheel-ai-panel{padding:19px 14px}.wheel-ai-panel>footer{align-items:stretch;flex-direction:column}.wheel-ai-panel>footer p{max-width:none}.wheel-ai-panel .button{width:100%}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:#f9eeee}button,input,textarea,select{font:inherit;color:inherit}button{border:0}button,a,label{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #b54c68;outline-offset:3px}@media(pointer:fine){.heart-cursor-enabled,.heart-cursor-enabled *,.heart-cursor-enabled *:before,.heart-cursor-enabled *:after{cursor:none!important}.heart-cursor-enabled.native-browser-dialog-open,.heart-cursor-enabled.native-browser-dialog-open *,.heart-cursor-enabled.native-browser-dialog-open *:before,.heart-cursor-enabled.native-browser-dialog-open *:after{cursor:default!important}.native-browser-dialog-open .heart-cursor,.native-browser-dialog-open .cursor-dot{visibility:hidden!important}}.app{min-height:100vh;background-image:linear-gradient(#fff9f7d6,#fff9f7e0),var(--page-background);background-size:cover;background-position:center;background-attachment:fixed}.site-width{width:min(1280px,calc(100% - 64px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hidden-input{display:none}.topbar{position:fixed;z-index:100;inset:0 0 auto;height:76px;border-bottom:1px solid rgba(117,59,75,.12);background:#fff8f6d1;-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);transition:height .26s ease,background .3s ease,border-color .3s ease,box-shadow .26s ease}.page-home .topbar{color:#fff8f7;background:linear-gradient(to bottom,#351b2275,#351b221f);border-bottom-color:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar-inner{height:100%;display:grid;grid-template-columns:minmax(190px,230px) minmax(0,1fr);align-items:center;gap:14px;transition:opacity .2s ease,transform .26s ease,visibility .2s ease}.topbar-inner.site-width{width:min(1480px,calc(100% - 40px))}.topbar-toggle{position:absolute;left:50%;top:100%;z-index:140;height:21px;min-width:82px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:4px;color:#8e445c;background:#fffaf8f0;border:1px solid rgba(150,75,96,.18);border-radius:0 0 999px 999px;box-shadow:0 8px 20px #4b23301f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transform:translate(-50%,var(--topbar-pull-distance, 0px));font-size:9px;line-height:1;white-space:nowrap;transition:color .2s ease,background .2s ease,border-color .2s ease,opacity .2s ease,transform .2s ease}.topbar-toggle:hover{color:#743046;background:#fffffffa}.topbar-toggle svg{flex:0 0 auto;transition:transform .22s ease}.topbar-expanded .topbar-toggle svg{transform:rotate(180deg)}.topbar-expanded .topbar-toggle{touch-action:none;user-select:none;-webkit-user-select:none}.topbar-toggle.pulling{transition:color .2s ease,background .2s ease,border-color .2s ease,opacity .2s ease,transform .04s linear}.topbar-toggle.refresh-ready{color:#fff;background:#ac3d5bf0;border-color:#ffffff6b}.topbar-toggle.refreshing svg{animation:topbar-refresh-spin .7s linear infinite}@keyframes topbar-refresh-spin{to{transform:rotate(540deg)}}.page-home .topbar-toggle{color:#fff8f7;background:#48222d61;border-color:#ffffff3d;box-shadow:0 9px 24px #24121929}.page-home .topbar-toggle:hover{background:#48222d85}.app.topbar-collapsed .topbar{height:0;background:transparent;border-bottom-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.app.topbar-collapsed .topbar-inner{visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-18px)}.app.topbar-collapsed .topbar-toggle{color:#8b435a;background:#fffaf8f5;border-color:#91495d2e;border-radius:0 0 999px 999px;box-shadow:0 8px 22px #481f2d24}.app.topbar-collapsed .topbar-toggle:hover{color:#6f2d45;background:#fff}.app.topbar-collapsed .page{padding-top:78px}.app.topbar-collapsed .hero-content{padding-top:22px}.app.topbar-collapsed.admin-mode .admin-message-center{top:35px}@media(max-width:780px){.topbar-toggle{left:max(12px,env(safe-area-inset-left));right:auto;transform:translateY(var(--topbar-pull-distance, 0px))}}.brand{display:inline-flex;align-items:center;gap:12px;color:inherit;background:transparent;padding:0;text-align:left;text-decoration:none}.portal-switch{width:fit-content;transition:opacity .2s ease,transform .2s ease}.portal-switch:hover{opacity:.84;transform:translateY(-1px)}.brand>span:last-child{display:grid;gap:2px}.brand strong{font-family:var(--serif);font-size:16px;letter-spacing:.08em;font-weight:700}.brand small{font-family:Georgia,serif;font-size:9px;letter-spacing:.16em;text-transform:uppercase;opacity:.7}.brand-mark{position:relative;display:inline-grid;place-items:center;width:33px;height:33px;border:1px solid currentColor;border-radius:50%;color:var(--rose-700)}.page-home .brand-mark{color:#fff5f3}.brand-mark i,.brand-mark i:before,.brand-mark i:after{display:block;position:absolute;width:8px;height:8px;background:currentColor}.brand-mark i{transform:rotate(45deg)}.brand-mark i:before,.brand-mark i:after{content:"";border-radius:50%}.brand-mark i:before{left:-4px}.brand-mark i:after{top:-4px}.brand-switch-badge{position:absolute;right:-5px;bottom:-5px;width:17px;height:17px;display:grid;place-items:center;color:#fff;background:var(--rose-700);border:2px solid #fff8f6;border-radius:50%;box-shadow:0 3px 8px #461f2b33}.page-home .brand-switch-badge{color:var(--rose-800);background:#fff7f2;border-color:#6f32446b}.brand-mark.mini{width:28px;height:28px}.topbar nav{min-width:0;width:100%;justify-self:stretch;justify-content:flex-end;display:flex;align-items:center;height:100%;gap:3px;overflow:hidden}.topbar nav button,.topbar nav .tool-station-nav-entry{position:relative;flex:0 0 auto;height:100%;display:flex;align-items:center;gap:6px;padding:0 11px;background:transparent;color:inherit;opacity:.66;white-space:nowrap;transition:opacity .2s ease,transform .2s ease}.topbar nav button:hover,.topbar nav button.active,.topbar nav .tool-station-nav-entry:hover{opacity:1}.topbar nav .tool-station-nav-entry{color:inherit;text-decoration:none}.topbar nav button.single-game-nav-placeholder{cursor:default}.topbar nav button.active:after{content:"";position:absolute;left:18px;right:18px;bottom:0;height:2px;background:currentColor;border-radius:4px}.debug-admin-entry{position:fixed;z-index:92;right:22px;bottom:22px;display:inline-flex;align-items:center;gap:7px;min-height:39px;padding:0 14px;color:#fff;background:#6c2a3eeb;border:1px solid rgba(255,255,255,.24);border-radius:999px;box-shadow:0 12px 32px #481e2b3d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:10px;letter-spacing:.05em}.page-home .debug-admin-entry{bottom:84px}.debug-admin-entry.public-entry{background:#5b4376e6}.admin-message-center{position:fixed;z-index:120;top:87px;right:22px;transition:top .26s ease}.sync-status{position:relative;display:flex;align-items:center;margin-left:auto;padding:8px 11px;color:#77505c;white-space:nowrap;background:#fffaf8e0;border:1px solid rgba(155,82,102,.16);border-radius:999px;box-shadow:0 8px 24px #46222d1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:9px;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.sync-status:hover,.sync-status[aria-expanded=true]{color:#683a49;background:#fffdfbf7;border-color:#9b52664d;box-shadow:0 10px 28px #46222d26}.online-member-wrap,.member-online-status{display:inline-flex;align-items:center}.member-online-status{gap:4px}.member-online-status i{width:6px;height:6px;border-radius:50%;background:#9a7280;box-shadow:0 0 0 3px #9a72801f}.member-online-status.online i{background:#5f9874;box-shadow:0 0 0 3px #5f987421}.member-online-status.offline{color:#9b8790}.member-online-status strong{overflow:hidden;max-width:36px;text-overflow:ellipsis}.online-divider{margin:0 6px;color:#b8a1aa;font-weight:400}.sync-status.saving,.sync-status.loading{border-color:#c28a4f52;animation:lensPulse 1.2s ease-in-out infinite}.sync-status.error{border-color:#bf52636b}.message-center-panel{position:absolute;top:calc(100% + 10px);right:0;width:min(380px,calc(100vw - 44px));max-height:calc(100vh - 142px);display:flex;flex-direction:column;overflow:hidden;color:#68414d;background:#fffcf9f7;border:1px solid rgba(148,78,98,.18);border-radius:18px;box-shadow:0 22px 60px #3a1b2638;-webkit-backdrop-filter:blur(18px) saturate(1.08);backdrop-filter:blur(18px) saturate(1.08);animation:messageCenterIn .2s ease-out}.admin-message-center.super-admin .message-center-panel{width:min(740px,calc(100vw - 44px))}.message-center-header{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 15px 12px 18px;border-bottom:1px solid rgba(149,83,101,.12);background:linear-gradient(135deg,#fff4f2db,#fffcf999)}.message-center-header>div:first-child{min-width:0;display:grid;gap:4px}.message-center-header>div:first-child>span{display:flex;align-items:center;gap:6px;color:#ad6b7f;font:700 7px/1.2 Georgia,serif;letter-spacing:.15em}.message-center-header h2{margin:0;color:#6e394a;font:700 18px/1.15 var(--serif);letter-spacing:.05em}.message-center-actions{display:flex;gap:5px}.message-center-actions button{width:31px;height:31px;display:grid;place-items:center;color:#95586b;background:#ffffffb8;border:1px solid rgba(151,84,103,.14);border-radius:50%}.message-center-actions button:hover{color:#74374c;background:#fff;border-color:#97546745}.message-center-actions button:disabled{opacity:.55}.message-center-groups{min-height:0;display:grid;grid-template-columns:1fr;gap:10px;padding:12px;overflow:auto}.admin-message-center.super-admin .message-center-groups{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.message-member-group{min-width:0;padding:10px;background:#fff7f5b3;border:1px solid rgba(156,91,108,.12);border-radius:13px}.message-member-group>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:1px 2px 9px}.message-member-group>header>div{min-width:0;display:flex;align-items:center;gap:4px;font-size:9px}.message-member-group>header i{width:6px;height:6px;flex:0 0 auto;background:#a48690;border-radius:50%;box-shadow:0 0 0 3px #a486901a}.message-member-group>header i.online{background:#5f9874;box-shadow:0 0 0 3px #5f98741f}.message-member-group>header strong{max-width:80px;overflow:hidden;color:#743b4d;text-overflow:ellipsis;white-space:nowrap}.message-member-group>header span{color:#a27c87}.message-member-group>header small{color:#ad8b94;font:700 8px/1 monospace}.message-card-list{display:grid;gap:7px}.message-card{width:100%;min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:8px;padding:10px;color:#815464;background:#ffffffe0;border:1px solid rgba(150,86,104,.11);border-radius:11px;text-align:left;box-shadow:0 5px 14px #49242f0b;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.message-card:hover{transform:translateY(-1px);border-color:#994b6340;box-shadow:0 8px 18px #49242f17}.message-card.kind-secret-plan{border-style:dashed;background:#fff9efed}.message-card.kind-anniversary{background:#fff6f8f0}.message-card.kind-plan-due,.message-card.kind-anniversary-due{border-color:#b54d694d;background:linear-gradient(135deg,#ffeff2fa,#fffaf4f5);box-shadow:inset 3px 0 #b5506a,0 7px 18px #672a3c14}.message-card.kind-plan-due .message-card-icon,.message-card.kind-anniversary-due .message-card-icon{color:#fff9f6;background:linear-gradient(135deg,#bc5972,#91445b)}.message-card.kind-quick-report{background:#fff8ebf2}.message-card-icon{width:30px;height:30px;display:grid;place-items:center;color:#a24f69;background:#f9e7eb;border-radius:9px}.message-card.kind-secret-plan .message-card-icon{color:#9c6b31;background:#f8ecd5}.message-card.kind-quick-report .message-card-icon{color:#a56531;background:#fff0d6}.message-card-copy{min-width:0;display:grid;gap:5px}.message-card-copy>span{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px}.message-card-copy strong{min-width:0;overflow:hidden;color:#6f3c4c;font-size:9px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.message-card-copy time{color:#b0959d;font-size:7px;line-height:1.6;white-space:nowrap}.message-card-copy small{display:-webkit-box;overflow:hidden;color:#9a7b85;font-size:8px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.message-member-empty,.message-center-loading{min-height:92px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#ad919a;font-size:9px}.message-center-loading{min-height:180px}.message-center-error{margin:12px;padding:16px;display:grid;justify-items:center;gap:9px;color:#9e485f;background:#fff1f2;border:1px solid #f0d1d8;border-radius:12px;font-size:9px;text-align:center}.message-center-error button{padding:6px 12px;color:#8b4358;background:#fff;border:1px solid #e6c1ca;border-radius:999px}.message-center-footer{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 15px;color:#ad9199;border-top:1px solid rgba(149,83,101,.1);font-size:7px}.message-center-footer time{white-space:nowrap}@keyframes messageCenterIn{0%{opacity:0;transform:translateY(-6px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.heart-cursor,.cursor-dot{display:none}@media(pointer:fine){.heart-cursor{display:block;position:fixed;z-index:2147483647;left:-10px;top:-10px;width:20px;height:20px;pointer-events:none;opacity:0;transition:opacity .2s ease;mix-blend-mode:multiply}.heart-cursor i,.heart-cursor i:before,.heart-cursor i:after{position:absolute;display:block;width:12px;height:12px;background:#ba405f}.heart-cursor i{left:4px;top:4px;transform:rotate(45deg);animation:heartbeat .92s cubic-bezier(.2,.7,.3,1) infinite;filter:drop-shadow(0 2px 4px rgba(120,31,55,.3))}.heart-cursor i:before,.heart-cursor i:after{content:"";border-radius:50%}.heart-cursor i:before{left:-6px}.heart-cursor i:after{top:-6px}.cursor-dot{display:block;position:fixed;z-index:2147483646;left:-18px;top:-18px;width:36px;height:36px;border:1px solid rgba(181,65,94,.34);border-radius:50%;pointer-events:none;transition:transform .08s linear}}@keyframes heartbeat{0%,38%,to{transform:rotate(45deg) scale(.82)}12%{transform:rotate(45deg) scale(1.12)}24%{transform:rotate(45deg) scale(.93)}}.button{min-height:45px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 19px;border-radius:99px;font-weight:650;font-size:14px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button.primary{color:#fff;background:var(--rose-800);box-shadow:0 11px 24px #7b2f4536}.button.primary:hover{background:var(--rose-950);box-shadow:0 14px 30px #7b2f4547}.button.subtle{color:var(--rose-800);background:#f9e6e9;border:1px solid rgba(152,63,86,.12);box-shadow:none}.button.glass{color:#fff;border:1px solid rgba(255,255,255,.44);background:#ffffff1f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero{position:relative;height:max(720px,100vh);min-height:720px;overflow:hidden;color:#fffaf7;background:#4d2934}.hero-image-layer{position:absolute;top:0;right:0;bottom:0;left:0}.hero-image-layer img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-base{z-index:0}.hero-wash{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,#2c171db3,#41232b59 46%,#301c231f 72%),linear-gradient(0deg,rgba(40,24,30,.64) 0%,transparent 34%,rgba(40,24,30,.11) 100%)}.hero-content{position:relative;z-index:4;height:100%;padding-top:76px;display:grid;grid-template-columns:1fr 360px;align-items:center;gap:9vw;pointer-events:none}.hero-content a,.hero-content button,.hero-content input,.hero-content select,.hero-content textarea,.hero-content [role=button]{pointer-events:auto}.hero-copy{max-width:660px;padding-top:20px}.hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:22px;font:600 11px/1 Georgia,serif;letter-spacing:.22em;text-transform:uppercase;color:#f3c5ce}.hero-kicker .line{width:42px;height:1px;background:currentColor}.hero-page-turn{min-height:350px;animation:pageReveal .7s cubic-bezier(.2,.75,.25,1) both;transform-origin:left center}.hero-page-turn .page-index{margin:0 0 10px;font:italic 12px/1 Georgia,serif;letter-spacing:.12em;color:#ffffffa6}.hero-page-turn h1{margin:0;font:700 clamp(45px,5.4vw,78px)/1.14 var(--serif);letter-spacing:.015em;text-shadow:0 4px 34px rgba(34,18,23,.22)}.hero-page-turn h1 span{display:block}.hero-page-turn>p:not(.page-index){max-width:540px;margin:24px 0 0;font:400 15px/2 var(--serif);letter-spacing:.08em;color:#fffaf7c7}.hero-weather-forecast{width:min(560px,100%);margin-top:15px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.hero-weather-forecast>div{min-width:0;padding:9px 10px 8px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:#3f232b3d;box-shadow:inset 0 1px #ffffff14;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-weather-forecast span{display:flex;align-items:baseline;justify-content:space-between;gap:4px;font:600 11px/1.2 var(--serif);color:#fff9f6}.hero-weather-forecast span small{overflow:hidden;font:400 8px/1 Georgia,serif;color:#ffffff8c;text-overflow:ellipsis}.hero-weather-forecast strong{display:block;overflow:hidden;margin-top:6px;font:500 10px/1.25 var(--serif);color:#fffaf7d1;text-overflow:ellipsis;white-space:nowrap}.hero-weather-forecast em{display:block;margin-top:4px;font:600 11px/1 Georgia,serif;color:#f6ccd5}.hero-actions{display:flex;gap:12px;margin-top:10px}.hero-actions .button{min-height:49px;padding-inline:23px}.hero-actions .button.primary{background:#fff7f3;color:#773145}.hero-book{align-self:center;transform:translateY(13px)}.book-page{position:relative;min-height:390px;padding:48px 38px 34px;color:#613646;background:#fff8f2e8;box-shadow:0 28px 65px #1b0c113d;border-radius:2px 22px 22px 2px;border-left:8px solid rgba(89,37,51,.32);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:bookTurn .7s cubic-bezier(.15,.7,.3,1) both;transform-origin:left center}.book-page:after{content:"";position:absolute;right:0;bottom:0;width:42px;height:42px;background:linear-gradient(135deg,#d2aba314 50%,#74464933 51%,#fffbf5e6 54%);border-radius:0 0 20px}.book-mark{position:absolute;right:33px;top:-8px;width:32px;height:55px;padding-top:19px;display:flex;justify-content:center;color:#fff;background:#9a3c57;clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%)}.book-page .overline{color:#9f596d}.book-page>strong{display:block;margin-top:34px;font:italic 82px/1 Georgia,serif;color:#713647;letter-spacing:-.05em}.book-page>p{margin:9px 0 25px;font:600 14px/1.6 var(--serif);letter-spacing:.12em}.book-rule{width:100%;height:1px;background:linear-gradient(90deg,rgba(128,62,78,.4),transparent)}.book-page dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0}.book-page dl div{display:grid;gap:6px}.book-page dt{font-size:11px;color:#9a7780}.book-page dd{margin:0;font:24px/1 Georgia,serif}.book-page small{position:absolute;left:38px;bottom:28px;font:italic 11px/1 Georgia,serif;color:#a07a84;letter-spacing:.1em}.book-controls{margin-top:17px;display:flex;align-items:center;justify-content:space-between}.book-controls>button{width:38px;height:38px;display:grid;place-items:center;color:#fff;background:#ffffff24;border:1px solid rgba(255,255,255,.26);border-radius:50%}.book-controls>div{display:flex;gap:8px}.book-controls>div button{width:18px;height:2px;padding:0;background:#ffffff59;transition:width .2s ease,background .2s ease}.book-controls>div button.active{width:38px;background:#fff}.hero-bottom{position:absolute;z-index:20;left:50%;bottom:22px;transform:translate(-50%);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;padding-top:13px;border-top:1px solid rgba(255,255,255,.2);font:11px/1.4 var(--serif);letter-spacing:.1em;color:#ffffffa6}.hero-bottom>span{justify-self:start}.hero-bottom>button{display:none}.hero-bottom .home-filing{gap:3px;color:#ffffffb8;letter-spacing:.04em}.hero-bottom .home-filing a{font-size:8px;text-shadow:0 1px 8px rgba(31,12,18,.45)}.hero-bottom .home-filing img{position:relative;z-index:1;isolation:isolate}.home-music-player{justify-self:end;min-width:240px;max-width:min(330px,36vw);min-height:46px;display:grid;grid-template-columns:31px minmax(0,1fr) 32px 32px;align-items:center;gap:7px;padding:6px 7px;color:#fff;background:#2c141e57;border:1px solid rgba(255,255,255,.22);border-radius:999px;box-shadow:0 11px 28px #1e0c1426;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:0;font-family:var(--sans)}.home-music-icon{width:31px;height:31px;display:grid;place-items:center;color:#7a3148;background:#fff8f4f0;border-radius:50%}.home-music-copy{min-width:0;display:grid;gap:1px;text-align:left}.home-music-copy small{color:#ffffffa8;font-size:8px;letter-spacing:.1em}.home-music-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:11px;font-weight:700;letter-spacing:0}.home-music-player button{width:32px;height:32px;display:grid;place-items:center;color:#fff;background:#ffffff24;border:1px solid rgba(255,255,255,.22);border-radius:50%}.home-music-player button:hover:not(:disabled){background:#ffffff3d}.home-music-player button:disabled{opacity:.38;cursor:not-allowed}@keyframes pageReveal{0%{opacity:0;transform:perspective(800px) rotateY(-9deg) translate(-18px)}to{opacity:1;transform:perspective(800px) rotateY(0) translate(0)}}@keyframes bookTurn{0%{opacity:.35;transform:perspective(900px) rotateY(-25deg)}to{opacity:1;transform:perspective(900px) rotateY(0)}}@keyframes lensPulse{0%,to{opacity:.58;transform:scale(.72)}50%{opacity:1;transform:scale(1.15)}}.page{min-height:calc(100vh - 76px);padding-top:132px;padding-bottom:72px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.page-heading>div{max-width:720px}.overline{display:block;margin-bottom:10px;color:var(--rose-700);font:700 10px/1 Georgia,serif;letter-spacing:.22em}.page-heading h1{margin:0;color:var(--rose-950);font:700 clamp(36px,4vw,56px)/1.18 var(--serif);letter-spacing:.02em}.page-heading p{margin:14px 0 0;color:var(--muted);line-height:1.85;font-size:14px}.heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.map-mode-switch{display:flex;padding:4px;background:#fffaf8e0;border:1px solid var(--border);border-radius:999px;box-shadow:0 8px 22px #522a3614}.map-mode-switch button{min-height:38px;padding:0 15px;color:#99747e;background:transparent;border-radius:999px;font-size:10px;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.map-mode-switch button.active{color:#fff;background:var(--rose-700);box-shadow:0 7px 16px #87364d2e}.panel{background:var(--paper);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:22px;overflow:hidden;background:#fffaf7a6;border:1px solid var(--border);border-radius:16px}.stat-strip>div{display:flex;align-items:center;gap:15px;min-height:94px;padding:19px 28px;border-right:1px solid var(--border);color:var(--rose-700)}.stat-strip>div:last-child{border-right:0}.stat-strip p{display:grid;gap:4px;margin:0}.stat-strip strong{color:var(--rose-950);font:30px/1 Georgia,serif}.stat-strip span{color:var(--muted);font-size:12px}.travel-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.65fr);gap:22px;min-height:620px}.map-card{position:relative;overflow:hidden;min-height:620px}.map-shell{position:relative;width:100%;height:100%;min-height:620px;background:radial-gradient(circle at center,#ffffffbf,#f8e0e37a)}.china-map{position:absolute;top:0;right:0;bottom:0;left:0}.map-search{position:absolute;z-index:5;left:21px;top:20px;width:min(330px,calc(100% - 42px));height:45px;display:flex;align-items:center;gap:9px;padding-left:15px;color:var(--rose-700);background:#fffdfaf0;box-shadow:0 10px 28px #5a2b381f;border:1px solid var(--border);border-radius:13px}.map-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:13px}.map-search button{align-self:stretch;padding:0 14px;color:#fff;background:var(--rose-700);border-radius:0 12px 12px 0;font-size:12px}.map-search button:disabled{opacity:.48}.map-cascade{width:min(590px,calc(100% - 225px))}.map-cascade select{min-width:0;height:100%;flex:.9;padding:0 8px;border:0;border-left:1px solid var(--border);outline:0;background:transparent;font-size:12px}.map-cascade select:nth-of-type(2){flex:1.25}.map-cascade select:disabled{color:#b9a0a7}.map-tools{position:absolute;z-index:5;right:19px;top:20px;display:flex;align-items:center;height:39px;overflow:hidden;color:var(--rose-800);background:#fffdfaed;border:1px solid var(--border);border-radius:11px;box-shadow:0 8px 22px #5a2b381a}.map-tools button{width:37px;height:39px;display:grid;place-items:center;background:transparent;border-right:1px solid var(--border)}.map-tools button:last-child{border:0;border-left:1px solid var(--border)}.map-tools span{min-width:70px;display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px}.map-hint{position:absolute;z-index:4;left:50%;bottom:13px;transform:translate(-50%);width:max-content;max-width:calc(100% - 30px);margin:0;padding:7px 12px;color:#865665;background:#fffcf9c7;border-radius:99px;font-size:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.amap-shell{position:relative;width:100%;height:100%;min-height:620px;overflow:hidden;background:#f5e9e8}.mobile-page-scroller{display:none}.amap-map{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.amap-cover{position:absolute;z-index:8;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:32px;color:#9f6677;text-align:center;background:radial-gradient(circle at 50% 45%,#fffaf8f5,#f7e2e6f5)}.amap-cover strong{color:var(--ink);font:700 20px/1.4 var(--serif)}.amap-cover p{max-width:460px;margin:0;color:var(--muted);font-size:11px;line-height:1.7}.amap-cover a{margin-top:4px;padding:8px 12px;color:#fff;background:var(--rose-700);border-radius:999px;font-size:10px}.amap-pin-marker{position:relative;width:30px;height:30px;display:grid;place-items:center;background:#a93454;border:3px solid #fff7f4;border-radius:50% 50% 50% 8px;box-shadow:0 8px 18px #792b4152;transform:rotate(-45deg)}.amap-pin-marker i{width:8px;height:8px;background:#fff;border-radius:50%}.amap-pin-marker.selected{background:#7f1738;border-color:#fff;box-shadow:0 0 0 6px #cc517438,0 10px 24px #792b4175}.amap-info-card{min-width:205px;display:grid;gap:5px;padding:3px 2px;color:#6c3d4b}.amap-info-card strong{font:700 15px/1.3 var(--serif)}.amap-info-card span{color:#985267;font-size:11px}.amap-info-card small{color:#937680;line-height:1.5}.amap-info-card code{color:#725363;font-size:9px}.amap-precision-tools{position:absolute;z-index:6;left:16px;top:16px;display:flex;align-items:center;gap:5px;padding:6px;color:#7c4b5a;background:#fffcf9f0;border:1px solid rgba(226,190,198,.9);border-radius:13px;box-shadow:0 10px 28px #53273424;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.amap-precision-tools>div{display:flex;align-items:center;gap:5px;padding:0 6px;font-size:9px;white-space:nowrap}.amap-precision-tools button{min-height:31px;padding:0 10px;color:#8d6370;background:#fff7f5;border-radius:8px;font-size:9px;white-space:nowrap}.amap-precision-tools button:hover,.amap-precision-tools button.active{color:#fff;background:var(--rose-700)}.amap-precision-tools .recenter{display:inline-flex;align-items:center;gap:5px;color:#7f4355;background:#f4e2e6}.amap-precision-tools .recenter:disabled{color:#b99fa6;background:#f5eeee;opacity:.7}.amap-current-footprint{position:absolute;z-index:5;left:16px;bottom:16px;max-width:calc(100% - 32px);display:flex;align-items:center;gap:6px;padding:8px 11px;color:#98556a;background:#fffaf7e6;border:1px solid rgba(232,199,205,.85);border-radius:10px;box-shadow:0 8px 22px #5023311a;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);font-size:10px}.amap-current-footprint strong{color:#6e3548}.journey-list{min-width:0;height:620px;padding:25px 25px 0;overflow:hidden}.panel-title,.section-title,.settings-card-title{display:flex;align-items:start;justify-content:space-between;gap:20px}.panel-title h2,.section-title h2,.settings-card-title h2{margin:0;color:var(--rose-950);font:700 24px/1.2 var(--serif)}.panel-title>span{padding:6px 9px;color:var(--rose-700);background:var(--rose-100);border-radius:99px;font-size:10px}.journey-scroll{height:calc(100% - 65px);margin-top:20px;overflow-y:auto;padding:2px 5px 22px 2px;scrollbar-width:thin;scrollbar-color:#e3afba transparent}.journey-item{position:relative;display:grid;grid-template-columns:32px 1fr;gap:13px;margin-bottom:11px;padding:14px;background:#fffcf9c7;border:1px solid #edd6db;border-radius:14px;outline:0;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}.journey-item:hover,.journey-item:focus-visible{transform:translateY(-1px);border-color:#dca6b3;background:#fffaf8;box-shadow:0 10px 24px #592a3717}.journey-item.selected{border-color:#bd627a;background:linear-gradient(135deg,#fffaf8,#fbe7eb);box-shadow:0 0 0 2px #bd627a1f,0 12px 28px #592a371c}.journey-item.selected .timeline-mark{background:#7f1738;box-shadow:0 0 0 4px #bf5b7724}.timeline-mark{position:relative;z-index:1;width:32px;height:32px;display:grid;place-items:center;color:#fff;background:var(--rose-700);border:4px solid #fff6f3;border-radius:50%}.timeline-mark span{font:8px/1 Georgia,serif}.journey-meta{display:flex;justify-content:space-between;gap:10px;margin-bottom:5px;color:var(--rose-700);font-size:10px}.journey-meta time{color:#aa8b94}.journey-body h3{margin:0;font:700 17px/1.45 var(--serif);color:var(--ink)}.journey-body>p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.65}.saved-location{display:flex;align-items:flex-start;gap:7px;margin-top:10px;padding:8px 9px;color:#a15d72;background:#f7e7eab8;border-radius:9px}.saved-location>svg{flex:0 0 auto;margin-top:2px}.saved-location>span{min-width:0;display:grid;gap:2px}.saved-location strong{color:#744653;font-size:10px}.saved-location small{overflow:hidden;color:#9c7c85;font-size:9px;line-height:1.45;text-overflow:ellipsis}.saved-location code{color:#8a6f79;font-size:8px}.photo-row{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:11px}.journey-photo{aspect-ratio:1.2;border-radius:7px}.text-danger{display:inline-flex;align-items:center;gap:4px;margin-top:9px;padding:0;color:#ad7180;background:transparent;font-size:10px;opacity:0;transition:opacity .2s ease}.journey-item:hover .text-danger{opacity:1}.admin-item-actions{display:flex;align-items:center;gap:9px;margin-top:12px}.admin-item-actions>button{display:inline-flex;align-items:center;gap:4px;padding:0;color:#9a7180;background:transparent;font-size:10px}.admin-item-actions .text-danger{margin-top:0}.visibility-badge{width:fit-content;display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border-radius:999px;font-size:9px;line-height:1}.visibility-badge.public{color:#537a63;background:#e8f3ec}.visibility-badge.private{color:#8d6875;background:#f2e7eb}.empty-state{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 24px;text-align:center;color:#aa7684}.empty-state.compact{height:calc(100% - 80px);min-height:260px;padding:20px}.empty-state h3{margin:15px 0 6px;color:var(--ink);font:700 20px/1.4 var(--serif)}.empty-state h3+.button{margin-top:14px}.empty-state p{max-width:430px;margin:0 0 19px;line-height:1.75;font-size:13px}.memo-feature{min-height:160px;display:grid;grid-template-columns:128px 1fr auto;align-items:center;gap:30px;padding:24px 34px;margin-bottom:52px;overflow:hidden;background:linear-gradient(120deg,#fffdf9ed,#f9dce1d1)}.calendar-sheet{width:112px;height:112px;display:grid;grid-template-rows:34px 1fr;overflow:hidden;text-align:center;background:#fff;border-radius:13px;box-shadow:0 13px 29px #6c30411f;transform:rotate(-2deg)}.calendar-sheet span{padding-top:8px;color:#fff;background:var(--rose-700);font-size:11px;letter-spacing:.08em}.calendar-sheet strong{align-self:center;font:44px/1 Georgia,serif;color:var(--rose-950)}.memo-feature h2{margin:0;color:var(--rose-950);font:700 26px/1.4 var(--serif)}.memo-feature p{margin:8px 0 0;color:var(--muted);font-size:12px}.big-countdown{padding:13px 19px;color:#fff;background:var(--rose-800);border-radius:99px;font:600 13px/1 var(--serif)}.section-title{align-items:end;margin-bottom:22px}.legend{display:flex;gap:18px;color:var(--muted);font-size:11px}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:7px;height:7px;border-radius:50%}.anniversary-dot{background:var(--rose-700)}.plan-dot{background:#a58dbe}.memo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.memo-card{position:relative;min-height:290px;padding:24px;overflow:hidden;background:#fffcf8e6;border:1px solid var(--border);border-radius:18px;box-shadow:0 15px 40px #592a3614}.memo-card.with-location{min-height:385px}.memo-card .saved-location{margin-bottom:78px}.memo-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--rose-700)}.memo-card.plan:before{background:#9a80b2}.memo-card-top{display:flex;align-items:center;justify-content:space-between;color:var(--rose-700);font-size:10px}.memo-card.plan .memo-card-top{color:#81689a}.memo-card-top button,.diary-content footer button{display:grid;place-items:center;padding:5px;color:#af8791;background:transparent;opacity:.45}.memo-card-top button:hover,.diary-content footer button:hover{opacity:1;color:#9c324f}.card-icon-actions{display:flex;align-items:center;gap:2px}.diary-content footer .card-icon-actions{gap:3px}.diary-content footer .visibility-badge{margin-right:3px}.memo-card time{display:flex;align-items:end;gap:9px;margin:26px 0 16px}.memo-card time strong{font:54px/.82 Georgia,serif;color:var(--rose-950)}.memo-card time span{color:var(--muted);font-size:11px}.memo-card h3{margin:0;font:700 20px/1.4 var(--serif);color:var(--ink)}.memo-card>p{margin:9px 0 0;color:var(--muted);font-size:12px;line-height:1.7}.memo-card-foot{position:absolute;left:24px;right:24px;bottom:22px;display:flex;align-items:end;justify-content:space-between;padding-top:14px;border-top:1px solid var(--border)}.memo-card-foot span{color:var(--rose-800);font:700 14px/1 var(--serif)}.memo-card-foot small{color:#aa8b93;font-size:9px}.diary-toolbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 22px;margin-bottom:22px;box-shadow:0 11px 36px #5b2b390f}.diary-toolbar>div{display:flex;align-items:center;gap:11px;color:var(--rose-700)}.diary-toolbar>div span{color:var(--muted);font-size:12px}.diary-toolbar strong{color:var(--rose-950);font:18px/1 Georgia,serif}.diary-toolbar label{width:min(360px,48%)}.diary-toolbar input{width:100%;height:42px;padding:0 15px;color:var(--ink);background:#fffaf8;border:1px solid var(--border);border-radius:99px;outline:0;font-size:12px}.diary-empty{min-height:430px}.diary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.diary-card{min-height:310px;display:grid;background:#fffcf9e6;border:1px solid var(--border);border-radius:20px;box-shadow:0 16px 42px #5b2b3914;overflow:hidden}.diary-card.with-image{grid-template-columns:43% 57%}.diary-image-gallery{min-width:0;min-height:310px;display:grid;overflow:hidden}.diary-image-gallery.count-2{grid-template-rows:1fr 1fr;gap:2px}.diary-image{position:relative;min-height:0;overflow:hidden}.diary-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset -20px 0 30px #26141914}.diary-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.diary-card:hover .diary-image img{transform:scale(1.04)}.diary-image .image-sequence{position:absolute;z-index:2;left:16px;top:16px;width:30px;height:30px;display:grid;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.6);border-radius:50%;font:9px/1 Georgia,serif}.diary-content{position:relative;display:flex;flex-direction:column;padding:29px}.diary-meta{display:flex;justify-content:space-between;gap:15px;color:#a2818a;font-size:10px}.diary-meta span{padding:4px 9px;color:var(--rose-700);background:var(--rose-100);border-radius:99px}.diary-content h2{margin:24px 0 10px;font:700 25px/1.45 var(--serif);color:var(--rose-950)}.diary-content>p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font:400 13px/1.9 var(--serif);-webkit-line-clamp:4;-webkit-box-orient:vertical}.diary-content footer{margin-top:auto;padding-top:22px;display:flex;justify-content:space-between;align-items:center;color:#aa8b93;font-size:10px}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:21px}.settings-card{padding:29px}.settings-card-title{align-items:center;color:var(--rose-700);margin-bottom:26px}.settings-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.settings-fields label{display:grid;gap:7px}.settings-fields label span{color:var(--muted);font-size:11px}.settings-fields input,.settings-fields select{width:100%;height:43px;padding:0 13px;background:#fffaf8;border:1px solid var(--border);border-radius:10px;outline:0;font-size:13px}.identity-settings{grid-column:1 / -1}.identity-site-fields{width:100%;max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:22px}.member-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.member-profile-card{position:relative;padding:20px;overflow:hidden;border:1px solid rgba(187,103,128,.2);border-radius:18px;background:linear-gradient(145deg,#fffaf8fa,#ffedf2e0);box-shadow:0 12px 30px #68304312}.member-profile-card:after{content:"";position:absolute;right:-35px;top:-45px;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,rgba(220,111,145,.15),transparent 70%);pointer-events:none}.member-profile-card.member-partner{background:linear-gradient(145deg,#fffbf6fa,#f7eeffe6)}.member-profile-card>header{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin-bottom:18px}.member-profile-card>header>span{color:#c89465;font:italic 27px/1 Georgia,serif}.member-profile-card>header>div{display:grid;gap:3px}.member-profile-card>header small{color:#b88669;font:700 7px/1 Georgia,serif;letter-spacing:.19em}.member-profile-card>header strong{color:var(--rose-950);font:700 16px/1.2 var(--serif)}.member-profile-card>header em{padding:5px 8px;color:#9b6878;background:#ffffffb3;border-radius:999px;font-size:7px;font-style:normal}.member-profile-fields{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:12px}.member-profile-fields label{display:grid;gap:6px}.member-profile-fields label>span{color:var(--muted);font-size:9px}.member-profile-fields .birthday-field{grid-column:1 / -1}.member-profile-fields input,.member-profile-fields select{width:100%;min-width:0;height:42px;padding:0 12px;color:var(--ink);background:#ffffffd1;border:1px solid var(--border);border-radius:10px;outline:0}.member-profile-fields input:focus,.member-profile-fields select:focus{border-color:var(--rose-500);box-shadow:0 0 0 3px #bb5a7217}.member-profile-fields input:disabled,.member-profile-fields select:disabled{color:#8f7c82;background:#f1ebecd1;cursor:not-allowed}.member-astrology{position:relative;z-index:1;margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.member-astrology>span{min-height:57px;padding:10px 12px;display:grid;align-content:center;gap:4px;color:#9e7884;background:#ffffff9e;border:1px dashed rgba(183,105,129,.22);border-radius:12px}.member-astrology small{font-size:7px;letter-spacing:.12em}.member-astrology strong{font:700 12px/1.2 var(--serif)}.member-astrology.ready>span{color:#7c465a;border-style:solid;background:#ffffffd1}.member-profile-note{margin:14px 2px 0;color:var(--muted);font-size:8px;line-height:1.7}.auto-save{margin:20px 0 0;display:flex;align-items:center;gap:5px;color:#9f7882;font-size:10px}.amap-fields{grid-template-columns:1fr}.amap-config-state{margin-top:15px;display:flex;align-items:center;gap:6px;color:#9b7380;font-size:10px}.amap-config-state.ready{color:#54806a}.visual-settings{grid-column:1 / -1}.visual-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.visual-preview{position:relative;min-height:165px;overflow:hidden;border-radius:13px;background:#f3dfe2}.visual-preview img,.visual-preview video{width:100%;height:100%;min-height:165px;object-fit:cover}.visual-preview label{position:absolute;left:9px;bottom:9px;display:flex;align-items:center;gap:6px;padding:8px 10px;color:var(--rose-950);background:#fffaf8e6;border-radius:8px;box-shadow:0 5px 16px #411f291f;font-size:10px}.visual-preview input{display:none}.hero-mobile-preview{display:grid;place-items:center;background:linear-gradient(135deg,#f6e3e6,#e8cbd3)}.hero-mobile-preview>img,.hero-mobile-preview>video{width:auto;max-width:100%;aspect-ratio:9 / 16;margin-inline:auto;object-fit:cover}.mobile-ratio-badge{position:absolute;top:9px;right:9px;padding:5px 8px;color:#fff;background:#48212eb8;border:1px solid rgba(255,255,255,.42);border-radius:999px;font:700 8px/1 Georgia,serif;letter-spacing:.06em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.visual-preview .visual-preview-actions{position:absolute;z-index:2;right:7px;bottom:7px;left:7px;display:flex;gap:6px}.visual-preview .visual-preview-actions label{position:static;flex:1;justify-content:center;min-width:0;padding:7px 6px;white-space:nowrap}.visual-note{margin:12px 0 0;color:var(--muted);font-size:10px;line-height:1.7}.text-button{margin-top:15px;padding:0;color:var(--rose-700);background:transparent;text-decoration:underline;text-underline-offset:3px;font-size:11px}.server-settings>p{margin:-5px 0 18px;color:var(--muted);font-size:12px;line-height:1.7}.path-list{display:grid;grid-template-columns:1fr auto;gap:8px 14px;align-items:center}.path-list code{min-width:0;overflow:hidden;padding:9px 11px;color:#815064;background:#f9e9ec;border-radius:7px;text-overflow:ellipsis;font:10px/1.3 Consolas,monospace}.path-list span{color:#9c7a83;font-size:10px}.tip{display:flex;gap:11px;margin-top:18px;padding:13px;color:var(--rose-700);background:#fff4f2;border:1px dashed #e2b5be;border-radius:11px}.tip p{margin:0;color:var(--muted);font-size:10px;line-height:1.65}.tip strong{color:var(--ink)}.storage-meter>div:first-child{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}.storage-meter strong{color:var(--rose-950);font:20px/1 Georgia,serif}.meter{height:8px;margin:14px 0 9px;overflow:hidden;background:#f0dadd;border-radius:99px}.meter i{display:block;height:100%;min-width:2%;background:linear-gradient(90deg,var(--rose-300),var(--rose-700));border-radius:inherit}.storage-meter small{color:#a2848b;font-size:10px;line-height:1.6}.storage-scan-details{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.storage-scan-details span{padding:6px 9px;color:#805766;background:#f9eaed;border:1px solid #efd4da;border-radius:999px;font-size:10px}.storage-scan-details span b{color:var(--rose-950);font-size:12px}.storage-scan-details .scan-warning{color:#9a5b29;background:#fff4df;border-color:#efd8ac}.storage-scan-details small{width:100%;margin-top:2px}.backup-actions{display:flex;gap:9px;margin-top:22px}.backup-actions .button{min-height:40px;font-size:11px}.music-settings{grid-column:1 / -1}.music-admin-tools{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px}.music-admin-tools small{color:var(--muted);font-size:10px;line-height:1.6}.music-track-list{max-height:260px;display:grid;gap:8px;margin-top:18px;overflow-y:auto;padding-right:4px}.music-track-row{min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:10px;padding:9px 10px 9px 13px;color:var(--ink);background:#fffaf8;border:1px solid var(--border);border-radius:10px}.music-track-row span{min-width:0;display:grid;gap:4px}.music-track-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.music-track-row small{color:var(--muted);font-size:8px}.music-track-row button{width:34px;height:34px;display:grid;place-items:center;color:#a65b70;background:#f8e8ec;border-radius:50%}.music-track-row button:hover:not(:disabled){color:#fff;background:#a84562}.music-track-row button:disabled{opacity:.55;cursor:wait}.music-track-empty{margin:0;padding:18px;color:var(--muted);background:#fffaf8;border:1px dashed var(--border);border-radius:10px;text-align:center;font-size:11px}.notice{max-width:620px;min-height:43px;margin:-20px 0 25px;display:flex;align-items:center;gap:8px;padding:0 13px;color:#7b4354;background:#ffe9ed;border:1px solid #efc6ce;border-radius:11px;font-size:11px}.notice button{margin-left:auto;display:grid;place-items:center;background:transparent}.admin-toast{position:fixed;z-index:1000;top:max(14px,env(safe-area-inset-top));left:50%;width:min(620px,calc(100vw - 28px));max-width:none;min-height:49px;margin:0;padding:9px 13px;background:#ffe9edf7;box-shadow:0 15px 42px #5e263933;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transform:translate(-50%);animation:adminToastIn .22s ease-out both,adminToastOut .35s ease-in 4.65s forwards}.admin-toast>svg{flex:0 0 auto}.admin-toast button{width:28px;height:28px;flex:0 0 auto;color:#8e4d60;border-radius:50%}.admin-toast button:hover{background:#8e4d601a}@keyframes adminToastIn{0%{opacity:0;transform:translate(-50%,-12px) scale(.98)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes adminToastOut{0%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-8px) scale(.98)}}.site-footer{min-height:104px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;border-top:1px solid var(--border);color:var(--rose-700)}.site-footer-brand{min-width:0;display:flex;align-items:center;gap:11px}.site-footer-brand p{overflow:hidden;margin:0;color:var(--ink);font:600 12px/1.2 var(--serif);text-overflow:ellipsis;white-space:nowrap}.site-footer button{justify-self:end;display:flex;align-items:center;gap:5px;color:var(--rose-700);background:transparent;font-size:11px}.filing-inline{display:grid;justify-items:center;gap:6px;color:#9b7d85;text-align:center}.filing-inline a{display:inline-flex;align-items:center;justify-content:center;gap:4px;color:inherit;font-size:10px;line-height:1.2;text-decoration:none;transition:color .2s ease;white-space:nowrap}.filing-inline a img{width:auto;height:1em;flex:0 0 auto;object-fit:contain}.filing-inline a:hover,.filing-inline a:focus-visible{color:var(--rose-700);text-decoration:underline;text-underline-offset:3px}.modal-open{overflow:hidden}.modal-backdrop{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:28px;background:#401f296b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeIn .2s ease both}.modal-card{width:min(720px,100%);max-height:calc(100vh - 56px);overflow:auto;padding:30px;background:#fffaf7;border:1px solid rgba(255,255,255,.6);border-radius:23px;box-shadow:0 30px 90px #30161f47;animation:modalIn .35s cubic-bezier(.2,.7,.2,1) both}.modal-header{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:28px}.modal-header h2{margin:0;color:var(--rose-950);font:700 27px/1.3 var(--serif)}.modal-header p{margin:6px 0 0;color:var(--muted);font-size:11px}.icon-button{width:38px;height:38px;display:grid;place-items:center;color:var(--rose-700);background:var(--rose-100);border-radius:50%}.expandable-image{position:relative;width:100%;height:100%;display:block;overflow:hidden;padding:0;color:#fff;background:#eadadd;text-align:initial}.expandable-image img{width:100%;height:100%;display:block;object-fit:cover}.image-expand-hint{position:absolute;z-index:3;right:7px;bottom:7px;display:flex;align-items:center;gap:4px;padding:5px 7px;color:#fff;background:#371a24ad;border:1px solid rgba(255,255,255,.26);border-radius:99px;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease;font-size:8px;white-space:nowrap;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.expandable-image:hover .image-expand-hint,.expandable-image:focus-visible .image-expand-hint{opacity:1;transform:translateY(0)}.image-lightbox{position:fixed;z-index:1600;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:34px;background:#1f1015e0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:fadeIn .2s ease both}.image-lightbox figure{max-width:min(1220px,calc(100vw - 80px));max-height:calc(100vh - 80px);display:grid;gap:10px;margin:0}.image-lightbox img{max-width:100%;max-height:calc(100vh - 118px);display:block;margin:auto;object-fit:contain;border-radius:12px;box-shadow:0 28px 80px #00000061}.image-lightbox figcaption{overflow:hidden;color:#fbeff1;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.image-lightbox>button{position:absolute;right:22px;top:22px;width:43px;height:43px;display:grid;place-items:center;color:#fff;background:#ffffff21;border:1px solid rgba(255,255,255,.25);border-radius:50%}.form{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 16px}.field{display:grid;gap:8px;align-content:start}.field.full,.form-actions{grid-column:1 / -1}.field>label{display:flex;justify-content:space-between;gap:10px;color:#714554;font-size:11px;font-weight:650}.field>label span{color:#ab8891;font-weight:400}.field input,.field textarea,.field select{width:100%;padding:0 13px;background:#fff;border:1px solid #ead2d7;border-radius:10px;outline:0;transition:border-color .2s ease,box-shadow .2s ease}.field input,.field select{height:45px}.field textarea{padding-block:12px;resize:vertical;line-height:1.7}.field input:focus,.field textarea:focus,.field select:focus{border-color:#c76b82;box-shadow:0 0 0 3px #c76b821a}.field-hint{margin:0;color:#a48089;font-size:10px}.form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:7px}.segmented,.mood-picker{display:flex;padding:4px;background:#f8e8eb;border-radius:11px}.segmented button{flex:1;min-height:39px;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;border-radius:8px;font-size:11px}.segmented button.active{color:#fff;background:var(--rose-700);box-shadow:0 6px 12px #8b395029}.visibility-field{padding:13px;background:#fff5f4;border:1px solid #efd6da;border-radius:12px}.location-picker{overflow:hidden;background:#fff;border:1px solid #ead2d7;border-radius:14px}.location-picker.missing{min-height:86px;display:flex;align-items:center;gap:11px;padding:16px;color:#a46376;background:#fff6f5}.location-picker.missing>div{flex:1;display:grid;gap:3px}.location-picker.missing strong{color:var(--ink);font-size:11px}.location-picker.missing p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}.location-picker.missing a{padding:7px 10px;color:#fff;background:var(--rose-700);border-radius:99px;font-size:9px}.location-picker-toolbar{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px;border-bottom:1px solid #f0dce0}.location-search{min-width:0;height:41px;display:flex;align-items:center;gap:8px;padding-left:11px;color:#a15c71;background:#fff9f7;border:1px solid #edd7dc;border-radius:9px}.location-search input{min-width:0;height:100%;flex:1;padding:0;border:0;background:transparent;box-shadow:none}.location-search button{align-self:stretch;padding:0 13px;color:#fff;background:var(--rose-700);border-radius:0 8px 8px 0;font-size:10px}.location-picker-toolbar button:disabled{opacity:.45}.locate-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:41px;padding:0 12px;color:var(--rose-700);background:#f9e8eb;border-radius:9px;font-size:10px}.location-map-wrap{position:relative;height:275px;background:#f2e6e4}.location-map{position:absolute;top:0;right:0;bottom:0;left:0}.location-map-wrap>span{position:absolute;z-index:4;right:10px;bottom:10px;display:flex;align-items:center;gap:5px;padding:6px 9px;color:#875666;background:#fffbf8e0;border-radius:99px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:9px}.location-loading{position:absolute;z-index:5;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:7px;color:#956878;background:#fff9f7e0;font-size:10px}.selected-location{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:9px;margin:10px;padding:11px;color:var(--rose-700);background:#fff4f2;border:1px solid #efd5da;border-radius:10px}.selected-location>svg{margin-top:2px}.selected-location>div{min-width:0;display:grid;gap:3px}.selected-location strong{color:var(--ink);font-size:11px}.selected-location span{color:var(--muted);font-size:9px;line-height:1.5}.selected-location code{color:#866c75;font-size:9px}.selected-location>button{padding:3px;color:#9f6d7b;background:transparent}.location-message{min-height:26px;display:flex;align-items:center;gap:6px;margin:0;padding:5px 11px 10px;color:#98727d;font-size:9px}.location-results{margin:0 10px 10px;padding-top:9px;border-top:1px solid #f0dce0}.location-results>strong{display:block;margin-bottom:7px;color:#75505c;font-size:10px}.location-results>div{max-height:230px;display:grid;gap:5px;overflow-y:auto}.location-results button{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:8px;padding:9px;color:#a1546b;background:#fff9f7;border:1px solid transparent;border-radius:8px;text-align:left}.location-results button:hover{border-color:#e2b8c1;background:#fff2f1}.location-results button>svg{margin-top:2px}.location-results button span{min-width:0;display:grid;gap:2px}.location-results b{color:#704350;font-size:10px}.location-results small{color:#987b84;font-size:9px;line-height:1.45}.location-results code{color:#957783;font-size:8px}.spin{animation:spin 1s linear infinite}.upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.upload-preview,.upload-tile{position:relative;aspect-ratio:1.35;overflow:hidden;border-radius:10px}.upload-preview-image{border-radius:inherit}.upload-preview>.remove-upload{position:absolute;z-index:4;right:6px;top:6px;width:25px;height:25px;display:grid;place-items:center;color:#fff;background:#361a22b3;border-radius:50%}.upload-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--rose-700);background:#fff5f4;border:1px dashed #dba4b0}.upload-tile span{font-size:10px}.upload-tile small{color:#ae8b94;font-size:9px}.upload-tile input,.wide-upload input{display:none}.mood-picker{gap:4px;overflow-x:auto}.mood-picker button{min-width:68px;flex:1;min-height:37px;color:#936d78;background:transparent;border-radius:8px;font-size:10px}.mood-picker button.active{color:#fff;background:var(--rose-700)}.wide-upload{min-height:94px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--rose-700);background:#fff4f3;border:1px dashed #dca8b3;border-radius:11px}.wide-upload span{font-size:11px}.wide-upload small{color:#ad8992;font-size:9px}.single-image-preview{position:relative;width:100%;height:180px;overflow:hidden;border-radius:12px}.single-preview-image{border-radius:inherit}.single-image-preview>.remove-single-image{position:absolute;z-index:4;right:9px;top:9px;display:flex;align-items:center;gap:5px;padding:7px 10px;color:#fff;background:#391c24b3;border-radius:8px;font-size:10px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1050px){.topbar-inner{grid-template-columns:38px minmax(0,1fr);gap:8px}.topbar .brand>span:last-child{display:none}.topbar nav{justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.topbar nav button,.topbar nav .tool-station-nav-entry{padding-inline:9px}.hero-content{grid-template-columns:1fr 300px;gap:5vw}.book-page{min-height:350px;padding-inline:28px}.book-page>strong{font-size:66px}.travel-grid{grid-template-columns:1fr}.journey-list{height:auto;min-height:420px}.journey-scroll{height:auto;max-height:520px}.memo-grid{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:1fr}}@media(max-width:780px){.site-width{width:min(100% - 32px,680px)}.visual-picker{grid-template-columns:repeat(2,1fr)}.topbar{height:68px}.admin-message-center{top:79px;right:12px}.app.topbar-collapsed.admin-mode .admin-message-center{top:30px}.message-center-panel,.admin-message-center.super-admin .message-center-panel{width:calc(100vw - 24px);max-height:calc(100vh - 124px);border-radius:16px}.admin-message-center.super-admin .message-center-groups{grid-template-columns:1fr}.topbar-inner{width:100%;grid-template-columns:auto minmax(0,1fr);padding-inline:14px;gap:7px}.brand>span:last-child{display:none}.brand-mark{width:32px;height:32px}.topbar nav{justify-self:stretch;justify-content:flex-start;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}.topbar nav button,.topbar nav .tool-station-nav-entry{flex:0 0 auto;padding-inline:10px;font-size:11px}.topbar nav button svg,.topbar nav .tool-station-nav-entry svg{display:none}.topbar nav button.active:after{left:10px;right:10px}.hero{height:100svh;min-height:700px}.hero-image-layer img{object-position:72% center}.hero-content{padding-top:68px;grid-template-columns:1fr;align-content:center}.hero-copy{padding-top:0}.hero-page-turn{min-height:300px}.hero-page-turn h1{font-size:clamp(42px,11vw,63px)}.hero-book{display:none}.hero-wash{background:linear-gradient(90deg,#2c171db3,#3c222a2e),linear-gradient(0deg,rgba(40,24,30,.75),transparent 45%)}.hero-bottom{grid-template-columns:minmax(0,1fr) auto;gap:10px}.hero-bottom>span{display:none}.hero-bottom .home-filing{justify-self:start}.hero-bottom .home-filing a{font-size:7px}.home-music-player{min-width:0;width:min(240px,58vw);max-width:100%}.page{padding-top:107px;padding-bottom:50px}.page-heading{align-items:start;flex-direction:column;margin-bottom:28px}.page-heading .button{align-self:stretch}.heading-actions{width:100%;justify-content:flex-start}.stat-strip{grid-template-columns:repeat(2,1fr)}.stat-strip>div:nth-child(2){border-right:0}.stat-strip>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.stat-strip>div{min-height:80px;padding:15px}.map-card,.map-shell,.amap-shell{min-height:530px}.map-card.map-mode-simple{width:100%;min-height:0;aspect-ratio:1.08 / 1}.map-card.map-mode-simple .map-shell{height:100%;min-height:0;aspect-ratio:inherit}.map-tools{top:76px;right:14px}.map-search{left:14px;right:14px;width:auto}.map-cascade{display:grid;grid-template-columns:.9fr 1.25fr auto;gap:0;padding-left:7px}.map-cascade>svg{display:none}.map-cascade select{padding-inline:6px}.amap-precision-tools{right:12px;left:12px;overflow-x:auto}.amap-precision-tools>div{display:none}.amap-precision-tools button{flex:0 0 auto}.memo-feature{grid-template-columns:95px 1fr;gap:18px;padding:21px}.calendar-sheet{width:86px;height:93px;grid-template-rows:29px 1fr}.calendar-sheet strong{font-size:36px}.big-countdown{grid-column:1 / -1;justify-self:stretch;text-align:center}.memo-feature h2{font-size:21px}.section-title{align-items:start;flex-direction:column}.memo-grid,.diary-grid{grid-template-columns:1fr}.diary-card.with-image{grid-template-columns:38% 62%}.diary-content{padding:23px}.form{grid-template-columns:1fr}.field.full,.form-actions{grid-column:auto}.location-picker-toolbar{grid-template-columns:1fr}.location-map-wrap{height:245px}.modal-backdrop{padding:12px}.modal-card{max-height:calc(100vh - 24px);padding:23px;border-radius:18px}.mobile-page-scroller{position:fixed;z-index:1450;top:max(88px,env(safe-area-inset-top));right:3px;bottom:max(72px,env(safe-area-inset-bottom));width:36px;display:block;pointer-events:none;opacity:0;transition:opacity .2s ease;touch-action:none}.mobile-page-scroller.visible{pointer-events:auto;opacity:1}.mobile-page-scroller:before{content:"";position:absolute;top:15px;bottom:15px;left:50%;width:3px;background:#913d572e;border:1px solid rgba(255,255,255,.42);border-radius:99px;box-shadow:0 5px 18px #50233117;transform:translate(-50%)}.mobile-page-scroll-ball{position:absolute;left:1px;width:34px;height:42px;display:grid;grid-template-rows:11px 6px 11px;place-content:center;place-items:center;padding:5px 0;color:#fffffff0;background:linear-gradient(145deg,#be5b78c7,#85354eb8);border:1px solid rgba(255,255,255,.68);border-radius:50%;box-shadow:0 7px 18px #5723353d,inset 0 1px #ffffff59;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);touch-action:none}.mobile-page-scroll-ball i{width:5px;height:5px;display:block;background:#ffeff2f2;border-radius:50%;box-shadow:0 0 0 3px #ffffff1f}}@media(max-width:520px){.topbar nav button{padding-inline:7px;font-size:10px}.topbar nav button.active:after{left:7px;right:7px}.hero-page-turn{min-height:324px}.hero-page-turn h1{font-size:39px}.hero-page-turn>p:not(.page-index){font-size:13px;line-height:1.8}.hero-kicker{margin-bottom:17px}.hero-weather-forecast{gap:4px;margin-top:11px}.hero-weather-forecast>div{padding:7px 6px 6px;border-radius:8px}.hero-weather-forecast span{font-size:10px}.hero-weather-forecast span small{display:none}.hero-weather-forecast strong{margin-top:5px;font-size:9px}.hero-weather-forecast em{font-size:10px}.hero-actions{flex-wrap:wrap}.hero-actions .button{min-height:45px;padding-inline:17px}.page-heading h1{font-size:36px}.stat-strip strong{font-size:24px}.heading-actions .map-mode-switch{width:100%}.map-mode-switch button{flex:1}.heading-actions>.button{width:100%}.map-hint{white-space:normal;text-align:center}.journey-list{padding:21px 18px 0}.amap-precision-tools{top:10px;padding:5px}.amap-precision-tools button{min-height:34px;padding-inline:9px}.amap-current-footprint{left:10px;bottom:10px;max-width:calc(100% - 20px)}.memo-grid{gap:13px}.legend{flex-wrap:wrap}.diary-toolbar{align-items:stretch;flex-direction:column}.diary-toolbar label{width:100%}.diary-card.with-image{grid-template-columns:1fr}.diary-image-gallery{min-height:230px}.diary-image-gallery.count-2{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.diary-image{min-height:230px}.diary-card{min-height:0}.settings-card{padding:22px}.settings-fields,.member-profile-grid{grid-template-columns:1fr}.member-profile-card{padding:17px}.visual-picker{grid-template-columns:1fr}.visual-preview{min-height:145px}.visual-preview img,.visual-preview video{min-height:145px}.location-picker-toolbar{padding:8px}.location-picker-toolbar form{height:43px}.locate-button{width:100%}.location-results>div{max-height:190px}.backup-actions,.form-actions{flex-direction:column}.backup-actions .button,.form-actions .button{width:100%}.music-admin-tools{grid-template-columns:1fr}.music-admin-tools .button{width:100%}.ai-config-actions{align-items:stretch;flex-direction:column}.ai-config-actions .button{width:100%}.upload-grid{grid-template-columns:repeat(2,1fr)}.wide-upload{padding:14px;text-align:center;flex-wrap:wrap}.image-expand-hint{opacity:1;transform:none}.image-lightbox{padding:14px}.image-lightbox figure{max-width:calc(100vw - 28px);max-height:calc(100vh - 28px)}.image-lightbox img{max-height:calc(100vh - 76px)}.image-lightbox>button{right:12px;top:12px}.site-footer{min-height:96px;grid-template-columns:64px minmax(0,1fr) 64px;gap:5px;padding-block:17px}.site-footer-brand{gap:0}.site-footer-brand p{display:none}.site-footer .brand-mark.mini{width:28px;height:28px}.filing-inline{gap:5px}.filing-inline a{font-size:8px}.site-footer button{gap:2px;font-size:9px}}.tarot-deck-picker-stage{position:relative;z-index:2;min-height:375px;display:grid;place-items:center;perspective:1000px}.tarot-preview-card{position:relative;display:block;padding:0;color:#f4d9aa;cursor:pointer;transition:transform .45s cubic-bezier(.2,.75,.25,1),opacity .35s ease}.tarot-preview-card>span{position:absolute;left:50%;bottom:-32px;display:inline-flex;align-items:center;gap:5px;padding:7px 10px;color:#e9c887;background:#130409b8;border:1px solid rgba(225,181,108,.3);border-radius:99px;transform:translate(-50%);font:8px/1 sans-serif;letter-spacing:.08em;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tarot-preview-card[aria-expanded=true]{animation:none;transform:translateY(120px) scale(.62) rotate(0);opacity:.38}.tarot-preview-card[aria-expanded=true]>span{opacity:0}.tarot-deck-fan{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;pointer-events:none}.tarot-deck-fan button{position:absolute;left:50%;top:43%;width:124px;aspect-ratio:2 / 3;overflow:visible;padding:0;color:#f7dfbd;background-position:center;background-size:cover;border:1px solid #e1b66e;border-radius:7px;box-shadow:0 18px 38px #0000007a;transform-origin:center 115%;pointer-events:auto;animation:tarotDeckFanIn .45s cubic-bezier(.16,.78,.25,1) both;transition:filter .2s ease,box-shadow .2s ease,margin-top .2s ease}.tarot-deck-fan button:nth-child(1){transform:translate(-88%,-50%) rotate(-15deg)}.tarot-deck-fan button:nth-child(2){z-index:2;transform:translate(-50%,-58%) rotate(0)}.tarot-deck-fan button:nth-child(3){transform:translate(-12%,-50%) rotate(15deg)}.tarot-deck-fan button:hover,.tarot-deck-fan button:focus-visible{z-index:5;margin-top:-13px;filter:brightness(1.1);box-shadow:0 24px 48px #0000008c,0 0 0 3px #e7be793d}.tarot-deck-fan button.active{box-shadow:0 24px 48px #0000008c,0 0 0 3px #dbad61}.tarot-deck-fan button span{position:absolute;left:50%;bottom:-29px;padding:6px 9px;color:#f7e6ce;background:#19050be6;border-radius:99px;transform:translate(-50%);font-size:8px;white-space:nowrap}.tarot-preview-copy{position:relative;z-index:3}.tarot-preview-panel.deck-theme-marseille{background:radial-gradient(circle at 50% 34%,rgba(207,150,65,.25),transparent 34%),linear-gradient(150deg,#5b1d21,#251011 72%)}.tarot-preview-panel.deck-theme-thoth{background:radial-gradient(circle at 50% 34%,rgba(65,162,167,.25),transparent 34%),linear-gradient(150deg,#201944,#090923 72%);border-color:#473c74}.tarot-deck-credit{min-height:26px;display:flex;justify-content:center;align-items:flex-end;padding-top:11px;color:#a48188;font-size:8px;letter-spacing:.04em;text-align:center}.tarot-deck-credit a{color:inherit;text-decoration:underline;text-decoration-color:#875c6759;text-underline-offset:3px}.tarot-card-face.has-scan{display:grid;place-items:center;padding:0;background:#24151a}.tarot-card-face.has-scan:before,.tarot-card-face.has-scan:after{display:none}.tarot-face-scan{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;object-fit:contain;transition:transform .35s ease}.tarot-card-face.has-scan.is-reversed .tarot-face-scan{transform:rotate(180deg)}.drawn-tarot-card.deck-marseille .tarot-card-face.has-scan{background:#e4d8bd}.drawn-tarot-card.deck-rws .tarot-card-face.has-scan{background:#ddd0b2}.deck-thoth .tarot-card-face.is-original,.deck-theme-thoth .tarot-card-face.is-original{color:#e8d8b5;background:radial-gradient(circle at 50% 36%,rgba(62,209,197,.45),transparent 19%),conic-gradient(from 35deg at 50% 44%,#221a55,#154b5a,#59214f,#20164c,#221a55)}.deck-thoth .tarot-card-face.is-original:before,.deck-theme-thoth .tarot-card-face.is-original:before{border-color:#e1b156cc;box-shadow:inset 0 0 20px #1b0a32bf}.deck-thoth .tarot-card-face.is-original:after,.deck-theme-thoth .tarot-card-face.is-original:after{border-radius:50%;border-color:#65ddd059;transform:rotate(18deg)}.deck-thoth .tarot-face-orbit{border-color:#e0b25bcc;box-shadow:0 0 0 7px #2a104d59,0 0 0 8px #5bddcf59,0 0 22px #57dfd359}.deck-thoth .tarot-face-sun{background:#142e49;border-color:#e1b35e;box-shadow:0 0 20px #5ce0cca6}.deck-thoth .tarot-face-mark{color:#79e2d1}.deck-thoth .tarot-face-index,.deck-thoth .tarot-face-name strong{color:#f0ce8e}.deck-thoth .tarot-face-name small{color:#a8d8ce}.tarot-ai-zone{width:min(800px,100%);display:grid;gap:14px;margin:29px auto 0}.tarot-ai-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;background:#fff6e712;border:1px solid rgba(223,180,111,.18);border-radius:13px}.tarot-ai-mode-switch button{min-height:59px;display:flex;align-items:center;justify-content:center;gap:10px;padding:9px 14px;color:#c6aaa6;background:transparent;border:1px solid transparent;border-radius:9px}.tarot-ai-mode-switch button>span,.tarot-admin-ai>span{display:grid;gap:3px;text-align:left}.tarot-ai-mode-switch strong,.tarot-admin-ai strong{color:inherit;font-size:10px}.tarot-ai-mode-switch small,.tarot-admin-ai small{color:#aa8c89;font-size:8px}.tarot-ai-mode-switch button.active{color:#3a1520;background:linear-gradient(135deg,#f1d7a7,#c99551);border-color:#f3dcaf;box-shadow:0 8px 18px #0d040733}.tarot-ai-mode-switch button.active small{color:#6f4d48}.tarot-admin-ai{min-height:58px;display:flex;align-items:center;justify-content:center;gap:10px;color:#e6cfbd;background:#fff6e712;border:1px solid rgba(223,180,111,.2);border-radius:12px}.tarot-personal-ai{display:grid;grid-template-columns:.65fr 1.45fr .8fr 1.15fr;gap:8px;padding:13px;background:#fff6e70f;border:1px solid rgba(223,180,111,.17);border-radius:12px}.tarot-personal-ai label{min-width:0;display:grid;gap:6px}.tarot-personal-ai label>span{color:#c5a7a1;font-size:8px}.tarot-personal-ai input,.tarot-personal-ai select{width:100%;min-width:0;height:39px;padding:0 9px;color:#f3ded2;background:#1b070d8c;border:1px solid rgba(225,181,109,.24);border-radius:8px;outline:0;font-size:9px}.tarot-personal-ai input:focus,.tarot-personal-ai select:focus{border-color:#d9ad66;box-shadow:0 0 0 3px #ddb06814}.tarot-ai-zone .tarot-reading-actions{margin-top:0}.ai-library-block{display:grid;gap:7px;margin-bottom:17px}.settings-field-label{color:var(--muted);font-size:11px}.ai-library-picker{position:relative;z-index:8}.ai-library-trigger{width:100%;min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 13px;color:var(--ink);background:#fffaf8;border:1px solid var(--border);border-radius:11px;text-align:left}.ai-library-trigger>span{display:grid;gap:3px}.ai-library-trigger small{color:var(--muted);font-size:8px}.ai-library-trigger strong{font-size:12px}.ai-library-picker.open .ai-library-trigger{border-color:var(--rose-500);box-shadow:0 0 0 3px #bb5a7214}.ai-library-picker.open .ai-library-trigger>svg{transform:rotate(180deg)}.ai-library-menu{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 7px);max-height:260px;padding:6px;overflow-y:auto;background:#fffaf8fa;border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 45px #4f23312b;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.ai-library-option{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:stretch;border-radius:9px}.ai-library-option:hover,.ai-library-option.active{background:var(--rose-100)}.ai-library-option>button:first-child{min-width:0;display:grid;gap:3px;padding:10px;color:var(--ink);background:transparent;text-align:left}.ai-library-option>button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.ai-library-option>button small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px}.ai-library-delete{display:grid;place-items:center;color:#b15f70;background:transparent;border-radius:8px}.ai-library-delete:hover{color:#fff;background:#b84f66}.ai-library-empty{margin:0;padding:14px 10px;color:var(--muted);text-align:center;font-size:10px}.ai-provider-presets{display:grid;gap:8px;margin-bottom:17px}.ai-provider-presets-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.ai-provider-presets-title>span{color:var(--muted);font-size:11px}.ai-provider-presets-title small{color:var(--muted);font-size:8px}.ai-provider-preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ai-provider-preset-grid button{min-width:0;min-height:76px;display:grid;align-content:center;gap:3px;padding:9px 10px;color:var(--ink);background:#fffaf8;border:1px solid var(--border);border-radius:11px;text-align:left}.ai-provider-preset-grid button:hover,.ai-provider-preset-grid button.active{border-color:#b14c686b;background:var(--rose-100);box-shadow:0 5px 16px #6f344614}.ai-provider-preset-grid button strong{font-size:11px}.ai-provider-preset-grid button span{overflow:hidden;color:var(--rose-700);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.ai-provider-preset-grid button small{overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.ai-config-actions{display:flex;align-items:center;gap:13px;margin-top:16px}.ai-config-actions small{color:var(--muted);font-size:9px;line-height:1.6}.ai-config-actions .button{flex:0 0 auto}.ai-config-page .ai-settings{grid-column:1 / -1;width:min(100%,900px);justify-self:center}.ai-config-page .ai-image-settings{margin-top:18px}.ai-image-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ai-image-config-subtitle{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:19px 0 11px;padding-top:16px;border-top:1px solid var(--border)}.ai-image-config-subtitle strong{color:var(--ink);font-size:12px}.ai-image-config-subtitle small{color:var(--muted);font-size:8px}.ai-image-parameter-fields input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.ai-image-temp-note{min-height:58px;display:flex;align-items:center;gap:10px;padding:10px 12px;color:var(--rose-700);background:#fff8f6;border:1px solid var(--border);border-radius:12px}.ai-image-temp-note>span{display:grid;gap:3px}.ai-image-temp-note strong{color:var(--ink);font-size:10px}.ai-image-temp-note small{color:var(--muted);font-size:8px;line-height:1.5}.ai-capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.ai-capability,.ai-effort{min-height:64px;display:flex;align-items:center;gap:11px;padding:11px 13px;color:var(--ink);background:#fffaf8;border:1px solid var(--border);border-radius:11px}.ai-capability input{width:17px;height:17px;flex:0 0 auto;accent-color:var(--rose-700)}.ai-capability>span{display:grid;gap:4px}.ai-capability strong{font-size:11px}.ai-capability small,.ai-effort>span{color:var(--muted);font-size:8px;line-height:1.45}.ai-capability:has(input:checked){border-color:#b14c6861;background:var(--rose-100)}.ai-capability:has(input:disabled),.ai-effort:has(select:disabled){opacity:.67}.ai-effort{justify-content:space-between}.ai-effort select{width:112px;height:37px;padding:0 10px;color:var(--ink);background:#fff;border:1px solid var(--border);border-radius:8px}.ai-custom-payload{display:grid;gap:8px;margin-top:14px}.ai-custom-payload>span{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}.ai-custom-payload>span small{flex:1;font-size:8px;line-height:1.55}.ai-custom-payload>span button{flex:0 0 auto;padding:5px 9px;color:var(--rose-700);background:var(--rose-100);border-radius:7px;font-size:8px}.ai-custom-payload textarea{width:100%;min-height:94px;padding:12px 13px;resize:vertical;color:#5e3945;background:#fffaf8;border:1px solid var(--border);border-radius:11px;outline:0;font:10px/1.65 Consolas,Courier New,monospace;-moz-tab-size:2;tab-size:2}.ai-custom-payload.full-template textarea{min-height:320px}.ai-custom-payload textarea:focus{border-color:var(--rose-500);box-shadow:0 0 0 3px #bb5a7214}.ai-custom-payload textarea:disabled{color:#8f7c82;background:#f3eeee;cursor:not-allowed}.diary-upload-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@keyframes tarotDeckFanIn{0%{opacity:0;filter:blur(5px)}to{opacity:1;filter:blur(0)}}@media(max-width:780px){.tarot-preview-panel{min-height:470px;display:grid;padding:26px}.tarot-deck-picker-stage{min-height:325px}.tarot-preview-card{width:150px}.tarot-deck-fan button{width:116px}.tarot-preview-copy{text-align:center}.tarot-personal-ai{grid-template-columns:1fr 1fr}.ai-fields{grid-template-columns:1fr}.ai-fields label.full{grid-column:auto}.ai-provider-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-capability-grid{grid-template-columns:1fr}.ai-custom-payload>span{align-items:flex-start;flex-wrap:wrap}.ai-custom-payload>span small{flex-basis:calc(100% - 90px)}}@media(max-width:520px){.tarot-preview-panel{min-height:430px;padding:22px}.tarot-deck-picker-stage{min-height:292px}.tarot-preview-card{width:132px}.tarot-deck-fan button{width:96px}.tarot-deck-fan button:nth-child(1){transform:translate(-91%,-50%) rotate(-15deg)}.tarot-deck-fan button:nth-child(3){transform:translate(-9%,-50%) rotate(15deg)}.tarot-ai-mode-switch,.tarot-personal-ai{grid-template-columns:1fr}.ai-provider-presets-title{align-items:flex-start;flex-direction:column;gap:3px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.lens-glint{animation:none}}.admin-auth-page{min-height:100vh;display:grid;place-items:center;padding:28px;background-image:linear-gradient(#fff6f6d1,#f9e8ece6),var(--page-background);background-size:cover;background-position:center}.admin-auth-card{width:min(440px,100%);display:grid;justify-items:center;gap:13px;padding:42px;text-align:center}.admin-auth-card>.brand-mark{margin-bottom:6px}.admin-auth-icon{color:var(--rose-700)}.admin-auth-card h1{margin:0;font:700 31px/1.2 var(--serif)}.admin-auth-card>p{margin:0 0 7px;color:var(--muted);line-height:1.7}.admin-auth-card form{width:100%;display:grid;gap:18px;margin-top:8px}.admin-auth-card form label{display:grid;gap:8px;text-align:left;color:var(--muted);font-size:13px}.admin-auth-card form label>div{display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid var(--border);border-radius:12px;background:#ffffffbf}.admin-auth-card form input{width:100%;min-width:0;padding:13px 0;border:0;outline:0;background:transparent}.admin-auth-card form .button{justify-content:center}.admin-auth-card>a{display:inline-flex;align-items:center;gap:5px;margin-top:8px;color:var(--rose-700);text-decoration:none;font-size:13px}.admin-auth-message{width:100%;padding:10px 12px;border-radius:10px;color:#8d2f48!important;background:#d97a911f}.auth-password-fields{display:grid;gap:13px}.auth-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.settings-help{margin:14px 0 0;color:var(--muted);font-size:12px;line-height:1.65}@media(max-width:520px){.admin-auth-card{padding:32px 22px}}.page-tarot .app,.page-tarot{background-color:#f8e9e8}.tarot-page{--tarot-wine: #45121f;--tarot-red: #751f32;--tarot-gold: #d7ad69;--tarot-cream: #fff2df}.tarot-page,.tarot-setup-layout,.tarot-setup-main,.tarot-profiles,.tarot-profile-card,.tarot-mode-switch{min-width:0;max-width:100%}.tarot-page-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:34px}.tarot-page-heading h1{margin:0;color:var(--tarot-wine);font:700 clamp(40px,5vw,62px)/1.06 var(--serif);letter-spacing:.08em}.tarot-page-heading p{margin:12px 0 0;color:#8b6972;font:14px/1.7 var(--serif);letter-spacing:.1em}.tarot-heading-seal{width:82px;height:82px;flex:0 0 auto;display:grid;place-content:center;color:var(--tarot-gold);background:var(--tarot-wine);border:1px solid #bd9254;border-radius:50%;box-shadow:inset 0 0 0 5px #511725,inset 0 0 0 6px #e0b87373,0 12px 28px #4a16242e;text-align:center}.tarot-heading-seal span{font:28px/1 Georgia,serif}.tarot-heading-seal small{margin-top:5px;font:7px/1 Georgia,serif;letter-spacing:.22em}.tarot-setup-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:stretch}.tarot-setup-main{padding:28px}.tarot-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px;padding:5px;background:#f4e4e3;border-radius:15px}.tarot-mode-switch button{min-height:64px;display:flex;align-items:center;gap:11px;padding:10px 14px;color:#8e6974;background:transparent;border:1px solid transparent;border-radius:11px;text-align:left;transition:.22s ease}.tarot-mode-switch button,.tarot-mode-switch button>span{min-width:0}.tarot-mode-switch button>span{display:grid;gap:3px}.tarot-mode-switch strong{color:inherit;font-size:12px}.tarot-mode-switch small{color:#a78b92;font-size:9px}.tarot-mode-switch button.active{color:#fff8ef;background:linear-gradient(135deg,#681c30,#8e3249);border-color:#ffe2b740;box-shadow:0 9px 20px #56182833}.tarot-mode-switch button.active small{color:#e8cfd0}.tarot-profiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.tarot-profiles.count-1{grid-template-columns:1fr}.tarot-profile-card{padding:20px;background:linear-gradient(145deg,#fffbf7,#fff4f0);border:1px solid #ecd4d3;border-radius:15px}.tarot-profile-heading{display:flex;align-items:center;gap:12px;margin-bottom:17px}.tarot-profile-heading>span{color:#cca364;font:italic 29px/1 Georgia,serif}.tarot-profile-heading>div{display:grid;gap:3px}.tarot-profile-heading small{color:#b78e58;font:7px/1 Georgia,serif;letter-spacing:.22em}.tarot-profile-heading h3{margin:0;color:#5e2a38;font:700 16px/1.2 var(--serif)}.tarot-profile-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px}.tarot-profile-fields label{display:grid;gap:6px}.tarot-profile-fields label.full{grid-column:1 / -1}.tarot-profile-fields label>span{color:#96727c;font-size:9px}.tarot-profile-fields input,.tarot-profile-fields select{width:100%;min-width:0;height:40px;padding:0 10px;color:#563640;background:#ffffffc7;border:1px solid #ead5d4;border-radius:8px;outline:0;font-size:11px}.tarot-profile-fields input:focus,.tarot-profile-fields select:focus{border-color:#bb6a7d;box-shadow:0 0 0 3px #a94e6417}.tarot-profile-astrology{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tarot-profile-astrology>span{min-height:49px;padding:8px 10px;display:grid;align-content:center;gap:3px;color:#a28189;background:#ffffff80;border:1px dashed #e7cecf;border-radius:9px}.tarot-profile-astrology small{font-size:7px;letter-spacing:.12em}.tarot-profile-astrology strong{font:700 11px/1.2 var(--serif)}.tarot-profile-astrology.ready>span{color:#714353;background:#ffffffd1;border-style:solid}.tarot-question{display:grid;gap:9px;margin-top:15px}.tarot-question>span{display:flex;align-items:center;gap:7px;color:#673341;font-size:11px;font-weight:700}.tarot-question textarea{width:100%;padding:12px 14px;color:#573740;background:#fffaf7;border:1px solid #e8d2d1;border-radius:11px;outline:0;resize:vertical;line-height:1.7}.tarot-question textarea:focus{border-color:#bb6a7d;box-shadow:0 0 0 3px #a94e6417}.tarot-start-button{min-width:160px;margin:18px 0 0 auto}.tarot-preview-panel{position:relative;min-height:590px;display:grid;grid-template-rows:1fr auto;overflow:hidden;padding:34px;color:#f7dec6;background:radial-gradient(circle at 50% 35%,rgba(194,96,111,.28),transparent 33%),linear-gradient(150deg,#541424,#260b13 72%);border:1px solid #6f2938;border-radius:22px;box-shadow:0 22px 50px #4b172533}.tarot-preview-panel:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:1px solid rgba(220,174,103,.35);border-radius:15px;pointer-events:none}.tarot-preview-panel:after{content:"";position:absolute;left:50%;top:39%;width:220px;height:220px;border:1px solid rgba(219,171,97,.13);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 70px #dbab6112;pointer-events:none}.tarot-preview-card{z-index:1;width:176px;aspect-ratio:2 / 3;align-self:center;justify-self:center;background-position:center;background-size:cover;border:1px solid #e0b56f;border-radius:9px;box-shadow:0 22px 50px #0500027a,0 0 45px #dea46021;transform:rotate(3deg);animation:tarotFloat 5s ease-in-out infinite}.tarot-preview-panel>div:last-child{z-index:1}.tarot-preview-panel>div:last-child span{color:#d6a85f;font:7px/1 Georgia,serif;letter-spacing:.25em}.tarot-preview-panel h2{margin:8px 0 7px;color:#fff0da;font:700 22px/1.2 var(--serif)}.tarot-preview-panel p{margin:0;color:#cbaeb0;font-size:10px;line-height:1.9}.tarot-table{position:relative;min-height:720px;overflow:hidden;padding:31px clamp(18px,4vw,48px) 42px;color:#f6dfcf;background:radial-gradient(circle at 50% 28%,rgba(174,76,98,.3),transparent 23%),radial-gradient(circle at 50% 75%,rgba(213,165,99,.09),transparent 30%),linear-gradient(145deg,#581526,#280a13 65%,#1c080e);border:1px solid #6b2637;border-radius:25px;box-shadow:0 25px 70px #48162340;isolation:isolate}.tarot-table:before{content:"";position:absolute;z-index:-1;top:12px;right:12px;bottom:12px;left:12px;border:1px solid rgba(219,172,100,.22);border-radius:17px;pointer-events:none}.tarot-table:after{content:"";position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0;opacity:.12;background-image:radial-gradient(circle,#f3d49b 0 1px,transparent 1.5px);background-size:72px 72px}.tarot-table-glow{position:absolute;z-index:-1;left:50%;top:210px;width:480px;height:220px;background:#bf52691f;filter:blur(60px);transform:translate(-50%);pointer-events:none}.tarot-table-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.tarot-table-head .overline{color:#d5a963}.tarot-table-head h2{margin:0;color:#fff0dd;font:700 clamp(25px,3.5vw,39px)/1.15 var(--serif);letter-spacing:.06em}.tarot-player-chips{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.tarot-player-chips span{padding:7px 10px;color:#e3c4bc;background:#fff4e50f;border:1px solid rgba(226,179,108,.22);border-radius:99px;font-size:9px}.tarot-ritual-stage{min-height:255px;display:grid;align-content:center;justify-items:center;gap:25px;padding-top:16px}.tarot-deck-stack{position:relative;width:112px;aspect-ratio:2 / 3;outline:none;perspective:900px}.phase-draw .tarot-deck-stack{transition:transform .2s ease}.phase-draw .tarot-deck-stack:hover{transform:translateY(-7px) rotate(-1deg)}.tarot-deck-stack>span{--stack-index: 0;position:absolute;top:0;right:0;bottom:0;left:0;display:block;background-position:center;background-size:cover;border:1px solid #d8ab64;border-radius:6px;box-shadow:0 10px 28px #00000061;transform:translate(calc(var(--stack-index) * .65px),calc(var(--stack-index) * -.65px));transform-origin:center}.tarot-deck-stack.is-shuffling span:nth-child(odd){animation:tarotShuffleLeft 1.25s cubic-bezier(.2,.75,.3,1) infinite}.tarot-deck-stack.is-shuffling span:nth-child(2n){animation:tarotShuffleRight 1.25s .12s cubic-bezier(.2,.75,.3,1) infinite}.tarot-deck-stack.is-cutting span:nth-child(-n+3){animation:tarotCutTop .85s ease-in-out forwards}.tarot-deck-stack.is-cutting span:nth-child(n+4){animation:tarotCutBottom .85s ease-in-out forwards}.tarot-cut-line{position:absolute;z-index:10;left:-37px;right:-37px;top:50%;height:1px;background:linear-gradient(90deg,transparent,#e0b46a,transparent);box-shadow:0 0 12px #dca761;animation:tarotCutFlash .9s ease both}.tarot-action-caption{display:flex;align-items:center;gap:8px;color:#d3b2ac;font:10px/1 var(--serif);letter-spacing:.13em}.tarot-cut-controls{width:min(440px,100%);display:grid;grid-template-columns:1fr auto;align-items:end;gap:15px}.tarot-cut-controls label{display:grid;grid-template-columns:1fr auto;gap:8px;color:#d3b6af;font-size:9px}.tarot-cut-controls strong{color:#e0b46c;font:16px/1 Georgia,serif}.tarot-cut-controls input{grid-column:1 / -1;width:100%;accent-color:#bd6c7e}.tarot-cut-controls .button{min-height:42px}.tarot-draw-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:150px;min-height:41px;padding:0 18px;color:#3f1420;background:linear-gradient(135deg,#efd3a3,#c8934e);border:1px solid #f5dfb7;border-radius:99px;box-shadow:0 8px 24px #d49f5033;font:700 10px/1 var(--serif);letter-spacing:.08em}.tarot-draw-button:disabled{opacity:.55}.tarot-spread{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,3vw,38px);align-items:start}.tarot-empty-slot{min-width:0;height:285px;display:grid;place-content:center;gap:8px;color:#eac7b17a;border:1px solid rgba(220,173,102,.2);border-radius:13px;box-shadow:inset 0 0 30px #daaa6209;text-align:center}.tarot-empty-slot span{font:italic 31px/1 Georgia,serif}.tarot-empty-slot small{font-size:8px;letter-spacing:.2em}.tarot-empty-slot.incoming{animation:tarotSlotPulse .72s ease infinite}.drawn-tarot-card{min-width:0;display:grid;justify-items:center;animation:tarotCardLand .72s cubic-bezier(.18,.82,.31,1) both}.tarot-position-label{margin-bottom:10px;color:#d7ad69;font:8px/1 Georgia,serif;letter-spacing:.18em}.tarot-flip-shell{width:min(174px,100%);aspect-ratio:2 / 3;perspective:1100px}.tarot-flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d}.drawn-tarot-card.is-revealed .tarot-flip-inner{animation:tarotReveal .85s .18s cubic-bezier(.2,.7,.25,1) both}.tarot-card-back,.tarot-card-face{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border:1px solid #d7a95e;border-radius:8px;backface-visibility:hidden;box-shadow:0 14px 35px #00000061}.tarot-card-back{background-position:center;background-size:cover}.tarot-card-face{color:#4b2730;background:radial-gradient(circle at 50% 38%,#f9e1b4,transparent 25%),linear-gradient(155deg,#fff4db,#e7c18b);transform:rotateY(180deg)}.tarot-card-face:before{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:1px solid rgba(92,40,50,.65);border-radius:4px}.tarot-card-face:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(116,55,65,.22);border-radius:50% 50% 8px 8px/31% 31% 8px 8px}.tarot-card-face.suit-wands{background:radial-gradient(circle at 50% 40%,#ffd59b,transparent 24%),linear-gradient(155deg,#fff0d0,#dca06b)}.tarot-card-face.suit-cups{background:radial-gradient(circle at 50% 40%,#e6e8f5,transparent 25%),linear-gradient(155deg,#fff4de,#b6b9d1)}.tarot-card-face.suit-swords{background:radial-gradient(circle at 50% 40%,#edf0ed,transparent 25%),linear-gradient(155deg,#fff6df,#b9c7c1)}.tarot-card-face.suit-pentacles{background:radial-gradient(circle at 50% 40%,#efe3aa,transparent 25%),linear-gradient(155deg,#fff2d3,#b9a664)}.tarot-face-frame{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;transition:transform .3s ease}.tarot-card-face.is-reversed .tarot-face-frame{transform:rotate(180deg)}.tarot-face-index{position:absolute;top:15px;left:16px;color:#683645;font:10px/1 Georgia,serif;letter-spacing:.05em}.tarot-face-orbit{width:62%;aspect-ratio:1;border:1px solid rgba(100,49,57,.5);border-radius:50%;box-shadow:0 0 0 8px #fff6dc40,0 0 0 9px #6431392e}.tarot-face-orbit:before,.tarot-face-orbit:after{content:"";position:absolute;left:50%;top:50%;width:55%;height:1px;background:#63303880;transform-origin:left}.tarot-face-orbit:before{transform:rotate(32deg)}.tarot-face-orbit:after{transform:rotate(148deg)}.tarot-face-sun{position:absolute;top:35%;width:43px;height:43px;background:#7a3445;border:7px double #e4ba79;border-radius:50%;box-shadow:0 0 0 1px #743443,0 0 20px #692f3b40}.tarot-face-mark{position:absolute;top:calc(35% + 12px);color:#f4d69f;font:700 17px/1 var(--serif)}.tarot-face-name{position:absolute;left:14px;right:14px;bottom:17px;display:grid;gap:3px;text-align:center}.tarot-face-name strong{color:#582d38;font:700 13px/1.1 var(--serif);letter-spacing:.08em}.tarot-face-name small{overflow:hidden;color:#8c6267;font:6px/1 Georgia,serif;letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap}.tarot-card-copy{width:100%;display:grid;gap:7px;margin-top:14px;text-align:left}.tarot-card-copy>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.tarot-card-copy strong{color:#fff0df;font:700 15px/1.2 var(--serif)}.tarot-card-copy>div span{flex:0 0 auto;padding:4px 6px;color:#2c1018;background:#d7ad69;border-radius:99px;font-size:7px}.tarot-card-copy>div span.reversed{color:#efd2d4;background:#7c2b3d;border:1px solid #a65a6c}.tarot-card-copy small{color:#ba9897;font-size:8px;line-height:1.5}.tarot-card-copy p{margin:0;color:#d4b8b1;font-size:9px;line-height:1.7}.tarot-reading-actions{display:flex;justify-content:center;gap:9px;margin-top:28px}.tarot-reading-actions .button{min-height:44px}.tarot-table .button.subtle{color:#ebd5cd;background:#fff9ee14;border-color:#e2b46e40}.tarot-table .button.primary{color:#35131d;background:linear-gradient(135deg,#efd3a3,#c8954e);border-color:#f0d5a6}.tarot-table button:disabled{opacity:.5}.tarot-ai-error{width:min(650px,100%);display:flex;align-items:center;justify-content:center;gap:8px;margin:18px auto 0;padding:11px 14px;color:#e2c2bd;background:#92364833;border:1px solid rgba(213,124,141,.3);border-radius:11px;font-size:10px}.tarot-ai-reading{width:min(800px,100%);margin:24px auto 0;padding:clamp(22px,4vw,38px);color:#55333c;background:linear-gradient(155deg,#fffaf0f7,#f7e2daf5);border-color:#c9a36c}.tarot-ai-reading header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:14px;border-bottom:1px solid #dfc5af}.tarot-ai-reading header span{display:flex;align-items:center;gap:7px;color:#7c3145;font:700 9px/1 Georgia,serif;letter-spacing:.17em}.tarot-ai-reading header small{color:#9d7d78;font-size:8px}.tarot-ai-reading>div{padding:20px 0;color:#61434a;font:13px/2 var(--serif);white-space:pre-wrap}.tarot-ai-reading footer{display:flex;align-items:center;gap:7px;color:#9b7977;font-size:8px}.ai-fields{grid-template-columns:1.35fr .65fr}@keyframes tarotFloat{0%,to{transform:translateY(0) rotate(3deg)}50%{transform:translateY(-10px) rotate(1deg)}}@keyframes tarotShuffleLeft{0%,to{transform:translate(0) rotate(0)}45%{transform:translate(-72px,-8px) rotate(-12deg)}70%{transform:translate(-20px,5px) rotate(-3deg)}}@keyframes tarotShuffleRight{0%,to{transform:translate(0) rotate(0)}45%{transform:translate(72px,8px) rotate(12deg)}70%{transform:translate(20px,-5px) rotate(3deg)}}@keyframes tarotCutTop{0%,to{transform:translate(0)}45%{transform:translate(-78px,-18px) rotate(-5deg)}75%{transform:translate(34px,-4px) rotate(2deg)}}@keyframes tarotCutBottom{0%,to{transform:translate(0)}45%{transform:translate(78px,18px) rotate(5deg)}75%{transform:translate(-34px,4px) rotate(-2deg)}}@keyframes tarotCutFlash{0%,to{opacity:0;transform:scaleX(.4)}45%{opacity:1;transform:scaleX(1)}}@keyframes tarotSlotPulse{50%{border-color:#e2b56cb3;box-shadow:inset 0 0 35px #daaa621a,0 0 30px #cd88571a}}@keyframes tarotCardLand{0%{opacity:0;transform:translateY(-80px) rotate(5deg) scale(.85)}to{opacity:1;transform:none}}@keyframes tarotReveal{0%,32%{transform:rotateY(0)}to{transform:rotateY(180deg)}}@media(max-width:1050px){.tarot-setup-layout{grid-template-columns:1fr 250px}.tarot-preview-panel{min-height:620px;padding-inline:25px}.tarot-preview-card{width:148px}}@media(max-width:780px){.tarot-page.site-width{width:calc(100% - 32px)}.tarot-page-heading{align-items:center}.tarot-heading-seal{width:68px;height:68px}.tarot-heading-seal span{font-size:23px}.tarot-setup-layout{grid-template-columns:1fr}.tarot-preview-panel{display:none}.tarot-profiles{grid-template-columns:1fr}.tarot-table{padding-inline:20px}.tarot-table-head{align-items:flex-start;flex-direction:column}.tarot-player-chips{justify-content:flex-start}.tarot-spread{gap:10px}.tarot-empty-slot{height:225px}.tarot-card-copy p{font-size:8px}.tarot-card-copy strong{font-size:12px}}@media(max-width:520px){.tarot-page{overflow:hidden}.tarot-page-heading p{font-size:11px}.tarot-heading-seal{display:none}.tarot-setup-main{padding:18px}.tarot-mode-switch{grid-template-columns:1fr}.tarot-mode-switch button{min-height:56px}.tarot-profile-card{padding:16px}.tarot-profile-fields{grid-template-columns:1fr}.tarot-profile-fields label.full{grid-column:auto}.tarot-start-button{width:100%}.tarot-table{min-height:650px;padding:22px 13px 30px;border-radius:19px}.tarot-table:before{top:7px;right:7px;bottom:7px;left:7px}.tarot-ritual-stage{min-height:215px}.tarot-deck-stack{width:92px}.tarot-cut-controls{grid-template-columns:1fr}.tarot-cut-controls .button{width:100%}.tarot-spread{grid-template-columns:repeat(3,1fr);gap:6px}.tarot-empty-slot{height:170px}.tarot-empty-slot small,.tarot-position-label{font-size:6px;letter-spacing:.08em}.tarot-flip-shell{width:100%}.tarot-card-copy{gap:5px;margin-top:9px}.tarot-card-copy>div{align-items:flex-start;flex-direction:column;gap:4px}.tarot-card-copy strong{font-size:10px}.tarot-card-copy small{font-size:6px}.tarot-card-copy p{display:none}.tarot-face-index{top:10px;left:10px;font-size:7px}.tarot-face-sun{width:30px;height:30px;border-width:5px}.tarot-face-mark{top:calc(35% + 9px);font-size:11px}.tarot-face-name{left:8px;right:8px;bottom:10px}.tarot-face-name strong{font-size:8px}.tarot-face-name small{display:none}.tarot-reading-actions{align-items:stretch;flex-direction:column-reverse}.tarot-reading-actions .button{width:100%}.tarot-ai-reading{padding:20px 16px}.tarot-ai-reading header{align-items:flex-start;flex-direction:column}.ai-fields{grid-template-columns:1fr}.ai-fields label.full{grid-column:auto}}.ai-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-fields label.full{grid-column:1 / -1}@media(max-width:780px){.tarot-preview-panel{min-height:470px;display:grid;padding:26px}.ai-fields{grid-template-columns:1fr}.ai-fields label.full{grid-column:auto}}@media(max-width:520px){.tarot-preview-panel{min-height:430px;padding:22px}}.checkin-page{min-height:100vh}.checkin-heading{margin-bottom:24px}.checkin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px;overflow:hidden;padding:0}.checkin-stats>div{min-width:0;min-height:92px;display:grid;align-content:center;gap:4px;padding:17px 21px;border-right:1px solid var(--border)}.checkin-stats>div:last-child{border-right:0}.checkin-stats span{color:#9d7b85;font-size:9px}.checkin-stats strong{color:var(--rose-950);font:700 25px/1 Georgia,serif}.checkin-stats small{overflow:hidden;color:#b0929a;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.checkin-workspace{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.72fr);gap:20px;align-items:stretch}.checkin-map-panel,.checkin-composer{min-width:0;padding:24px}.checkin-map-panel>header,.checkin-composer>header{min-height:48px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:17px}.checkin-map-panel h2,.checkin-composer h2{margin:5px 0 0;color:var(--rose-950);font:700 23px/1.2 var(--serif)}.checkin-map-panel>header>span{max-width:45%;color:#a27b87;font-size:9px;text-align:right}.checkin-map-shell{position:relative;min-height:610px;overflow:hidden;background:#f2e5e4;border:1px solid var(--border);border-radius:17px;isolation:isolate}.checkin-map-host{position:absolute;top:0;right:0;bottom:0;left:0}.checkin-map-legend{position:absolute;z-index:5;left:14px;top:14px;display:flex;gap:6px;padding:7px;color:#77505c;background:#fffbf8eb;border:1px solid rgba(226,190,198,.85);border-radius:99px;box-shadow:0 7px 22px #5023311a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.checkin-map-legend span{display:flex;align-items:center;gap:5px;padding:0 6px;font-size:8px}.checkin-map-legend i{width:8px;height:8px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #5023311f}.checkin-map-legend i.one{background:#b64065}.checkin-map-legend i.partner{background:#6c629f}.checkin-map-current{position:absolute;z-index:5;left:14px;bottom:14px;max-width:calc(100% - 28px);display:flex;align-items:center;gap:6px;padding:8px 11px;color:#713d4e;background:#fffaf7eb;border:1px solid rgba(230,198,204,.88);border-radius:10px;box-shadow:0 8px 22px #5023311a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:9px}.checkin-map-pin{position:relative;width:32px;height:32px;display:grid;place-items:center;padding:0;background:#b64065;border:3px solid #fff8f5;border-radius:50% 50% 50% 8px;box-shadow:0 8px 18px #64233657;transform:rotate(-45deg);transition:transform .2s ease,box-shadow .2s ease}.checkin-map-pin.person-partner{background:#6c629f}.checkin-map-pin.draft{background:#d58d3c}.checkin-map-pin i{width:8px;height:8px;background:#fff;border-radius:50%}.checkin-map-pin.selected{box-shadow:0 0 0 7px #b9476638,0 10px 24px #5d1f316b;transform:rotate(-45deg) scale(1.13)}.checkin-composer{display:flex;flex-direction:column}.checkin-person-switch{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:5px;background:#f7e9eb;border:1px solid #edd0d6;border-radius:12px}.checkin-person-switch button{min-height:39px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:#9a6d79;background:transparent;border-radius:8px;font-size:10px}.checkin-person-switch button.active{color:#fff;background:var(--rose-700);box-shadow:0 6px 14px #7e30462e}.checkin-locate-button{min-height:45px;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:13px;color:#fff;background:linear-gradient(135deg,#ad3f61,#7f2945);border-radius:11px;box-shadow:0 9px 22px #802a432e;font-size:11px;font-weight:700}.checkin-locate-button:disabled{opacity:.6}.checkin-location-ready{display:grid;grid-template-columns:auto 1fr auto;align-items:flex-start;gap:9px;margin-top:12px;padding:12px;color:#a13d5d;background:#fff8f6;border:1px solid #edd0d6;border-radius:11px}.checkin-location-ready>div{min-width:0;display:grid;gap:3px}.checkin-location-ready strong{overflow:hidden;color:#663342;font:700 12px/1.3 var(--serif);text-overflow:ellipsis;white-space:nowrap}.checkin-location-ready span{color:#92737c;font-size:8px;line-height:1.5}.checkin-location-ready code{color:#a34f68;font-size:8px}.checkin-location-ready small{color:#b29199;font-size:8px}.checkin-location-ready button{display:grid;place-items:center;color:#a77a87;background:transparent}.checkin-location-empty{min-height:88px;display:grid;place-content:center;justify-items:center;gap:7px;margin-top:12px;color:#b39099;background:#fdf5f4b8;border:1px dashed #e5c4cb;border-radius:11px;font-size:9px}.checkin-photo-picker{position:relative;min-height:185px;display:grid;place-content:center;justify-items:center;gap:7px;overflow:hidden;margin-top:12px;color:#a05168;background:linear-gradient(145deg,#fffaf7,#f8e9eb);border:1px dashed #dba9b5;border-radius:13px;text-align:center;cursor:pointer}.checkin-photo-picker>strong{color:#75404f;font:700 13px/1.3 var(--serif)}.checkin-photo-picker>span{color:#aa8992;font-size:8px}.checkin-photo-picker input{position:absolute;width:1px;height:1px;opacity:0}.checkin-photo-picker.has-photo{background:#261219;border-style:solid}.checkin-photo-picker>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain}.checkin-photo-picker>i{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:7px;color:#fff;background:#31141d94;font-size:10px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.checkin-photo-picker>b{position:absolute;right:9px;bottom:9px;display:inline-flex;align-items:center;gap:4px;padding:6px 8px;color:#fff;background:#481c2ac7;border:1px solid rgba(255,255,255,.24);border-radius:99px;font-size:8px;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.checkin-note{position:relative;display:grid;gap:6px;margin-top:12px}.checkin-note>span{color:#805563;font-size:9px}.checkin-note textarea{min-height:78px;padding:10px 12px 22px;color:#573943;background:#fffaf8;border:1px solid #ead0d5;border-radius:11px;outline:0;resize:vertical;font:11px/1.7 var(--serif)}.checkin-note textarea:focus{border-color:#c7788d;box-shadow:0 0 0 3px #b44d6a17}.checkin-note small{position:absolute;right:9px;bottom:7px;color:#b7959e;font-size:7px}.checkin-submit{width:100%;margin-top:12px}.checkin-message{margin:10px 0 0;color:#8f6170;font-size:9px;line-height:1.6;text-align:center}.checkin-history{margin-top:42px}.checkin-history .section-title>p{max-width:360px;margin:0;color:#a0818a;font-size:9px;text-align:right}.checkin-loading{min-height:180px;display:flex;align-items:center;justify-content:center;gap:8px;color:#a47784;font-size:10px}.checkin-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:19px}.checkin-record{min-width:0;display:grid;grid-template-columns:185px minmax(0,1fr);overflow:hidden;padding:0;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.checkin-record:hover{transform:translateY(-2px);border-color:#d99dad;box-shadow:0 13px 32px #5627341c}.checkin-record.selected{border-color:#b75370;box-shadow:0 0 0 2px #b753701a,0 13px 32px #5627341c}.checkin-record-photo{min-height:190px;background:#f5e6e7}.checkin-record-photo>a{position:relative;width:100%;height:100%;display:block;overflow:hidden}.checkin-record-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.checkin-record:hover .checkin-record-photo img{transform:scale(1.035)}.checkin-record-photo>a>span{position:absolute;left:9px;bottom:9px;display:flex;align-items:center;gap:5px;padding:6px 8px;color:#fff;background:#401925b3;border-radius:99px;font-size:7px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.checkin-record-photo>div{height:100%;display:grid;place-content:center;justify-items:center;gap:8px;padding:18px;color:#b18b95;text-align:center}.checkin-record-photo>div span{font-size:8px;line-height:1.6}.checkin-record-body{min-width:0;display:flex;flex-direction:column;padding:20px}.checkin-record-body header{display:flex;align-items:center;justify-content:space-between;gap:9px}.checkin-record-body time{color:#ad9199;font-size:8px}.person-badge{padding:5px 8px;color:#fff;background:#b64065;border-radius:99px;font-size:8px}.person-partner .person-badge{background:#6c629f}.checkin-record-body h3{margin:15px 0 6px;color:#643342;font:700 18px/1.3 var(--serif)}.checkin-record-body p.address{display:flex;align-items:flex-start;gap:5px;margin:0;color:#987781;font-size:8px;line-height:1.6}.checkin-record-body p.address svg{flex:0 0 auto;margin-top:1px}.checkin-record-body p.note{margin:13px 0;color:#76525d;font:11px/1.75 var(--serif)}.checkin-record-body footer{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto;padding-top:14px;border-top:1px solid #f0dcdf}.checkin-record-body footer code{color:#b0838f;font-size:7px}.checkin-record-body footer a{display:inline-flex;align-items:center;gap:4px;color:#9e3d5a;font-size:8px;white-space:nowrap}@media(max-width:1120px){.checkin-workspace{grid-template-columns:1fr}.checkin-map-shell{min-height:530px}.checkin-composer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.checkin-composer>header,.checkin-person-switch,.checkin-submit,.checkin-message{grid-column:1 / -1}.checkin-locate-button,.checkin-location-ready,.checkin-location-empty,.checkin-photo-picker,.checkin-note{margin-top:0}.checkin-record-grid{grid-template-columns:1fr}}@media(max-width:780px){.checkin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.checkin-stats>div:nth-child(2){border-right:0}.checkin-stats>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.checkin-map-panel,.checkin-composer{padding:18px}.checkin-map-shell{min-height:450px}.checkin-composer{grid-template-columns:1fr}.checkin-composer>header,.checkin-person-switch,.checkin-submit,.checkin-message{grid-column:auto}.checkin-history .section-title>p{text-align:left}.checkin-record{grid-template-columns:155px minmax(0,1fr)}}@media(max-width:520px){.checkin-heading .button{width:100%}.checkin-stats>div{min-height:82px;padding:13px}.checkin-stats strong{font-size:21px}.checkin-map-shell{min-height:390px}.checkin-map-legend{left:8px;top:8px;max-width:calc(100% - 16px)}.checkin-map-current{left:8px;bottom:8px;max-width:calc(100% - 16px)}.checkin-photo-picker{min-height:210px}.checkin-record{grid-template-columns:1fr}.checkin-record-photo{min-height:245px}.checkin-record-body{min-height:190px}.checkin-record-body footer{align-items:flex-start;flex-direction:column}.checkin-record-body footer a{min-height:30px}}.timeline-heading{align-items:flex-end}.timeline-heading>p{display:flex;align-items:center;gap:7px;margin:0 0 5px;color:#9b7480;font-size:10px}.timeline-scroller{position:relative;height:clamp(570px,76vh,840px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:#203429;border:1px solid rgba(112,93,75,.32);border-radius:24px;box-shadow:0 26px 68px #3027223d;cursor:grab;scrollbar-color:rgba(255,244,218,.42) transparent;touch-action:pan-y;-webkit-user-select:none;user-select:none}.timeline-scroller.dragging{cursor:grabbing}.timeline-scroll-space{position:relative;width:100%}.timeline-stage{position:sticky;z-index:0;top:0;width:100%;height:clamp(570px,76vh,840px);overflow:hidden;isolation:isolate;background:#203429}.timeline-nature,.timeline-nature-layer{position:absolute;top:0;right:0;bottom:0;left:0}.timeline-nature{z-index:-8;overflow:hidden;background:#203429}.timeline-nature-layer{top:-22px;right:-22px;bottom:-22px;left:-22px;background-position:center;background-size:cover;transform:translate3d(0,var(--nature-y),0) scale(1.07);will-change:opacity,transform}.timeline-nature-layer.dawn{opacity:var(--dawn-opacity);background-image:linear-gradient(180deg,#7495ac1f,#ffbe7729 45%,#474c342e),var(--theme-timeline,url(/assets/timeline-nature-v2.webp));filter:brightness(.82) saturate(.88) sepia(.16)}.timeline-nature-layer.noon{opacity:var(--noon-opacity);background-image:linear-gradient(180deg,#c4e6ff05,#fff5bf0f),var(--theme-timeline,url(/assets/timeline-nature-v2.webp));filter:brightness(1.06) saturate(1.1) contrast(1.02)}.timeline-nature-layer.night{opacity:var(--night-opacity);background-image:linear-gradient(180deg,#0a193d94,#1823447a 43%,#081425ab),var(--theme-timeline,url(/assets/timeline-nature-v2.webp));filter:brightness(.49) saturate(.72) contrast(1.08) hue-rotate(8deg)}.timeline-atmosphere{position:absolute;z-index:-6;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.timeline-atmosphere:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,transparent 36%,rgba(18,31,24,.25) 100%),linear-gradient(180deg,transparent 62%,rgba(22,30,20,.24))}.timeline-sun,.timeline-moon{position:absolute;display:block;border-radius:50%;will-change:opacity,transform}.timeline-sun{left:50%;top:-5%;width:clamp(120px,14vw,194px);aspect-ratio:1;opacity:var(--noon-opacity);background:radial-gradient(circle,#fffef0 0 10%,rgba(255,244,201,.75) 11% 22%,rgba(255,226,149,.25) 40%,transparent 72%);filter:drop-shadow(0 0 25px rgba(255,230,166,.28));transform:translate(-50%,-50%)}.timeline-moon{right:20%;top:10%;width:clamp(42px,4.8vw,64px);aspect-ratio:1;opacity:var(--night-opacity);background:radial-gradient(circle at 66% 34%,rgba(180,188,184,.35) 0 4%,transparent 4.8%),radial-gradient(circle at 34% 68%,rgba(180,188,184,.3) 0 5%,transparent 5.8%),radial-gradient(circle at 38% 34%,#fffde4 0,#eee9cb 62%,#d7dbd5);box-shadow:0 0 24px 9px #c9e1ff3d,0 0 70px 24px #84addf24}.timeline-stars{position:absolute;top:0;right:0;bottom:0;left:0;opacity:var(--night-opacity);background-image:radial-gradient(circle at 12% 14%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 27% 8%,#fff9d7 0 1.2px,transparent 1.8px),radial-gradient(circle at 42% 20%,#fff 0 .8px,transparent 1.4px),radial-gradient(circle at 66% 11%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 81% 24%,#fff7cf 0 1.1px,transparent 1.7px),radial-gradient(circle at 91% 7%,#fff 0 .8px,transparent 1.4px);filter:drop-shadow(0 0 3px rgba(255,255,255,.8))}.timeline-event{position:absolute;z-index:var(--event-z);top:var(--event-y);left:50%;width:clamp(205px,27vw,330px);max-height:190px;overflow:hidden;padding:14px 16px 15px;color:#65434d;background:#fffcf6e6;border:1px solid rgba(255,238,218,.72);border-radius:14px;box-shadow:0 13px 35px #1c23183d;opacity:var(--event-opacity);transform:translate3d(-50%,-50%,0) translate(var(--event-x)) scale(var(--event-scale));transform-origin:center;-webkit-backdrop-filter:blur(11px) saturate(1.1);backdrop-filter:blur(11px) saturate(1.1);will-change:transform,opacity;pointer-events:none}.timeline-event:after{content:"";position:absolute;top:50%;width:32px;height:1px;background:#fff5d9b8;box-shadow:0 1px 4px #2532203d}.timeline-event.side-left:after{right:-32px}.timeline-event.side-right:after{left:-32px}.timeline-event header,.timeline-event footer{display:flex;align-items:center;justify-content:space-between;gap:9px;color:#98757e;font-size:8px}.timeline-event header>span{display:inline-flex;align-items:center;gap:5px;color:#a5405f;font-weight:700}.timeline-event h2{margin:9px 0 5px;color:#633342;font:700 clamp(15px,1.7vw,21px)/1.2 var(--serif)}.timeline-event p{display:-webkit-box;overflow:hidden;margin:0 0 9px;font:10px/1.65 var(--serif);-webkit-box-orient:vertical;-webkit-line-clamp:2}.timeline-event.future{color:#4b4a6a;background:#f4f7ffe3;border-color:#d5e1ffc2}.timeline-event.future header>span{color:#6975a7}.timeline-walkers{position:absolute;z-index:240;left:50%;bottom:1.5%;width:clamp(170px,25vw,270px);aspect-ratio:1;background:url(/assets/timeline-walk-cycle-v2.png) 0 0 / 300% 200% no-repeat;filter:drop-shadow(0 14px 10px rgba(38,42,26,.3));transform:translate3d(-50%,0,0);animation:timelineWalkCycle .72s step-end infinite;animation-play-state:paused;will-change:background-position;pointer-events:none}.timeline-walkers.walking{animation-play-state:running}@keyframes timelineWalkCycle{0%,16.66%{background-position:0 0}16.67%,33.32%{background-position:50% 0}33.33%,49.99%{background-position:100% 0}50%,66.65%{background-position:0 100%}66.66%,83.32%{background-position:50% 100%}83.33%,to{background-position:100% 100%}}.reservation-heading{align-items:center}.reservation-intro{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-bottom:26px;padding:23px 25px;color:#9d4662}.reservation-intro h2{margin:0 0 5px;color:#673644;font:700 20px/1.25 var(--serif)}.reservation-intro p{margin:0;color:#9c7b84;font-size:9px}.reservation-intro>span{padding:8px 11px;color:#9f4a64;background:#f9e7eb;border-radius:99px;font-size:9px;white-space:nowrap}.reservation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.reservation-card{position:relative;min-height:285px;display:flex;flex-direction:column;padding:21px;overflow:hidden}.reservation-card:before{content:"";position:absolute;width:120px;height:120px;top:-58px;right:-45px;background:#b54e6d14;border-radius:50%}.reservation-card>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.reservation-card>header>span{display:inline-flex;align-items:center;gap:5px;color:#a36b7a;font-size:8px}.reservation-card>header>div{display:flex;gap:5px}.reservation-card>header button{width:29px;height:29px;display:grid;place-items:center;color:#9a6574;background:#f8e9ec;border-radius:50%}.reservation-card time{display:flex;align-items:baseline;gap:8px;margin-top:27px;color:#9b7180}.reservation-card time strong{color:#9d3f5d;font:700 28px/1 var(--serif)}.reservation-card time span{font-size:9px}.reservation-card h2{margin:15px 0 8px;color:#62323f;font:700 21px/1.3 var(--serif)}.reservation-card>p{margin:0 0 12px;color:#795b64;font:10px/1.75 var(--serif)}.reservation-card footer{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:auto;padding-top:15px;border-top:1px solid #f0dcdf;color:#a07a85;font-size:8px}.reservation-card footer b{color:#a03e5d;font-size:9px}.reservation-card.secret-plan{border-style:dashed;background:#fffbf8c7}.reservation-card.secret-plan:after{content:"SECRET";position:absolute;right:15px;bottom:50px;color:#88495b14;font:700 28px/1 Georgia,serif;transform:rotate(-9deg)}.owner-badge,.quick-report-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;color:#8f6170;background:#f7e7ea;border-radius:99px;font-size:7px}.member-passcode-fields{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}.member-passcode-title{grid-column:1 / -1;display:flex;align-items:center;gap:7px;color:#754451;font:700 12px/1.3 var(--serif)}.settings-fields input:disabled,.settings-fields select:disabled{color:#8f7c82;background:#f3eeee;cursor:not-allowed}.text-button:disabled{opacity:.65;cursor:not-allowed}.deferred-page-loading{min-height:360px;display:flex;align-items:center;justify-content:center;gap:9px;margin:30px auto;color:#9a6373;font-size:10px}.checkin-person-switch button:disabled{opacity:.4;cursor:not-allowed}.quick-report-toggle{min-height:58px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;color:#976b78;background:#fff9f4;border:1px solid #ecd3d4;border-radius:12px;text-align:left}.quick-report-toggle>span{display:grid;gap:3px}.quick-report-toggle strong{color:#70434f;font-size:10px}.quick-report-toggle small{font-size:7px;line-height:1.45}.quick-report-toggle>i{position:relative;width:35px;height:20px;background:#ddc9cd;border-radius:99px;transition:background .2s ease}.quick-report-toggle>i:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;background:#fff;border-radius:50%;box-shadow:0 2px 6px #4220282e;transition:transform .2s ease}.quick-report-toggle.active{color:#fff4d9;background:linear-gradient(135deg,#ba8050,#9b4b5c);border-color:transparent}.quick-report-toggle.active strong{color:#fff}.quick-report-toggle.active>i{background:#ffffff5c}.quick-report-toggle.active>i:after{transform:translate(15px)}.checkin-submit.quick{background:linear-gradient(135deg,#bc7c45,#9d3d5b)}.checkin-record-body header .quick-report-badge{margin-right:auto;color:#a26531;background:#fff0d6}.checkin-record-body footer>span{color:#a06a3e;font-size:7px}@media(max-width:1050px){.topbar nav{max-width:100%;overflow-x:auto;justify-self:stretch}.topbar nav button{flex:0 0 auto;padding-inline:9px}.topbar nav button span{display:inline}.reservation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.topbar nav button span{display:inline}.timeline-heading{align-items:flex-start}.timeline-heading>p{margin-top:10px}.timeline-scroller,.timeline-stage{height:650px}.timeline-scroller{cursor:auto;-webkit-overflow-scrolling:touch}.timeline-stage{contain:paint;transform:translateZ(0);backface-visibility:hidden}.timeline-nature-layer{top:0;right:0;bottom:0;left:0;transform:none;filter:none!important;will-change:opacity;backface-visibility:hidden}.timeline-event{width:min(39vw,245px);padding:11px 12px;-webkit-backdrop-filter:none;backdrop-filter:none;backface-visibility:hidden}.timeline-event p{-webkit-line-clamp:1}.timeline-walkers{width:190px}.reservation-grid{grid-template-columns:1fr}.reservation-intro{grid-template-columns:auto 1fr}.reservation-intro>span{grid-column:1 / -1;justify-self:start}.quick-report-toggle,.member-passcode-title{grid-column:auto}}@media(max-width:520px){.timeline-page.site-width{width:calc(100% - 20px)}.timeline-scroller,.timeline-stage{height:610px;border-radius:17px}.timeline-event{width:43vw;max-height:150px;padding:9px 10px;border-radius:10px}.timeline-event header{align-items:flex-start;flex-direction:column;gap:3px}.timeline-event h2{margin-block:6px 3px;font-size:13px}.timeline-event p{display:none}.timeline-event footer{font-size:7px}.timeline-walkers{width:155px;bottom:5%}.reservation-heading .button{width:100%}.reservation-intro{padding:18px}.reservation-intro h2{font-size:17px}.reservation-card{min-height:260px}.member-passcode-fields{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.timeline-walkers{animation:none!important;background-position:0 0}}.admin-mode .topbar{overflow:visible}.admin-mode .admin-navigation{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:flex-end;gap:7px;overflow:visible}.admin-nav-group{position:relative;height:100%;display:flex;align-items:center}.admin-mode .topbar .admin-nav-trigger{height:40px;display:inline-flex;align-items:center;gap:5px;padding:0 13px;color:inherit;background:#ffffff21;border:1px solid transparent;border-radius:999px;opacity:.72;white-space:nowrap;transition:opacity .2s ease,background .2s ease,border-color .2s ease}.admin-mode .topbar .admin-nav-trigger:after{display:none}.admin-mode .topbar .admin-nav-trigger:hover,.admin-mode .topbar .admin-nav-trigger.active,.admin-mode .topbar .admin-nav-group.expanded .admin-nav-trigger{opacity:1;background:#ffffff75;border-color:#8f495c21}.page-home.admin-mode .topbar .admin-nav-trigger:hover,.page-home.admin-mode .topbar .admin-nav-trigger.active,.page-home.admin-mode .topbar .admin-nav-group.expanded .admin-nav-trigger{background:#ffffff26;border-color:#ffffff3b}.admin-nav-trigger svg{transition:transform .2s ease}.admin-nav-group.expanded .admin-nav-trigger svg{transform:rotate(180deg)}.admin-nav-menu{position:absolute;z-index:130;top:calc(100% - 8px);left:50%;min-width:176px;display:grid;gap:4px;padding:8px;color:#714454;background:#fffaf8f7;border:1px solid rgba(166,96,115,.18);border-radius:15px;box-shadow:0 18px 46px #3919242e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translate(-50%);animation:adminMenuIn .18s ease-out both}.admin-nav-group:last-child .admin-nav-menu{right:0;left:auto;transform:none}.admin-mode .topbar .admin-nav-menu button{width:100%;height:40px;display:flex;align-items:center;gap:10px;padding:0 12px;color:#845768;background:transparent;border-radius:10px;opacity:1;white-space:nowrap;font-size:11px;text-align:left}.admin-mode .topbar .admin-nav-menu button:after{display:none}.admin-mode .topbar .admin-nav-menu button:hover,.admin-mode .topbar .admin-nav-menu button.active{color:#fff;background:linear-gradient(135deg,#a84562,#7e2945)}@keyframes adminMenuIn{0%{opacity:0;margin-top:-5px}to{opacity:1;margin-top:0}}@media(max-width:1050px){.admin-mode .topbar-inner{grid-template-columns:38px minmax(0,1fr)}.admin-mode .admin-navigation{justify-content:flex-end;gap:3px}.admin-mode .topbar .admin-nav-trigger{padding-inline:10px;font-size:10px}}@media(max-width:780px){.admin-mode .topbar-inner{grid-template-columns:auto minmax(0,1fr)}.admin-mode .admin-navigation{justify-content:flex-end;gap:1px;overflow:visible}.admin-mode .topbar .admin-nav-trigger{height:36px;gap:2px;padding:0 7px;font-size:10px}.admin-mode .topbar .admin-nav-trigger svg{display:block;width:11px}.admin-nav-menu{position:fixed;top:62px;right:12px;left:auto;min-width:180px;transform:none}.admin-nav-group:last-child .admin-nav-menu{right:12px}}@media(max-width:430px){.admin-mode .topbar .admin-nav-trigger{padding-inline:5px;font-size:9px}.admin-mode .topbar .admin-nav-trigger svg{display:none}}.public-nav-group{position:relative;flex:0 0 auto;height:100%;display:flex;align-items:center}.topbar nav .public-nav-trigger{gap:5px}.topbar nav .public-nav-trigger>svg:last-child{width:12px;transition:transform .2s ease}.public-nav-group.expanded .public-nav-trigger>svg:last-child{transform:rotate(180deg)}.public-nav-menu{position:fixed;z-index:10020;width:184px;display:grid;gap:4px;padding:8px;color:#714454;background:#fffaf8fa;border:1px solid rgba(166,96,115,.18);border-radius:15px;box-shadow:0 18px 46px #39192438;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:adminMenuIn .18s ease-out both}.public-nav-menu button,.public-nav-menu a{width:100%;height:40px;display:flex;align-items:center;gap:10px;padding:0 12px;color:#845768;background:transparent;border:0;border-radius:10px;font:inherit;font-size:11px;text-decoration:none;text-align:left}.public-nav-menu button:hover,.public-nav-menu a:hover,.public-nav-menu button.active{color:#fff;background:linear-gradient(135deg,#a84562,#7e2945)}.public-nav-menu button svg,.public-nav-menu a svg{width:16px}.mailbox-page{--mail-rose: #a84865;--mail-wine: #6f233f;--mail-cream: #fff8eb}.mailbox-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:28px}.mailbox-heading h1{margin:0;color:var(--rose-950);font:700 clamp(38px,4.2vw,58px)/1.15 var(--serif)}.mailbox-notice{margin-bottom:17px}.mailbox-stage{position:relative;min-height:610px;overflow:hidden;color:#fff;background:#2c2438 url(/assets/time-mailbox/mailbox-garden.webp) center/cover no-repeat;border-radius:28px;box-shadow:0 30px 80px #2f1b2738;isolation:isolate}.mailbox-scene-shade{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#1a192fe3,#271c32ad 38%,#1f182714 70%),linear-gradient(0deg,rgba(19,19,34,.52),transparent 48%)}.mailbox-stage-copy{position:absolute;z-index:4;left:clamp(28px,5vw,70px);top:50%;width:min(455px,42%);transform:translateY(-50%)}.mailbox-stage-kicker{display:flex;align-items:center;gap:9px;margin-bottom:20px;color:#f5cad4;font:700 10px/1 Georgia,serif;letter-spacing:.22em}.mailbox-stage-copy h2{margin:0;font:700 clamp(35px,4vw,58px)/1.16 var(--serif);letter-spacing:.03em;text-shadow:0 8px 34px rgba(0,0,0,.2)}.mailbox-stage-copy p{max-width:410px;margin:20px 0 0;color:#fff7f2c2;font:13px/1.9 var(--serif);letter-spacing:.05em}.mailbox-open-button,.mailbox-wait-count{width:fit-content;min-height:43px;display:inline-flex;align-items:center;gap:8px;margin-top:24px;padding:0 17px;color:#6f3047;background:#fff7ebf0;border:1px solid rgba(255,255,255,.42);border-radius:999px;box-shadow:0 12px 30px #130a1333;font-size:11px}.mailbox-open-button:hover{transform:translateY(-2px);box-shadow:0 15px 35px #130a1347}.mailbox-wait-count{color:#f8e5dd;background:#4e304d9e;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.mailbox-animation-area{position:absolute;z-index:3;top:0;right:0;bottom:0;left:0;pointer-events:none}.mailbox-letter-sprite{position:absolute;left:58%;top:31%;width:clamp(230px,24vw,330px);aspect-ratio:1;background-image:url(/assets/time-mailbox/letter-sprites.png);background-repeat:no-repeat;background-size:300% 200%;opacity:0;filter:drop-shadow(0 25px 25px rgba(19,11,21,.34));transform-origin:center}.mailbox-letter-sprite.frame-paper{background-position:0 0}.mailbox-letter-sprite.frame-folded{background-position:50% 0}.mailbox-letter-sprite.frame-sealed{background-position:0 100%}.mailbox-letter-sprite.frame-glow{background-position:50% 100%}.mailbox-letter-sprite.frame-open{background-position:100% 100%}.phase-folding .mailbox-letter-sprite{opacity:1;animation:letterFold .72s cubic-bezier(.2,.75,.22,1) both}.phase-sealing .mailbox-letter-sprite{opacity:1;animation:waxSet .8s cubic-bezier(.24,.8,.28,1) both}.phase-posting .mailbox-letter-sprite{opacity:1;animation:letterPost 1.2s cubic-bezier(.48,.02,.58,1) both}.phase-arriving .mailbox-letter-sprite{opacity:1;animation:letterArrive 1.25s cubic-bezier(.16,.76,.22,1) both}.phase-ready .mailbox-letter-sprite{opacity:1;transform:translate(-10%,22%) scale(.88) rotate(-2deg);animation:letterHover 3s ease-in-out infinite}.phase-waiting .mailbox-letter-sprite{opacity:.72;transform:translate(28%,-10%) scale(.42) rotate(-7deg);animation:sealedWait 3.4s ease-in-out infinite}.phase-opening .mailbox-letter-sprite{opacity:1;animation:envelopeOpen 1.42s cubic-bezier(.16,.76,.2,1) both}.phase-reading .mailbox-letter-sprite{opacity:0;transform:translate(-10%,20%) scale(1.05)}.mailbox-glow-ring{position:absolute;right:20%;top:30%;width:230px;height:170px;opacity:0;background:radial-gradient(circle,rgba(255,211,132,.48),rgba(255,182,125,.08) 50%,transparent 72%);border-radius:50%;filter:blur(10px)}.phase-posting .mailbox-glow-ring,.phase-sent .mailbox-glow-ring,.phase-arriving .mailbox-glow-ring{opacity:1;animation:mailboxGlow 1.3s ease-in-out infinite}.mailbox-wax-spark{position:absolute;left:69%;top:55%;width:90px;height:90px;opacity:0}.phase-sealing .mailbox-wax-spark{opacity:1}.mailbox-wax-spark i{position:absolute;left:50%;top:50%;width:5px;height:5px;background:#ffd99f;border-radius:50%;box-shadow:0 0 12px #ffc77a;animation:waxSpark .8s ease-out both}.mailbox-wax-spark i:nth-child(2){--sx:28px;--sy:-23px;animation-delay:.08s}.mailbox-wax-spark i:nth-child(3){--sx:-31px;--sy:-18px;animation-delay:.14s}.mailbox-wax-spark i:nth-child(4){--sx:18px;--sy:30px;animation-delay:.2s}.mailbox-fireflies{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;pointer-events:none}.mailbox-fireflies i{position:absolute;width:4px;height:4px;background:#ffe39a;border-radius:50%;box-shadow:0 0 12px 3px #ffd3656e;animation:firefly 4s ease-in-out infinite}.mailbox-fireflies i:nth-child(1){left:7%;top:21%}.mailbox-fireflies i:nth-child(2){left:14%;top:70%;animation-delay:-1.3s}.mailbox-fireflies i:nth-child(3){left:25%;top:32%;animation-delay:-2.1s}.mailbox-fireflies i:nth-child(4){left:35%;top:79%;animation-delay:-.8s}.mailbox-fireflies i:nth-child(5){left:44%;top:17%;animation-delay:-2.7s}.mailbox-fireflies i:nth-child(6){left:53%;top:68%;animation-delay:-1.7s}.mailbox-fireflies i:nth-child(7){left:63%;top:14%;animation-delay:-3.2s}.mailbox-fireflies i:nth-child(8){left:72%;top:75%;animation-delay:-.4s}.mailbox-fireflies i:nth-child(9){left:82%;top:21%;animation-delay:-2.4s}.mailbox-fireflies i:nth-child(10){left:91%;top:62%;animation-delay:-1.1s}.mailbox-fireflies i:nth-child(11){left:48%;top:46%;animation-delay:-3.6s}.mailbox-fireflies i:nth-child(12){left:88%;top:42%;animation-delay:-2.9s}.mailbox-reading-letter{position:absolute;z-index:8;right:clamp(25px,5vw,65px);top:50%;width:min(500px,45%);max-height:84%;display:flex;flex-direction:column;padding:47px 48px 36px;color:#65444c;background:linear-gradient(135deg,#fffceffa,#faebd9fa),url(/assets/paper-bg.webp) center/cover;border:1px solid rgba(255,255,255,.75);box-shadow:0 32px 70px #160d1861;transform:translateY(-50%) rotate(-.5deg);animation:readingPaperIn .75s cubic-bezier(.17,.75,.22,1) both}.mailbox-reading-letter:before,.mailbox-reading-letter:after{content:"";position:absolute;width:100px;height:80px;opacity:.32;background:radial-gradient(ellipse at bottom left,transparent 48%,#c77c8f 50%,transparent 54%);pointer-events:none}.mailbox-reading-letter:before{left:6px;top:5px;transform:rotate(16deg)}.mailbox-reading-letter:after{right:8px;bottom:7px;transform:rotate(196deg)}.mailbox-reading-letter>button{position:absolute;z-index:2;right:16px;top:16px;width:34px;height:34px;display:grid;place-items:center;color:#9a6572;background:#a7596c14;border-radius:50%}.mailbox-reading-letter>span{color:#a26a76;font:700 9px/1 Georgia,serif;letter-spacing:.2em}.mailbox-reading-letter h3{margin:22px 0 18px;color:#75394c;font:700 29px/1.35 var(--serif)}.mailbox-reading-letter>p{min-height:170px;margin:0;overflow-y:auto;white-space:pre-wrap;color:#70535a;font:15px/2.05 var(--serif);letter-spacing:.035em}.mailbox-reading-letter footer{display:flex;justify-content:space-between;gap:18px;margin-top:26px;padding-top:16px;border-top:1px solid rgba(144,87,101,.18);color:#a17b82;font:9px/1.5 Georgia,serif;letter-spacing:.08em}.mailbox-reading-letter.style-starlight{background:linear-gradient(135deg,#f7f0ed,#eae3ee)}.mailbox-reading-letter.style-dusk{background:linear-gradient(135deg,#fff8e9,#f4dfcf)}.mailbox-dashboard{display:grid;grid-template-columns:235px minmax(0,1fr);gap:20px;margin-top:22px}.mailbox-summary{align-self:start;display:grid;overflow:hidden}.mailbox-summary>div{min-height:92px;display:flex;align-items:center;gap:14px;padding:18px 21px;color:#a14862;border-bottom:1px solid var(--border)}.mailbox-summary>div:last-child{border-bottom:0}.mailbox-summary span{display:grid;gap:4px;color:#9a7882;font-size:10px}.mailbox-summary strong{color:#6f3346;font:27px/1 Georgia,serif}.mailbox-list-panel{min-width:0;padding:22px}.mailbox-list-panel>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:17px}.mailbox-list-panel>header>span{color:#aa8991;font-size:10px}.mailbox-tabs{display:flex;gap:5px;padding:4px;background:#f7e8eb;border-radius:999px}.mailbox-tabs button{min-height:35px;padding:0 14px;color:#9d707d;background:transparent;border-radius:999px;font-size:10px;white-space:nowrap}.mailbox-tabs button.active{color:#fff;background:#8e3a55;box-shadow:0 7px 15px #732d4229}.mailbox-letter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mailbox-letter-card{position:relative;min-width:0;overflow:hidden;background:linear-gradient(145deg,#fffaf5,#f8e4e6);border:1px solid #ead0d6;border-radius:15px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.mailbox-letter-card:hover{transform:translateY(-2px);border-color:#d9a6b2;box-shadow:0 13px 28px #592a3717}.mailbox-letter-card.unread{border-color:#c77e91;box-shadow:inset 3px 0 #a74360}.mailbox-letter-card.locked{background:linear-gradient(145deg,#fbf7f5,#eee9ef)}.mailbox-letter-card.style-starlight{background:linear-gradient(145deg,#faf7fb,#eae4f0)}.mailbox-letter-card.style-dusk{background:linear-gradient(145deg,#fffaf0,#f2dfd3)}.mailbox-card-main{width:100%;min-height:112px;display:grid;grid-template-columns:37px minmax(0,1fr);gap:11px;padding:16px;color:inherit;background:transparent;text-align:left}.mailbox-card-icon{width:37px;height:37px;display:grid;place-items:center;color:#9e4863;background:#ffffffb8;border:1px solid rgba(165,83,105,.15);border-radius:50%;box-shadow:0 7px 18px #54293514}.locked .mailbox-card-icon{color:#8b7b92}.mailbox-card-content{min-width:0;display:grid;gap:4px}.mailbox-card-content small{color:#ae7b89;font-size:9px}.mailbox-card-content strong{overflow:hidden;color:#6e3c4b;font:700 15px/1.35 var(--serif);text-overflow:ellipsis;white-space:nowrap}.mailbox-card-content time{color:#9a8288;font-size:9px}.mailbox-card-state{grid-column:2;width:fit-content;padding:5px 8px;color:#9a5870;background:#ffffffa6;border-radius:999px;font-size:8px}.mailbox-cancel{position:absolute;right:9px;bottom:9px;display:flex;align-items:center;gap:4px;padding:5px 7px;color:#a77783;background:transparent;font-size:8px;opacity:.55}.mailbox-cancel:hover{color:#a33250;opacity:1}.mailbox-loading,.mailbox-empty{min-height:270px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#a97684;text-align:center}.mailbox-empty h3{margin:3px 0 7px;color:#71414f;font:700 19px/1.3 var(--serif)}.mailbox-compose-backdrop{position:fixed;z-index:500;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#2a1823a8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:fadeIn .25s ease both}.mailbox-compose{position:relative;width:min(1040px,100%);max-height:calc(100vh - 48px);display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.15fr);overflow:hidden;background:#fffaf7;border:1px solid rgba(255,255,255,.5);border-radius:25px;box-shadow:0 38px 100px #26121d57;animation:modalIn .35s cubic-bezier(.18,.72,.22,1) both}.mailbox-compose-close{position:absolute;z-index:4;right:17px;top:17px;width:36px;height:36px;display:grid;place-items:center;color:#8d5f6c;background:#fffc;border-radius:50%;box-shadow:0 7px 18px #381e271a}.mailbox-compose-visual{position:relative;min-height:650px;overflow:hidden;background:linear-gradient(0deg,#25162694,#37233a26),url(/assets/time-mailbox/mailbox-garden.webp) 64% center/cover}.mailbox-compose-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,rgba(255,210,155,.16),transparent 48%)}.mailbox-compose-visual .mailbox-letter-sprite{z-index:2;left:50%;top:48%;width:min(330px,82%);opacity:1;filter:drop-shadow(0 25px 35px rgba(17,9,17,.42));transform:translate(-50%,-50%) rotate(-2deg)}.mailbox-compose-visual>span{position:absolute;z-index:3;left:28px;bottom:26px;color:#fff6eccc;font:700 9px/1 Georgia,serif;letter-spacing:.25em}.mailbox-compose form{max-height:calc(100vh - 48px);display:grid;gap:14px;padding:43px 48px 38px;overflow-y:auto}.mailbox-compose-title h2{margin:0;color:#6f3347;font:700 28px/1.25 var(--serif)}.mailbox-compose form>label{display:grid;gap:7px;color:#8d6d76;font-size:10px}.mailbox-compose input,.mailbox-compose select,.mailbox-compose textarea{width:100%;padding:12px 13px;color:#68454f;background:#fff;border:1px solid #ead4d8;border-radius:10px;outline:0;font:12px/1.6 var(--sans)}.mailbox-compose textarea{resize:vertical;min-height:145px}.mailbox-compose input:focus,.mailbox-compose select:focus,.mailbox-compose textarea:focus{border-color:#c27d90;box-shadow:0 0 0 3px #b4556f1a}.mailbox-recipient{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;color:#99717d;background:#f9e9ec;border-radius:10px;font-size:10px}.mailbox-recipient strong{color:#773f51;font:700 14px/1 var(--serif)}.mailbox-style-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0;padding:0;border:0}.mailbox-style-picker legend{margin-bottom:8px;color:#8d6d76;font-size:10px}.mailbox-style-picker button{min-width:0;display:flex;align-items:center;gap:8px;padding:9px;color:#9c737f;background:#fff;border:1px solid #ead5da;border-radius:10px;text-align:left}.mailbox-style-picker button.active{color:#713448;border-color:#bd7489;background:#fff4f4;box-shadow:0 0 0 2px #b7536f14}.mailbox-style-picker i{flex:0 0 auto;width:25px;height:19px;background:#d58c9f;border:1px solid #c0768a;border-radius:3px}.mailbox-style-picker button:nth-of-type(2) i{background:#d5a186}.mailbox-style-picker button:nth-of-type(3) i{background:#827594}.mailbox-style-picker span{min-width:0;display:grid;gap:2px}.mailbox-style-picker strong{font-size:9px;white-space:nowrap}.mailbox-style-picker small{font-size:7px;white-space:nowrap;opacity:.75}.mailbox-send{justify-content:center;margin-top:2px}@keyframes letterFold{0%{opacity:0;transform:translate(-7%,20%) scale(1.04) rotate(1deg)}to{opacity:1;transform:translate(-4%,18%) scale(.94) rotate(-2deg)}}@keyframes waxSet{0%{transform:translate(-4%,18%) scale(.94) rotate(-2deg)}55%{transform:translate(-4%,18%) scale(1.02) rotate(-2deg)}to{transform:translate(-4%,18%) scale(.92) rotate(-2deg)}}@keyframes letterPost{0%{transform:translate(-4%,18%) scale(.92) rotate(-2deg);opacity:1}58%{transform:translate(-9%,-8%) scale(.48) rotate(5deg);opacity:1}to{transform:translate(-15%,-34%) scale(.13) rotate(8deg);opacity:0}}@keyframes letterArrive{0%{transform:translate(-15%,-34%) scale(.13) rotate(8deg);opacity:0}36%{opacity:1}to{transform:translate(-10%,22%) scale(.88) rotate(-2deg);opacity:1}}@keyframes letterHover{0%,to{transform:translate(-10%,22%) scale(.88) rotate(-2deg)}50%{transform:translate(-10%,18%) scale(.9) rotate(1deg)}}@keyframes sealedWait{0%,to{transform:translate(28%,-10%) scale(.42) rotate(-7deg)}50%{transform:translate(28%,-16%) scale(.43) rotate(-3deg)}}@keyframes envelopeOpen{0%{transform:translate(-10%,22%) scale(.88);opacity:1;filter:drop-shadow(0 25px 25px rgba(19,11,21,.34))}55%{transform:translate(-12%,10%) scale(1);filter:drop-shadow(0 0 34px rgba(255,206,128,.7))}to{transform:translate(-12%,-3%) scale(1.05);opacity:.42;filter:drop-shadow(0 0 55px rgba(255,221,160,.82))}}@keyframes mailboxGlow{0%,to{transform:scale(.88);opacity:.45}50%{transform:scale(1.18);opacity:1}}@keyframes waxSpark{0%{transform:translate(0) scale(.2);opacity:1}to{transform:translate(var(--sx,-20px),var(--sy,-27px)) scale(1);opacity:0}}@keyframes firefly{0%,to{opacity:.12;transform:translate(0)}45%{opacity:1;transform:translate(10px,-13px)}70%{opacity:.35;transform:translate(-5px,-20px)}}@keyframes readingPaperIn{0%{opacity:0;transform:translateY(-45%) scale(.78) rotate(4deg)}to{opacity:1;transform:translateY(-50%) scale(1) rotate(-.5deg)}}@media(max-width:1050px){.mailbox-stage-copy{width:44%}.mailbox-dashboard{grid-template-columns:1fr}.mailbox-summary{grid-template-columns:repeat(3,1fr)}.mailbox-summary>div{border-right:1px solid var(--border);border-bottom:0}.mailbox-summary>div:last-child{border-right:0}}@media(max-width:780px){.mailbox-heading{align-items:stretch;flex-direction:column}.mailbox-heading .button{justify-content:center}.mailbox-stage{min-height:650px;background-position:65% center}.mailbox-scene-shade{background:linear-gradient(0deg,#1c1628e0,#23192b73 58%,#16122021)}.mailbox-stage-copy{left:24px;right:24px;top:auto;bottom:34px;width:auto;transform:none}.mailbox-stage-copy h2{font-size:36px}.mailbox-stage-copy p{margin-top:12px}.mailbox-animation-area{transform:translateY(-70px)}.mailbox-letter-sprite{left:39%;top:29%;width:250px}.mailbox-wax-spark{left:62%;top:45%}.mailbox-reading-letter{left:18px;right:18px;top:47%;width:auto;max-height:78%;padding:42px 28px 28px}.mailbox-reading-letter>p{min-height:150px}.mailbox-letter-grid{grid-template-columns:1fr}.mailbox-summary>div{padding:15px 12px}.mailbox-compose{grid-template-columns:1fr;max-height:calc(100vh - 24px)}.mailbox-compose-visual{display:none}.mailbox-compose form{max-height:calc(100vh - 24px);padding:38px 22px 26px}.mailbox-style-picker{grid-template-columns:1fr}.mailbox-style-picker button{padding:8px 10px}}@media(max-width:430px){.mailbox-stage{min-height:620px}.mailbox-summary{grid-template-columns:1fr}.mailbox-summary>div{min-height:70px;border-right:0;border-bottom:1px solid var(--border)}.mailbox-summary>div:last-child{border-bottom:0}.mailbox-list-panel{padding:16px}.mailbox-card-main{padding:14px}.mailbox-tabs button{padding-inline:11px}.mailbox-reading-letter footer{flex-direction:column;gap:5px}}@media(prefers-reduced-motion:reduce){.mailbox-page *,.admin-nav-menu{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}.theme-picker{display:grid;gap:10px}.theme-choice{position:relative;min-height:82px;padding:11px 13px;display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:13px;color:var(--ink);text-align:left;background:#ffffff7a;border:1px solid var(--border);border-radius:16px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.theme-choice:not(:disabled):hover{transform:translateY(-2px)}.theme-choice.active{border-color:var(--rose-500);box-shadow:0 0 0 3px #bb5a721a}.theme-choice:disabled{cursor:default;opacity:.72}.theme-choice>i{position:relative;width:58px;height:58px;overflow:hidden;border-radius:15px;background:#f6dce2;box-shadow:inset 0 0 0 1px #ffffffa6}.theme-choice>i span,.theme-choice>i b{position:absolute;display:block}.theme-choice-pink>i{background:radial-gradient(circle at 30% 30%,#fff8ef 0 14%,transparent 15%),linear-gradient(145deg,#efb9c7,#c6607e)}.theme-choice-pink>i span{top:13px;right:13px;bottom:13px;left:13px;border:2px solid #fff6ee;border-radius:50%}.theme-choice-pink>i b{left:23px;top:21px;width:13px;height:13px;background:#fff5f0;transform:rotate(45deg)}.theme-choice-cyber>i{background:linear-gradient(135deg,#06152c 8%,#0c3151 56%,#331748)}.theme-choice-cyber>i span{left:8px;right:8px;top:27px;height:2px;background:#48eaff;box-shadow:0 0 9px #48eaff;transform:rotate(-28deg)}.theme-choice-cyber>i b{left:9px;right:9px;top:27px;height:2px;background:#ff55c7;box-shadow:0 0 9px #ff55c7;transform:rotate(28deg)}.theme-choice-abstract>i{background:#f5ead6}.theme-choice-abstract>i:before,.theme-choice-abstract>i:after{content:"";position:absolute;border-radius:50%}.theme-choice-abstract>i:before{width:47px;height:47px;left:-13px;bottom:-13px;background:#153f78;box-shadow:36px -24px 0 -6px #e36550}.theme-choice-abstract>i:after{width:24px;height:24px;right:-3px;bottom:7px;background:#d89a35}.theme-choice>span{min-width:0;display:grid;gap:2px}.theme-choice>span small{color:var(--rose-600);font:700 7px/1.3 Georgia,serif;letter-spacing:.18em}.theme-choice>span strong{font:700 15px/1.4 var(--serif)}.theme-choice>span em{color:var(--muted);font-size:9px;font-style:normal}.theme-choice>svg{color:var(--rose-600)}.theme-admin-only{display:block;margin-top:12px;color:var(--muted);font-size:9px}.app.theme-cyber{--ink: #dcecff;--muted: #8da8c1;--rose-950: #e9f8ff;--rose-800: #32cfe5;--rose-700: #52dff0;--rose-600: #e965c7;--rose-500: #9c69ff;--rose-300: #315b7e;--rose-200: #203c59;--rose-100: #13283f;--cream: #091525;--paper: rgba(8,21,38,.88);--border: rgba(87,219,239,.17);--shadow: 0 22px 60px rgba(0,4,18,.36);color:var(--ink);background-image:linear-gradient(#030a18d6,#040d1be0),var(--page-background)}.theme-cyber .topbar{color:#ccecff;border-bottom-color:#4ddcf029;background:#050f1fd6}.theme-cyber.page-home .topbar{background:linear-gradient(to bottom,#030917b8,#03091729)}.theme-cyber .hero-wash{background:linear-gradient(90deg,#020818c7,#05112759 52%,#070b1c1a),linear-gradient(0deg,rgba(2,7,20,.72),transparent 38%)}.theme-cyber .panel,.theme-cyber .stat-strip{color:var(--ink);background:#071425d6;border-color:var(--border);box-shadow:var(--shadow)}.theme-cyber .theme-choice{color:#d9ecff;background:#0d1f34d1;border-color:#4ddaee2b}.theme-cyber .theme-choice.active{border-color:#a968f2;box-shadow:0 0 0 3px #a968f224,0 12px 28px #0004122e}.theme-cyber input,.theme-cyber textarea,.theme-cyber select{color:#deefff;background:#030c1ab8;border-color:#4ed0e833}.theme-cyber input::placeholder,.theme-cyber textarea::placeholder{color:#66829c}.theme-cyber .button.primary{color:#03131e;background:linear-gradient(135deg,#55eaf1,#ba68f5);box-shadow:0 12px 28px #3fd2eb33}.theme-cyber .button.subtle{color:#9eeef6;background:#42cde41a;border-color:#4fdded2e}.theme-cyber .map-mode-switch,.theme-cyber .sync-status{color:#b7d7e9;background:#071426e0;border-color:var(--border)}.theme-cyber .little-home-background,.theme-cyber .resident-sprite{filter:hue-rotate(128deg) saturate(1.15) contrast(1.04)}.theme-cyber .wheel-stage:before{background:radial-gradient(circle,rgba(112,235,255,.38),rgba(196,83,222,.13) 48%,transparent 72%)}.theme-cyber .heart-cursor{mix-blend-mode:screen}.theme-cyber .heart-cursor i,.theme-cyber .heart-cursor i:before,.theme-cyber .heart-cursor i:after{background:#58e8f2}.theme-cyber .cursor-dot{border-color:#ff56cb8c}.app.theme-abstract{--ink: #17375d;--muted: #756b63;--rose-950: #173f75;--rose-800: #17477f;--rose-700: #1b5794;--rose-600: #d95f4d;--rose-500: #e16d58;--rose-300: #edb18c;--rose-200: #f1d6bd;--rose-100: #f8ead6;--cream: #fff9eb;--paper: rgba(255,249,235,.9);--border: rgba(25,67,115,.15);--shadow: 0 22px 60px rgba(45,48,56,.11);color:var(--ink);background-image:linear-gradient(#fffaeead,#fff8e9c2),var(--page-background)}.theme-abstract .topbar{color:#173b69;border-bottom-color:#18417021;background:#fff8e8db}.theme-abstract.page-home .topbar{color:#fffaf0;background:linear-gradient(to bottom,#122f53ad,#122f531a)}.theme-abstract .hero-wash{background:linear-gradient(90deg,rgba(17,45,82,.72),rgba(18,52,93,.22) 54%,transparent),linear-gradient(0deg,rgba(19,45,76,.55),transparent 36%)}.theme-abstract .button.primary{background:linear-gradient(135deg,#16497f,#dc6752);box-shadow:0 12px 25px #1d406a2e}.theme-abstract .button.subtle{color:#17477f;background:#eee6d7;border-color:#1b437024}.theme-abstract .map-mode-switch button.active{background:#17477f}.theme-abstract .little-home-background,.theme-abstract .resident-sprite{filter:sepia(.12) hue-rotate(338deg) saturate(.9) contrast(1.02)}.theme-abstract .wheel-stage:before{background:radial-gradient(circle,rgba(255,250,225,.82),rgba(231,107,80,.18) 48%,transparent 72%)}.theme-abstract .heart-cursor i,.theme-abstract .heart-cursor i:before,.theme-abstract .heart-cursor i:after{background:#dd604d}.theme-abstract .cursor-dot{border-color:#16447875}@media(max-width:720px){.theme-choice{min-height:74px;grid-template-columns:48px minmax(0,1fr) auto;padding:9px;gap:10px}.theme-choice>i{width:48px;height:48px;border-radius:12px}.theme-choice>span em{display:none}}.tool-route-loading{min-height:100vh;display:grid;place-items:center;color:#b8d6db;background:#07151c;font:600 14px/1.6 Microsoft YaHei,sans-serif;letter-spacing:.08em}.tool-station-app{--tool-bg: #07151c;--tool-panel: rgba(12,34,43,.88);--tool-line: rgba(142,225,226,.16);--tool-text: #edf9f8;--tool-muted: #91acb1;--tool-cyan: #61e3db;--tool-green: #9be178;--tool-gold: #f0c977;position:relative;isolation:isolate;min-height:100vh;overflow:hidden;color:var(--tool-text);background:radial-gradient(circle at 16% 18%,rgba(40,139,148,.2),transparent 29%),radial-gradient(circle at 87% 72%,rgba(75,107,180,.15),transparent 31%),linear-gradient(145deg,#061117,#091d26 54%,#071319);font-family:Inter,Microsoft YaHei,sans-serif}.tool-station-grid{position:fixed;z-index:-1;top:0;right:0;bottom:0;left:0;opacity:.38;background-image:linear-gradient(rgba(111,208,213,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(111,208,213,.06) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:linear-gradient(to bottom,#000,transparent 84%);mask-image:linear-gradient(to bottom,#000,transparent 84%);pointer-events:none}.tool-station-app:before{content:"";position:fixed;z-index:-1;left:-90px;top:20%;width:260px;height:260px;border:1px solid rgba(97,227,219,.14);border-radius:50%;box-shadow:0 0 0 38px #61e3db06,0 0 0 84px #61e3db05}.tool-station-header{position:relative;z-index:5;width:min(1280px,calc(100% - 56px));min-height:84px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--tool-line)}.tool-station-sign{display:grid;grid-template-columns:42px auto;column-gap:12px;align-items:center;color:var(--tool-text);text-decoration:none}.tool-station-sign>span{grid-row:1/3;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(97,227,219,.48);border-radius:12px;color:var(--tool-cyan);background:#61e3db0f;font:800 13px/1 monospace;letter-spacing:.06em;box-shadow:inset 0 0 18px #61e3db14}.tool-station-sign strong{align-self:end;font-size:15px;letter-spacing:.1em}.tool-station-sign small{align-self:start;color:var(--tool-muted);font:600 7px/1.3 monospace;letter-spacing:.2em}.tool-station-header nav{display:flex;gap:9px}.tool-station-header nav a{min-height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 13px;border:1px solid var(--tool-line);border-radius:999px;color:#bdd1d4;background:#ffffff06;text-decoration:none;font-size:11px;transition:.2s ease}.tool-station-header nav a:hover{color:#fff;border-color:#61e3db5c;background:#61e3db12;transform:translateY(-1px)}.tool-station-header nav .tool-admin-link{color:var(--tool-cyan)}.tool-station-sign>.tool-station-monogram{grid-row:1/3;width:44px;height:44px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(97,227,219,.42);border-radius:13px;color:var(--tool-cyan);background:linear-gradient(145deg,#61e3db1c,#61e3db05);box-shadow:inset 0 0 22px #61e3db12,0 8px 24px #0000002e}.tool-station-monogram svg{width:38px;height:34px;overflow:visible;fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:bevel}.tool-station-monogram path{vector-effect:non-scaling-stroke}.tool-station-monogram .monogram-y{stroke-width:2.8}.tool-station-monogram .monogram-x{stroke-width:2.15;opacity:.92}.tool-station-monogram .monogram-x-two{stroke:var(--tool-green);opacity:.86}.tool-download-menu{position:relative}.tool-download-trigger{min-height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border:1px solid rgba(97,227,219,.22);border-radius:999px;color:var(--tool-cyan);background:#61e3db0e;font:600 11px/1 inherit;white-space:nowrap;transition:.2s ease}.tool-download-trigger>svg:last-child{transition:transform .2s ease}.tool-download-menu.open .tool-download-trigger{color:#fff;border-color:#61e3db70;background:#61e3db1a}.tool-download-menu.open .tool-download-trigger>svg:last-child{transform:rotate(180deg)}.tool-download-flyout{position:absolute;z-index:30;right:0;top:calc(100% + 12px);width:min(540px,calc(100vw - 28px));display:grid;grid-template-columns:minmax(180px,220px) minmax(220px,1fr);overflow:hidden;border:1px solid rgba(119,224,222,.2);border-radius:17px;background:#05161df7;box-shadow:0 24px 70px #0000006b,inset 0 1px #ffffff0a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:tool-download-enter .18s ease both}.tool-download-list{max-height:330px;padding:8px;overflow-y:auto;border-right:1px solid var(--tool-line)}.tool-download-list>button{width:100%;min-height:54px;padding:8px 10px;display:grid;align-content:center;gap:4px;border:0;border-radius:11px;color:#b9cfd2;background:transparent;text-align:left;transition:.16s ease}.tool-download-list>button:hover,.tool-download-list>button:focus-visible,.tool-download-list>button.active{color:#fff;outline:0;background:linear-gradient(90deg,#61e3db21,#61e3db09)}.tool-download-list>button>span{display:flex;align-items:center;gap:8px;font-size:11px}.tool-download-list>button>span svg{color:var(--tool-cyan)}.tool-download-list>button small{padding-left:22px;color:#6f9297;font-size:8px}.tool-download-preview{min-width:0;padding:20px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;background:radial-gradient(circle at 84% 16%,rgba(97,227,219,.11),transparent 36%)}.tool-download-preview>small{color:var(--tool-cyan);font:700 7px/1.2 monospace;letter-spacing:.2em}.tool-download-preview>strong{font-size:15px}.tool-download-preview>span{color:var(--tool-muted);font-size:9px}.tool-download-preview>a{width:100%;min-width:0;margin-top:4px;padding:10px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid rgba(97,227,219,.14);border-radius:9px;color:#bff8f4;background:#61e3db0d;text-decoration:none;font:500 8px/1.5 Consolas,monospace}.tool-download-preview>a span{overflow-wrap:anywhere}.tool-download-preview>a:hover{border-color:#61e3db5c;background:#61e3db17}@keyframes tool-download-enter{0%{opacity:0;transform:translateY(-6px) scale(.985)}to{opacity:1;transform:none}}.tool-public-main{width:min(1160px,calc(100% - 56px));min-height:calc(100vh - 150px);margin:0 auto;padding:80px 0 70px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(400px,.82fr);align-items:center;gap:clamp(48px,8vw,110px)}.tool-eyebrow,.tool-card-heading span,.tool-generator-card header span,.tool-universal-card header span,.tool-records-card>header span{color:var(--tool-cyan);font:700 9px/1.4 monospace;letter-spacing:.22em}.tool-public-intro h1{max-width:680px;margin:18px 0 25px;font:600 clamp(46px,6vw,82px)/1.08 "Microsoft YaHei",sans-serif;letter-spacing:-.055em}.tool-public-intro h1 em{color:transparent;background:linear-gradient(90deg,var(--tool-cyan),var(--tool-green));background-clip:text;-webkit-background-clip:text;font-style:normal}.tool-public-intro>p{max-width:560px;margin:0;color:var(--tool-muted);font-size:14px;line-height:1.9}.tool-feature-row{margin-top:42px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--tool-line);border-bottom:1px solid var(--tool-line)}.tool-feature-row>div{min-height:102px;display:grid;grid-template-columns:auto 1fr;align-content:center;gap:5px 10px;padding:17px 18px;border-right:1px solid var(--tool-line)}.tool-feature-row>div:last-child{border-right:0}.tool-feature-row svg{grid-row:1/3;color:var(--tool-cyan)}.tool-feature-row strong{font:700 11px/1.2 monospace;letter-spacing:.13em}.tool-feature-row span{color:var(--tool-muted);font-size:10px}.tool-apply-card,.tool-admin-login,.tool-generator-card,.tool-universal-card,.tool-records-card{border:1px solid var(--tool-line);background:linear-gradient(145deg,#102b35f0,#081921f0);box-shadow:0 35px 90px #00000045,inset 0 1px #ffffff09;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.tool-apply-card{position:relative;padding:34px;border-radius:28px}.tool-apply-card:after{content:"";position:absolute;right:18px;top:18px;width:9px;height:9px;border-radius:50%;background:var(--tool-green);box-shadow:0 0 16px var(--tool-green)}.tool-card-heading,.tool-generator-card>header,.tool-records-card>header{display:flex;align-items:center;justify-content:space-between;gap:18px}.tool-card-heading h2,.tool-generator-card h2,.tool-universal-card h2,.tool-records-card h2{margin:5px 0 0;font-size:23px;letter-spacing:.02em}.tool-card-heading svg,.tool-generator-card header svg{color:var(--tool-cyan)}.tool-apply-card form{margin-top:28px;display:grid;gap:18px}.tool-station-app label{display:grid;gap:8px}.tool-station-app label>span{color:#c6dbdd;font-size:11px}.tool-station-app input,.tool-station-app select{width:100%;height:46px;padding:0 13px;outline:0;border:1px solid rgba(139,210,214,.14);border-radius:10px;color:var(--tool-text);background:#030f15a8;font:500 13px/1.4 inherit;transition:border-color .2s ease,box-shadow .2s ease}.tool-station-app input:focus,.tool-station-app select:focus{border-color:#61e3db94;box-shadow:0 0 0 3px #61e3db14}.tool-station-app input:disabled,.tool-station-app select:disabled{opacity:.58;cursor:not-allowed}.tool-station-app select option{color:#e9f8f7;background:#0b222b}.tool-station-app .machine-code-input{text-transform:uppercase;font-family:Consolas,monospace;letter-spacing:.16em}.tool-station-app label small{color:#6f8e94;font-size:9px}.tool-station-app label small.valid{color:var(--tool-green)}.tool-primary-action,.tool-admin-login form button{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:11px;color:#052027;background:linear-gradient(100deg,var(--tool-cyan),var(--tool-green));box-shadow:0 15px 32px #41d1c526;font-weight:800;cursor:pointer;transition:transform .2s ease,filter .2s ease}.tool-primary-action:hover,.tool-admin-login form button:hover{transform:translateY(-2px);filter:brightness(1.06)}.tool-primary-action:disabled,.tool-admin-login form button:disabled{opacity:.55;cursor:wait;transform:none}.tool-form-message{margin:0;padding:11px 13px;border-radius:9px;font-size:11px}.tool-form-message.error{color:#ffd4d4;border:1px solid rgba(244,104,104,.2);background:#97233229}.tool-form-message.admin-message{margin:18px 0}.tool-license-result{min-height:410px;padding-top:27px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.tool-license-result>svg{color:var(--tool-green);filter:drop-shadow(0 0 14px rgba(155,225,120,.26))}.tool-license-result>span{margin-top:16px;color:var(--tool-cyan);font:700 9px/1.4 monospace;letter-spacing:.2em}.tool-license-result h2{margin:7px 0 22px;font-size:24px}.tool-license-result>code{width:100%;padding:17px;overflow-wrap:anywhere;border:1px solid rgba(97,227,219,.2);border-radius:10px;color:#c8fff9;background:#020f14bf;font:600 11px/1.7 Consolas,monospace;letter-spacing:.06em}.tool-license-result>div{width:100%;margin:17px 0;display:grid;grid-template-columns:1fr 1fr;gap:9px}.tool-license-result p{margin:0;padding:12px;border:1px solid var(--tool-line);border-radius:9px;text-align:left}.tool-license-result p small,.tool-license-result p strong{display:block}.tool-license-result p small{color:var(--tool-muted);font-size:8px}.tool-license-result p strong{margin-top:5px;font:600 11px/1.4 Consolas,monospace}.tool-license-result>button:not(.tool-text-action){width:100%;min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(97,227,219,.24);border-radius:10px;color:var(--tool-cyan);background:#61e3db12}.tool-text-action{margin-top:12px;border:0;color:var(--tool-muted);background:transparent;font-size:10px}.tool-station-footer{width:min(1280px,calc(100% - 56px));min-height:66px;margin:0 auto;display:flex;align-items:center;gap:14px;border-top:1px solid var(--tool-line);color:#6e898e}.tool-station-footer span{font-size:10px}.tool-station-footer small{font:600 7px/1 monospace;letter-spacing:.18em}.tool-admin-login-wrap{min-height:calc(100vh - 150px);display:grid;place-items:center;padding:60px 20px}.tool-admin-login{width:min(430px,100%);padding:42px;border-radius:25px;text-align:center}.tool-admin-login>svg{margin-bottom:17px;color:var(--tool-cyan)}.tool-admin-login h1{margin:10px 0;font-size:28px}.tool-admin-login>p{color:var(--tool-muted);font-size:12px}.tool-admin-login form{margin-top:27px;display:grid;gap:17px;text-align:left}.tool-admin-login form label>div{position:relative}.tool-admin-login form label svg{position:absolute;left:13px;top:14px;color:#6f979a}.tool-admin-login form input{padding-left:42px}.tool-admin-main{width:min(1440px,calc(100% - 48px));min-height:calc(100vh - 150px);margin:0 auto;padding:52px 0 70px}.tool-admin-title{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.tool-admin-title h1{margin:10px 0 8px;font-size:clamp(31px,4vw,50px)}.tool-admin-title p{margin:0;color:var(--tool-muted);font-size:12px}.tool-admin-title>button{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 13px;border:1px solid var(--tool-line);border-radius:99px;color:#b7ced0;background:#ffffff06}.tool-stats-grid{margin:32px 0;display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--tool-line);border-radius:17px;overflow:hidden;background:#07181fad}.tool-stats-grid article{position:relative;min-height:94px;padding:19px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--tool-line)}.tool-stats-grid article:last-child{border-right:0}.tool-stats-grid span{color:var(--tool-muted);font-size:9px}.tool-stats-grid strong{margin-top:5px;font:700 25px/1 monospace}.tool-stats-grid svg{position:absolute;right:17px;top:17px;color:var(--tool-cyan)}.tool-stats-grid i{position:absolute;right:18px;top:20px;width:6px;height:6px;border-radius:50%;background:var(--tool-green);box-shadow:0 0 10px var(--tool-green)}.tool-generator-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.55fr);gap:18px}.tool-generator-card,.tool-universal-card{padding:26px;border-radius:19px}.tool-generator-fields{margin:23px 0 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tool-selected-record{margin-top:17px;min-height:37px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid rgba(155,225,120,.18);border-radius:9px;color:#c7e7b9;background:#60974c14;font-size:10px}.tool-selected-record button{margin-left:auto;border:0;color:var(--tool-muted);background:transparent;font-size:9px}.tool-generator-card>.tool-primary-action{width:100%}.tool-token-output{margin-top:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.tool-token-output code{min-width:0;padding:11px;overflow-wrap:anywhere;border:1px solid var(--tool-line);border-radius:8px;color:#c9fff9;background:#020e1399;font:600 9px/1.6 Consolas,monospace}.tool-token-output button{padding:0 12px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(97,227,219,.2);border-radius:8px;color:var(--tool-cyan);background:#61e3db0f;font-size:10px}.tool-universal-card header p{margin:10px 0 22px;color:var(--tool-muted);font-size:10px;line-height:1.7}.tool-universal-card label{margin-bottom:13px}.tool-universal-card>button{width:100%;min-height:43px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(240,201,119,.25);border-radius:10px;color:var(--tool-gold);background:#f0c97712}.tool-records-card{margin-top:20px;border-radius:19px;overflow:hidden}.tool-records-card>header{padding:23px 25px;border-bottom:1px solid var(--tool-line)}.tool-record-search{width:min(360px,46vw);height:39px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding-left:12px;border:1px solid var(--tool-line);border-radius:99px;background:#020e1380}.tool-record-search>svg{color:#6f969b}.tool-record-search input{height:36px;padding:0;border:0;background:transparent;box-shadow:none!important}.tool-record-search button{width:34px;height:34px;display:grid;place-items:center;border:0;color:var(--tool-cyan);background:transparent}.tool-table-scroll{max-width:100%;overflow:auto}.tool-records-card table{width:100%;min-width:1260px;border-collapse:collapse}.tool-records-card th{padding:12px 13px;color:#6f9095;background:#020e137a;font:700 8px/1.2 monospace;letter-spacing:.12em;text-align:left}.tool-records-card td{padding:15px 13px;border-top:1px solid rgba(132,210,212,.08);color:#b9ced1;font-size:10px;vertical-align:middle}.tool-records-card tbody tr:hover{background:#61e3db06}.tool-records-card td>code{color:#bce7e5;font-family:Consolas,monospace}.tool-records-card td>strong{color:#effafa;font-size:11px}.tool-role-badge{display:inline-flex;margin-bottom:5px;padding:4px 7px;border-radius:99px;font-size:8px}.tool-role-badge.role-trial{color:#c9d5d5;background:#9ab2b51f}.tool-role-badge.role-member{color:var(--tool-green);background:#9be1781a}.tool-role-badge.role-admin{color:var(--tool-gold);background:#f0c9771a}.tool-records-card td small{display:block;color:#718f94;line-height:1.6}.tool-table-token{white-space:nowrap}.tool-row-actions{display:grid;gap:5px}.tool-row-actions button{min-height:29px;padding:0 9px;border:1px solid var(--tool-line);border-radius:7px;color:#b9d5d6;background:#ffffff06;font-size:8px;white-space:nowrap}.tool-row-actions button:first-child{color:var(--tool-cyan);border-color:#61e3db33}.tool-empty-row{height:150px;text-align:center!important;color:var(--tool-muted)!important}@media(max-width:1050px){.tool-public-main{grid-template-columns:1fr;padding-top:54px}.tool-public-intro{text-align:center}.tool-public-intro>p{margin-inline:auto}.tool-feature-row{max-width:660px;margin-inline:auto}.tool-apply-card{width:min(560px,100%);margin:0 auto}.tool-stats-grid{grid-template-columns:repeat(3,1fr)}.tool-stats-grid article:nth-child(3){border-right:0}.tool-stats-grid article:nth-child(-n+3){border-bottom:1px solid var(--tool-line)}.tool-generator-layout{grid-template-columns:1fr}.tool-generator-fields{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.tool-station-header,.tool-station-footer,.tool-public-main{width:min(100% - 28px,560px)}.tool-station-header{min-height:72px}.tool-station-sign{grid-template-columns:35px auto;column-gap:8px}.tool-station-sign>span{width:35px;height:35px}.tool-station-sign strong{font-size:12px}.tool-station-sign small{display:none}.tool-station-header nav a{width:36px;padding:0;justify-content:center}.tool-station-header nav a{font-size:0}.tool-public-main{padding:48px 0;gap:38px}.tool-public-intro h1{font-size:44px}.tool-public-intro>p{font-size:12px}.tool-feature-row>div{min-height:84px;padding:12px 8px;grid-template-columns:1fr;justify-items:center}.tool-feature-row svg{grid-row:auto}.tool-feature-row strong{font-size:9px}.tool-apply-card{padding:24px 18px;border-radius:20px}.tool-admin-main{width:min(100% - 24px,620px);padding-top:35px}.tool-admin-title{align-items:flex-start;flex-direction:column}.tool-stats-grid{grid-template-columns:repeat(2,1fr)}.tool-stats-grid article:nth-child(2n){border-right:0}.tool-stats-grid article:nth-child(3){border-right:1px solid var(--tool-line)}.tool-stats-grid article:nth-child(-n+4){border-bottom:1px solid var(--tool-line)}.tool-generator-fields{grid-template-columns:1fr}.tool-records-card>header{align-items:flex-start;flex-direction:column}.tool-record-search{width:100%}.tool-admin-login{padding:32px 21px}.tool-station-footer{justify-content:center}}@media(max-width:680px){.tool-station-sign>.tool-station-monogram{width:35px;height:35px;border-radius:10px}.tool-station-monogram svg{width:29px;height:29px}.tool-station-header nav{gap:5px}.tool-download-trigger{width:36px;min-width:36px;padding:0;justify-content:center}.tool-download-trigger span,.tool-download-trigger>svg:last-child{display:none}.tool-download-flyout{position:fixed;top:64px;right:14px;grid-template-columns:minmax(135px,.78fr) minmax(170px,1.22fr)}.tool-download-preview{padding:15px 12px}.tool-download-preview>a{padding:8px}.tool-download-list{padding:6px}.tool-download-list>button{min-height:50px;padding-inline:8px}}.game-score-settings-page form{display:grid;gap:22px}.game-score-room-card,.game-score-rule-card{padding:24px}.game-score-room-fields{margin-top:20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.game-score-room-fields label,.game-score-rule-fields label{display:grid;gap:7px}.game-score-room-fields label>span,.game-score-rule-fields label>span{color:var(--ink);font-size:11px;font-weight:700}.game-score-rule-fields .game-score-field-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.game-score-rule-fields .game-score-field-heading b{font:inherit}.game-score-rule-fields .game-score-field-heading small{font-weight:400;text-align:right}.game-score-room-fields input,.game-score-rule-fields input{width:100%;min-height:43px;padding:0 12px;border:1px solid rgba(112,64,82,.18);border-radius:11px;color:var(--ink);background:#ffffffd1;outline:none}.game-score-room-fields input:focus,.game-score-rule-fields input:focus{border-color:#be4b778c;box-shadow:0 0 0 3px #be4b7714}.game-score-room-fields small,.game-score-rule-fields small{color:var(--muted);font-size:9px;line-height:1.5}.game-score-test-note{margin:18px 0 0;padding:10px 12px;display:flex;align-items:center;gap:7px;border-radius:11px;color:#80516a;background:#eec6d53d;font-size:10px}.game-score-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.game-score-rule-card header{min-height:62px;padding-bottom:14px;display:grid;gap:5px;border-bottom:1px solid rgba(112,64,82,.11)}.game-score-rule-card header span{color:var(--ink);font:700 18px/1.2 var(--serif)}.game-score-rule-card header small{color:var(--muted);font-size:9px;line-height:1.5}.game-score-rule-fields{margin-top:15px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.game-score-rule-fields .wide{grid-column:2}.game-score-save{position:sticky;z-index:20;bottom:16px;padding:12px;display:flex;justify-content:flex-end;border:1px solid rgba(255,255,255,.78);border-radius:17px;background:#fff9fae6;box-shadow:0 15px 40px #52233726;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.game-score-save button{display:inline-flex;align-items:center;gap:7px}.game-score-denied{margin-top:80px;padding:50px 24px;display:grid;justify-items:center;gap:10px;text-align:center}.game-score-denied h1,.game-score-denied p{margin:0}@media(max-width:760px){.game-score-room-fields,.game-score-rule-grid{grid-template-columns:1fr}.game-score-rule-card,.game-score-room-card{padding:18px}.game-score-rule-fields{grid-template-columns:1fr 1fr}.game-score-rule-fields .wide{grid-column:1/-1}.game-score-save{justify-content:stretch}.game-score-save button{width:100%;justify-content:center}}.roulette-settings-page form{display:grid;gap:18px}.roulette-config-section{padding:24px}.roulette-config-section>header{margin-bottom:18px;display:flex;align-items:end;justify-content:space-between;gap:16px}.roulette-config-section>header h2{margin:0;font-size:1.08rem}.roulette-config-section>header span{color:var(--muted);font-size:.86rem}.roulette-stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.roulette-stage-card{padding:16px;display:grid;gap:13px;border:1px solid rgba(112,64,82,.14);border-radius:8px;background:#ffffffb3}.roulette-stage-fields,.roulette-inline-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.roulette-inline-fields{margin-bottom:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.roulette-stage-fields label,.roulette-inline-fields label{display:grid;gap:6px}.roulette-stage-fields label span,.roulette-inline-fields label span{color:var(--muted);font-size:.78rem}.roulette-stage-fields input,.roulette-stage-fields select,.roulette-inline-fields input,.roulette-inline-fields select{width:100%;min-height:39px;border:1px solid rgba(112,64,82,.18);border-radius:8px;padding:0 11px;background:#ffffffdb;color:var(--ink)}.roulette-turn-order-fields{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}.roulette-stage-fields .wide{grid-column:1 / -1}.roulette-item-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.roulette-item-column{min-height:220px;border:1px dashed rgba(112,64,82,.22);border-radius:8px;padding:14px;background:#ffffff94}.roulette-item-column.dragging{border-color:#5056d28c}.roulette-item-column h3{margin:0 0 12px;font-size:.95rem}.roulette-item-column>div{display:grid;gap:10px;max-height:620px;overflow-y:auto;padding-right:6px;scrollbar-gutter:stable}.roulette-item-column>div::-webkit-scrollbar{width:8px}.roulette-item-column>div::-webkit-scrollbar-thumb{border-radius:999px;background:#7040523d}.roulette-item-card{border:1px solid rgba(112,64,82,.15);border-radius:8px;padding:11px;background:var(--card);cursor:grab;display:grid;gap:7px}.roulette-item-card strong{font-size:.92rem}.roulette-item-card span{color:var(--muted);font-size:.76rem}.roulette-item-card small{color:#7040528c;font-size:.7rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.roulette-item-card div{display:flex;gap:6px;flex-wrap:wrap}.roulette-item-card button{border:1px solid rgba(112,64,82,.16);border-radius:7px;background:#ffffffb3;padding:5px 8px;font-size:.72rem}.roulette-settings-page .game-score-save{position:static;bottom:auto;margin-top:4px;border-radius:8px;box-shadow:0 12px 28px #5223371a}@media(max-width:900px){.roulette-stage-grid,.roulette-item-columns,.roulette-inline-fields{grid-template-columns:1fr}}.live-location-page{padding-top:clamp(92px,11vh,132px);padding-bottom:42px}.topbar-collapsed .live-location-page{padding-top:42px}.live-location-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.live-location-heading h1{margin:5px 0 7px;font-size:clamp(28px,3.4vw,46px);font-family:var(--font-display);font-weight:500}.live-location-heading p{max-width:720px;margin:0;color:var(--muted);line-height:1.7}.live-location-privacy{display:flex;align-items:center;gap:10px;flex:0 0 auto;padding:10px 14px;border:1px solid rgba(139,62,88,.16);border-radius:16px;background:#fffaf7b3;color:var(--muted);font-size:12px;line-height:1.55}.live-location-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,310px);gap:18px;align-items:stretch}.live-location-main,.live-location-days{padding:16px;border:1px solid rgba(139,62,88,.13);background:#fffcf9d1;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.live-location-main{min-width:0}.live-location-map-title,.live-location-days-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.live-location-map-title>div:first-child,.live-location-days-title>div{display:flex;align-items:center;gap:8px;font-weight:650}.live-location-legends{display:flex;align-items:center;gap:13px;color:var(--muted);font-size:12px}.live-location-legends span,.live-location-day-members{display:flex;align-items:center;gap:5px}.live-location-legends i,.live-location-day-members i{display:inline-block;width:8px;height:8px;border-radius:999px}.live-location-legends .person-one,.live-location-day-members .person-one{background:#a83f61}.live-location-legends .person-partner,.live-location-day-members .person-partner{background:#416ea7}.live-location-map-shell{position:relative;overflow:hidden;min-height:clamp(390px,55vh,620px);border:1px solid rgba(117,63,80,.14);border-radius:20px;background:linear-gradient(145deg,#f1e5df,#e5edf0)}.live-location-map{position:absolute;top:0;right:0;bottom:0;left:0}.live-location-map-state{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:26px;text-align:center;color:var(--muted);background:linear-gradient(145deg,#f8ede8f5,#e5eef0f0)}.live-location-map-state strong{color:var(--ink);font-size:17px}.live-location-map-state span{max-width:430px;line-height:1.65;font-size:13px}.live-location-map-state.error svg{color:#b24b62}.live-location-controls{display:grid;grid-template-columns:auto minmax(180px,230px) minmax(180px,1fr);gap:10px;margin-top:13px}.live-location-controls.super-mode{grid-template-columns:auto minmax(150px,190px) minmax(180px,220px) minmax(170px,1fr)}.live-location-toggle{min-height:46px;border-radius:14px}.live-location-toggle.active{border:1px solid rgba(168,63,97,.25);background:#a83f6117;color:#8e3151}.live-location-interval{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;padding:0 9px 0 13px;border:1px solid rgba(117,63,80,.14);border-radius:14px;background:#ffffffa3}.live-location-interval>span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;white-space:nowrap}.live-location-interval select{min-width:88px;border:0;background:transparent;color:var(--ink);font:inherit;outline:none}.live-location-countdown{display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:0 13px;border-radius:14px;background:#54525b0f;color:var(--muted);font-size:13px}.live-location-countdown.active{background:#4984661a;color:#356d53}.live-location-feedback{display:flex;align-items:center;gap:8px;margin-top:10px;padding:9px 12px;border-radius:12px;background:#49846617;color:#356d53;font-size:13px}.live-location-feedback.error{background:#b13e5717;color:#a13755}.live-location-summary{display:flex;align-items:center;gap:16px;min-height:24px;margin-top:10px;color:var(--muted);font-size:12px}.live-location-summary span{display:flex;align-items:center;gap:5px}.live-location-summary b{color:var(--ink);font-weight:700}.live-location-days{display:flex;flex-direction:column;min-height:0}.live-location-days-title button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:11px;background:#7d425514;color:var(--ink)}.live-location-day-list{display:flex;flex:1;flex-direction:column;gap:9px;max-height:clamp(510px,69vh,760px);overflow:auto;padding:2px}.live-location-day-card{display:flex;flex-direction:column;gap:8px;width:100%;padding:13px;border:1px solid rgba(117,63,80,.12);border-radius:16px;background:#ffffff94;color:var(--ink);text-align:left;transition:.2s ease}.live-location-day-card:hover,.live-location-day-card.selected{transform:translateY(-1px);border-color:#a83f6157;background:#fff6f5f0;box-shadow:0 10px 28px #66354417}.live-location-day-date{display:flex;align-items:center;justify-content:space-between;gap:8px}.live-location-day-date strong{font-size:14px}.live-location-day-date small{color:var(--muted);font-size:10px}.live-location-day-count{color:var(--muted);font-size:12px}.live-location-day-count b{color:#9a3657;font-size:18px}.live-location-day-members{flex-wrap:wrap;color:var(--muted);font-size:11px}.live-location-day-members i:not(:first-child){margin-left:5px}.live-location-empty{display:flex;flex:1;min-height:230px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;text-align:center;color:var(--muted)}.live-location-empty strong{color:var(--ink)}.live-location-empty span{font-size:12px;line-height:1.6}.live-location-day-note{display:flex;align-items:flex-start;gap:7px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(117,63,80,.1);color:var(--muted);font-size:11px;line-height:1.55}.live-location-day-note svg{flex:0 0 auto;margin-top:1px}@media(max-width:900px){.live-location-page{padding-top:84px}.topbar-collapsed .live-location-page{padding-top:26px}.live-location-layout{grid-template-columns:1fr}.live-location-days{min-height:300px}.live-location-day-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.live-location-empty{grid-column:1/-1}}@media(max-width:620px){.live-location-page{width:min(100% - 18px,var(--site-width));padding-top:72px}.topbar-collapsed .live-location-page{padding-top:18px}.live-location-heading{align-items:stretch;flex-direction:column;gap:12px}.live-location-heading h1{font-size:30px}.live-location-heading p{font-size:13px}.live-location-privacy{align-self:stretch}.live-location-main,.live-location-days{padding:10px;border-radius:18px}.live-location-map-title{align-items:flex-start;flex-direction:column}.live-location-map-shell{min-height:52vh;border-radius:15px}.live-location-controls,.live-location-controls.super-mode{grid-template-columns:1fr 1fr}.live-location-toggle,.live-location-countdown{grid-column:1/-1}.live-location-summary{flex-wrap:wrap;gap:8px 12px}.live-location-day-list{grid-template-columns:1fr}}.ai-config-section-nav{position:sticky;z-index:12;top:72px;display:flex;align-items:center;gap:8px;margin:0 0 16px;padding:10px 12px;border:1px solid rgba(139,62,88,.13);border-radius:16px;background:#fffafbeb;box-shadow:0 10px 28px #5b2b3c14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.ai-config-section-nav>span{margin-right:4px;color:var(--muted);font-size:10px;white-space:nowrap}.ai-config-section-nav button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 11px;border:1px solid rgba(139,62,88,.12);border-radius:10px;background:#ffffffb8;color:#83435a;font-size:11px;white-space:nowrap}.ai-config-section-nav button:hover,.ai-config-section-nav button.featured{border-color:#a83f614d;background:linear-gradient(135deg,#fff1f5,#fff);color:#a0395d}.ai-config-page .settings-card[id]{scroll-margin-top:126px}@media(max-width:720px){.ai-config-section-nav{top:60px;overflow-x:auto;justify-content:flex-start}.ai-config-section-nav>span{display:none}.ai-config-section-nav button{flex:0 0 auto}.ai-config-page .settings-card[id]{scroll-margin-top:112px}}.front-account-button{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 13px;border:1px solid rgba(150,50,84,.2);border-radius:999px;background:#fffaf8c7;color:var(--wine,#8f3657);font:inherit;cursor:pointer;white-space:nowrap}.front-account-button.signed-in{background:#9a37581a}.front-login-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1400;display:grid;place-items:center;padding:20px;background:#361f268a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.front-login-card{position:relative;width:min(430px,100%);padding:34px;border:1px solid rgba(151,55,88,.2);border-radius:28px;background:linear-gradient(155deg,#fffdfa,#fff5f4);box-shadow:0 32px 90px #43192847;text-align:center}.front-login-close{position:absolute;right:18px;top:18px;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:#8f365714;color:#8f3657;cursor:pointer}.front-login-seal{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border:1px solid rgba(151,55,88,.35);border-radius:50%;color:#a53b61;background:#fff8f7;box-shadow:0 10px 24px #91355521}.front-login-card h2{margin:8px 0;color:#643345;font-family:serif;font-size:30px}.front-login-card>p{margin:0 auto 22px;max-width:340px;color:#98707d;line-height:1.7}.front-login-card form{display:grid;gap:14px;text-align:left}.front-login-card label>span{display:block;margin:0 0 7px;color:#84586a;font-size:13px}.front-login-card label>div{display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid rgba(151,55,88,.18);border-radius:14px;background:#fff}.front-login-card input{width:100%;height:46px;border:0;outline:0;background:transparent;color:#5f3947;font:inherit}.front-login-card form button{justify-content:center;margin-top:5px}.front-login-error,.front-user-admin-notice{margin-top:14px;padding:11px 13px;border-radius:12px;background:#b5374b17;color:#a43c55;font-size:13px}.front-feature-gate-card{width:min(760px,calc(100% - 32px));margin:150px auto 80px;padding:56px 34px;text-align:center}.front-feature-gate-card h1{margin:12px 0;color:#6d3449;font:600 clamp(30px,5vw,48px)/1.1 serif}.front-feature-gate-card p{max-width:590px;margin:0 auto 24px;color:#956c7b;line-height:1.8}.front-feature-gate-card .button{margin:auto}.front-feature-gate-card>small{display:block;margin-top:16px;color:#a37383}.front-standalone-gate{min-height:100vh;display:grid;place-items:center;padding:24px;background:#fbf2f0 url(/assets/paper-bg.webp) center/cover}.front-gate-card{width:min(520px,100%);padding:50px 34px;border:1px solid rgba(151,55,88,.18);border-radius:30px;background:#fffcf9f0;box-shadow:0 25px 75px #491f2d2e;text-align:center}.front-gate-card h1{margin:14px 0 8px;color:#6d3449;font:600 38px/1.2 serif}.front-gate-card p{color:#94707c;line-height:1.8}.front-gate-card .button{margin:14px auto;justify-content:center}.front-gate-card>a{display:block;margin-top:16px;color:#a33c60}.front-user-admin-page{display:grid;gap:18px;padding-top:120px}.front-user-admin-hero{display:flex;align-items:center;justify-content:space-between;padding:27px 30px}.front-user-admin-hero h1{margin:7px 0 4px;color:#663449;font:600 clamp(30px,4vw,44px)/1.1 serif}.front-user-admin-hero p{margin:0;color:#9b7482}.front-user-admin-hero>svg{color:#a43b60}.front-user-admin-card{overflow:hidden;padding:22px}.front-user-admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;border:1px solid rgba(151,55,88,.12);border-radius:18px;background:#97375809}.front-user-admin-toolbar>div{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.front-user-admin-toolbar strong{font-size:28px;color:#84364f}.front-user-admin-toolbar span{color:#94717d}.front-user-admin-toolbar small{display:inline-flex;align-items:center;gap:5px;width:100%;color:#b06b82}.front-user-admin-notice{display:flex;align-items:center;gap:7px}.front-user-admin-layout{display:grid;grid-template-columns:minmax(270px,340px) minmax(0,1fr);gap:18px;margin-top:18px}.front-user-directory{min-width:0;padding:12px;border:1px solid rgba(151,55,88,.12);border-radius:20px;background:#ffffff59}.front-user-search{display:flex;align-items:center;gap:7px;height:42px;margin-bottom:10px;padding:0 11px;border:1px solid rgba(151,55,88,.16);border-radius:12px;background:#fff;color:#a05b72}.front-user-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#633b4a;font:inherit}.front-user-search>span{font-size:10px;color:#b78e9b}.front-user-list{display:flex;flex-direction:column;gap:8px;height:min(68vh,760px);overflow:auto;padding-right:5px}.front-user-list>button{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:12px;border:1px solid rgba(151,55,88,.12);border-radius:15px;background:#ffffff94;color:#76475a;text-align:left;cursor:pointer}.front-user-list>button.active{border-color:#9d365975;background:#9d365917;box-shadow:0 8px 22px #732b4314}.front-user-list button>span:nth-child(2){min-width:0}.front-user-list strong,.front-user-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.front-user-list small{margin-top:3px;color:#aa8390}.front-user-list em{font-size:11px;font-style:normal;color:#a0556d}.front-user-search-empty{display:grid;place-items:center;min-height:130px;color:#ad8290}.front-user-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(145deg,#b54b6e,#7c2e49);color:#fff;font:600 18px serif}.front-user-avatar.disabled{filter:grayscale(1);opacity:.55}.front-user-permission-editor{min-width:0;padding:19px;border:1px solid rgba(151,55,88,.13);border-radius:20px;background:#ffffff8c}.front-user-permission-editor>header{display:flex;align-items:center;justify-content:space-between;gap:15px}.front-user-permission-editor>header>div{display:flex;align-items:center;gap:11px}.front-user-permission-editor header strong,.front-user-permission-editor header small{display:block}.front-user-permission-editor header small{margin-top:3px;color:#a27a87}.front-user-enabled{display:flex;align-items:center;gap:7px;color:#87576a}.front-user-note{display:grid;gap:7px;margin:17px 0}.front-user-note span{font-size:12px;color:#916577}.front-user-note input{height:42px;padding:0 12px;border:1px solid rgba(151,55,88,.17);border-radius:12px;background:#fff;color:#633b4a;font:inherit}.front-permission-groups{display:grid;gap:16px;height:min(57vh,640px);overflow:auto;padding-right:6px}.front-permission-groups section{border:1px solid rgba(151,55,88,.11);border-radius:15px;overflow:hidden}.front-permission-groups h3{display:flex;align-items:center;gap:7px;margin:0;padding:11px 13px;background:#97375811;color:#7e3f56;font-size:14px}.front-permission-table{min-width:660px}.front-permission-head,.front-permission-row{display:grid;grid-template-columns:minmax(150px,1fr) 68px minmax(245px,1.1fr) 105px;align-items:center;gap:8px;padding:9px 12px}.front-permission-head{color:#ad8190;font-size:11px}.front-permission-row{border-top:1px solid rgba(151,55,88,.08);color:#785063}.front-permission-row>span:first-child strong,.front-permission-row>span:first-child small{display:block}.front-permission-row>span:first-child small{color:#ad8190;font-size:10px}.front-permission-row label{display:flex;align-items:center;gap:5px;font-size:12px}.front-time-range{display:flex;align-items:center;gap:5px}.front-time-range input{width:96px;padding:6px;border:1px solid rgba(151,55,88,.15);border-radius:8px;background:#fff;color:#73485a}.front-daily-limit{display:grid!important;grid-template-columns:55px 1fr}.front-daily-limit input{width:55px;padding:6px;border:1px solid rgba(151,55,88,.15);border-radius:8px}.front-daily-limit small{color:#ae8794}.front-no-limit{text-align:center;color:#baa0a8}.front-user-permission-editor>footer{display:flex;justify-content:flex-end;gap:9px;margin-top:18px;flex-wrap:wrap}.front-user-admin-empty{display:grid;place-items:center;gap:8px;min-height:260px;color:#a47786;text-align:center}.front-user-admin-card>.settings-help{display:flex;align-items:center;gap:7px}.invitation-page{position:relative;min-height:100vh;display:grid;place-items:center;overflow:hidden;padding:38px 18px;background:#48273a;color:#754358;isolation:isolate}.invitation-scenery{position:absolute;z-index:-3;top:-3%;right:-3%;bottom:-3%;left:-3%;background:none;animation:invitation-scenery-drift 18s ease-in-out infinite alternate;will-change:transform,filter}.invitation-page:before{content:"";position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 42%,#fff4e11a,#3b182a33 62%,#210f1d8c);-webkit-backdrop-filter:saturate(.9);backdrop-filter:saturate(.9)}.invitation-page:after{content:"";position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 160px #1c0b179e;pointer-events:none}@keyframes invitation-scenery-drift{0%{transform:scale(1.03) translate3d(-.5%,0,0);filter:saturate(.92) brightness(.88)}to{transform:scale(1.09) translate3d(.6%,-.8%,0);filter:saturate(1.05) brightness(.98)}}.invitation-petals{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;pointer-events:none}.invitation-petals i{position:absolute;top:-30px;width:13px;height:9px;border-radius:80% 15%;background:#f0b1b8;box-shadow:0 0 7px #ffdcb859;opacity:.68;animation:invitation-petal linear infinite}@keyframes invitation-petal{0%{transform:translate3d(-30px,-20px,0) rotate(0)}55%{transform:translate3d(55px,58vh,0) rotate(250deg)}to{transform:translate3d(15px,110vh,0) rotate(520deg)}}.invitation-glow span{position:absolute;z-index:0;border-radius:50%;filter:blur(3px);background:#ffe197e6;box-shadow:0 0 20px #ffd574e6;animation:invitation-glow 3.2s ease-in-out infinite}.invitation-glow span:nth-child(1){left:10%;top:20%;width:9px;height:9px}.invitation-glow span:nth-child(2){right:13%;top:28%;width:13px;height:13px;animation-delay:1s}.invitation-glow span:nth-child(3){left:20%;bottom:20%;width:7px;height:7px;animation-delay:2s}@keyframes invitation-glow{50%{transform:translateY(-18px) scale(2);opacity:.25}}.invitation-envelope{position:relative;z-index:2;width:min(720px,94vw);min-height:620px;perspective:1600px;animation:invitation-arrive .9s cubic-bezier(.2,.8,.2,1) both}@keyframes invitation-arrive{0%{opacity:0;transform:translateY(60px) scale(.92)}to{opacity:1;transform:none}}.invitation-envelope-back{position:absolute;top:70px;right:0;bottom:0;left:0;border-radius:28px;background:#b9687e;box-shadow:0 40px 100px #240e1b7a}.invitation-letter{position:relative;z-index:2;width:calc(100% - 64px);min-height:560px;margin:0 auto;padding:38px 48px 45px;border:1px solid rgba(144,66,89,.2);border-radius:24px;background:linear-gradient(145deg,#fffef8f7,#fff4f1f5);box-shadow:0 20px 60px #280f1b5c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform 1.2s cubic-bezier(.65,0,.35,1),opacity .8s}.invitation-letter:before,.invitation-letter:after{content:"";position:absolute;top:16px;right:16px;bottom:16px;left:16px;border:1px solid rgba(171,92,112,.16);border-radius:17px;pointer-events:none}.invitation-letter:after{top:21px;right:21px;bottom:21px;left:21px;border-style:dashed}.invitation-letter-heading{text-align:center}.invitation-mini-hearts{display:flex;justify-content:center;align-items:center;gap:7px;color:#b54569}.invitation-letter h1{margin:8px 0 4px;color:#693448;font:600 clamp(34px,6vw,54px)/1.1 serif;letter-spacing:.06em}.invitation-letter-heading p{margin:0 0 22px;color:#9c7180}.invitation-form{position:relative;z-index:1}.invitation-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.invitation-form label{display:grid;gap:6px}.invitation-form label.full{grid-column:1/-1}.invitation-form label>span{font-size:12px;color:#8d6172}.invitation-form label>div{display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid rgba(151,55,88,.18);border-radius:12px;background:#ffffffd1}.invitation-form input{width:100%;height:42px;border:0;outline:0;background:transparent;color:#623b4a;font:inherit}.invitation-accept{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:49px;margin-top:18px;border:0;border-radius:999px;background:linear-gradient(100deg,#82314e,#b8496d);box-shadow:0 14px 30px #9131523d;color:#fff;font:600 15px/1 sans-serif;cursor:pointer}.invitation-accept:disabled{opacity:.7}.invitation-form>small{display:block;margin-top:10px;color:#af8a95;text-align:center}.invitation-error{margin:10px 0 0;color:#ae405b;text-align:center}.invitation-envelope-front{position:absolute;z-index:3;left:0;right:0;bottom:0;height:155px;border-radius:0 0 28px 28px;background:linear-gradient(145deg,#d993a3,#b76179);clip-path:polygon(0 0,50% 60%,100% 0,100% 100%,0 100%);pointer-events:none;opacity:.14}.invitation-wax{position:absolute;left:50%;top:63%;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;transform:translate(-50%,-50%);background:#8d2f50;color:#f8dfe5;box-shadow:inset 0 0 0 5px #ffffff1f}.invitation-state,.invitation-success{position:relative;z-index:1;display:grid;place-items:center;gap:12px;min-height:280px;text-align:center;color:#8c5b6c}.invitation-state strong,.invitation-success strong{color:#6c3549;font:600 27px serif}.invitation-state a{color:#a13c5d}.invitation-success span{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#a63d61;color:#fff;animation:invite-success-pop .6s ease both}@keyframes invite-success-pop{0%{transform:scale(0) rotate(-20deg)}70%{transform:scale(1.12)}to{transform:scale(1)}}.invitation-success p{margin:0;color:#9b7481}.invitation-success .invitation-envelope-front{opacity:1}.invitation-success .invitation-letter,.invitation-page.invitation-success .invitation-letter{transform:translateY(165px) scale(.94);opacity:0}.invitation-page.invitation-success .invitation-envelope-front{opacity:1;animation:invite-close 1s .35s both}@keyframes invite-close{0%{transform:translateY(100%)}to{transform:none}}@media(max-width:820px){.front-user-admin-page{padding-top:96px}.front-user-admin-hero{padding:22px}.front-user-admin-layout{grid-template-columns:1fr}.front-user-list{height:240px}.front-user-permission-editor{overflow:hidden}.front-permission-groups{height:auto;max-height:620px;overflow:auto}.front-account-button span{display:none}.invitation-envelope{min-height:670px}.invitation-letter{width:calc(100% - 24px);padding:32px 25px 42px}.invitation-form-grid{grid-template-columns:1fr}.invitation-form label.full{grid-column:auto}.invitation-envelope-front{height:120px}}@media(max-width:520px){.front-login-card{padding:30px 20px}.front-user-admin-toolbar{align-items:stretch;flex-direction:column}.front-user-admin-toolbar .button{justify-content:center}.front-feature-gate-card{margin-top:110px;padding:42px 22px}.invitation-page{padding:15px 6px}.invitation-letter h1{font-size:33px}.invitation-envelope{min-height:740px}.invitation-letter{padding-inline:20px}}.invitation-page.invitation-success .invitation-letter{transform:none;opacity:1;animation:invite-letter-close .9s 1.05s forwards}.invitation-page.invitation-success .invitation-envelope-front{animation:invite-close .9s 1.05s both}@keyframes invite-letter-close{to{transform:translateY(165px) scale(.94);opacity:0}}@media(prefers-reduced-motion:reduce){.invitation-scenery,.invitation-petals i,.invitation-glow span,.invitation-envelope{animation:none!important}}.invitation-scenery{background-image:none}.invitation-page{background:radial-gradient(circle at 50% 44%,#102445 0,#071326 45%,#030812)}.invitation-scenery{display:none}.invitation-page:before{background:radial-gradient(circle at 50% 45%,rgba(69,156,255,.13),transparent 38%),linear-gradient(115deg,rgba(26,212,255,.05),transparent 40%,rgba(116,83,255,.08));-webkit-backdrop-filter:none;backdrop-filter:none}.invitation-page:after{box-shadow:inset 0 0 180px #00040cc7}.invitation-tech-scene{position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0;overflow:hidden;perspective:1000px}.invitation-tech-grid{position:absolute;left:-15%;right:-15%;bottom:-32%;height:72%;transform:rotateX(63deg);transform-origin:center top;background-image:linear-gradient(rgba(76,199,255,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(76,199,255,.15) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 25%,#000);mask-image:linear-gradient(to bottom,transparent,#000 25%,#000);animation:invitation-grid-flow 8s linear infinite}.invitation-tech-grid:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(62,219,255,.18),transparent);animation:invitation-grid-scan 5s ease-in-out infinite}.invitation-orbit{position:absolute;border:1px solid rgba(101,213,255,.22);border-radius:50%;box-shadow:0 0 40px #50a1ff14}.orbit-one{width:68vw;height:68vw;left:50%;top:52%;transform:translate(-50%,-50%) rotateX(70deg);animation:invitation-orbit-spin 26s linear infinite}.orbit-two{width:48vw;height:48vw;left:50%;top:50%;border-color:#8e71ff3d;transform:translate(-50%,-50%) rotateY(70deg);animation:invitation-orbit-spin-two 20s linear infinite}.invitation-polyhedron{position:absolute;overflow:visible;filter:drop-shadow(0 0 14px rgba(81,210,255,.4));transform-style:preserve-3d}.polyhedron-one{left:5%;top:12%;width:clamp(105px,14vw,210px);animation:polyhedron-float-one 9s ease-in-out infinite}.polyhedron-two{right:5%;top:13%;width:clamp(95px,12vw,180px);animation:polyhedron-float-two 11s ease-in-out infinite}.polyhedron-three{right:12%;bottom:8%;width:clamp(80px,10vw,145px);animation:polyhedron-float-three 8s ease-in-out infinite}.invitation-data-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,#56dbff,transparent);opacity:.38}.line-one{top:24%;left:-20%;width:45%;animation:invitation-data-pulse 5s ease-in-out infinite}.line-two{right:-15%;bottom:24%;width:42%;animation:invitation-data-pulse 5s 2.2s ease-in-out infinite}.invitation-petals i{width:3px;height:3px;border-radius:50%;background:#6ee7ff;box-shadow:0 0 10px #5ddfff;animation-name:invitation-tech-particle}.invitation-glow span{background:#8aeaff;box-shadow:0 0 24px #4bcbff}.invitation-envelope-back{background:linear-gradient(145deg,#2f70a0ad,#483e97b8);box-shadow:0 35px 100px #000412b3}.invitation-letter{border-color:#6bdcff38;background:linear-gradient(145deg,#f8fdfff7,#ecf2fff2);box-shadow:0 22px 70px #00081e8c,0 0 45px #43bfff1c}.invitation-letter:before{border-color:#3a9dcc36}.invitation-letter:after{border-color:#5b65c629}.invitation-mini-hearts,.invitation-letter h1{color:#30486d}.invitation-letter-heading p,.invitation-form label>span{color:#71819c}.invitation-form label>div{border-color:#4189be33;background:#ffffffc7}.invitation-accept{background:linear-gradient(100deg,#137ba5,#5550bd);box-shadow:0 15px 32px #2168b847}.invitation-envelope-front{background:linear-gradient(145deg,#55afce,#5d5ab7)}.invitation-wax{background:#345596;color:#d9f7ff}@keyframes invitation-grid-flow{to{background-position:0 58px,58px 0}}@keyframes invitation-grid-scan{0%,to{transform:translate(-80%);opacity:0}50%{transform:translate(80%);opacity:1}}@keyframes invitation-orbit-spin{to{transform:translate(-50%,-50%) rotateX(70deg) rotate(360deg)}}@keyframes invitation-orbit-spin-two{to{transform:translate(-50%,-50%) rotateY(70deg) rotate(-360deg)}}@keyframes polyhedron-float-one{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(25px) rotate(14deg)}}@keyframes polyhedron-float-two{0%,to{transform:translateY(10px) rotate(8deg)}50%{transform:translateY(-18px) rotate(-12deg)}}@keyframes polyhedron-float-three{0%,to{transform:translate(0) rotate(-5deg)}50%{transform:translate(-18px,-20px) rotate(15deg)}}@keyframes invitation-tech-particle{0%{transform:translate3d(0,-20px,0);opacity:0}20%{opacity:.8}to{transform:translate3d(50px,105vh,0);opacity:0}}@keyframes invitation-data-pulse{0%,to{transform:translate(-20%);opacity:0}50%{transform:translate(70%);opacity:.6}}.front-ai-limit-batch{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 17px;padding:13px 15px;border:1px solid rgba(84,139,189,.16);border-radius:14px;background:linear-gradient(110deg,#449ac90f,#7553be0b)}.front-ai-limit-batch>span strong,.front-ai-limit-batch>span small{display:block}.front-ai-limit-batch>span strong{color:#6b4256;font-size:13px}.front-ai-limit-batch>span small{margin-top:3px;color:#a07a88;font-size:10px}.front-ai-limit-batch>label{display:flex;align-items:center;gap:8px}.front-ai-limit-batch input{width:88px;height:36px;padding:0 9px;border:1px solid rgba(99,123,180,.22);border-radius:9px;background:#fff;color:#563b50}.front-ai-limit-batch .button{min-height:36px;padding:0 12px}.front-daily-limit input::placeholder{color:#b18f9b;opacity:1}@media(max-width:720px){.front-ai-limit-batch{align-items:stretch;flex-direction:column}.front-ai-limit-batch>label{justify-content:space-between}.invitation-polyhedron{opacity:.65}.polyhedron-one{left:-5%}.polyhedron-two{right:-7%}.polyhedron-three{right:-5%;bottom:2%}.orbit-one{width:130vw;height:130vw}.orbit-two{width:95vw;height:95vw}}@media(prefers-reduced-motion:reduce){.invitation-tech-grid,.invitation-orbit,.invitation-polyhedron,.invitation-data-line{animation:none!important}}
