@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@500;600&display=swap";.fm-records[data-v-c1497fcb]{min-width:0}.record-layout[data-v-c1497fcb]{display:grid;grid-template-columns:240px minmax(0,1fr);gap:20px}.record-sidebar[data-v-c1497fcb]{display:flex;flex-direction:column;gap:10px;min-width:0}.record-month[data-v-c1497fcb],.record-date[data-v-c1497fcb]{width:100%;text-align:left}.record-month[data-v-c1497fcb]{display:flex;justify-content:space-between;align-items:center}.record-date.selected[data-v-c1497fcb],.record-day.selected[data-v-c1497fcb]{border-color:var(--fm-accent, #55dfc1);background:var(--fm-surface-active, #1e2940);color:var(--fm-accent, #55dfc1)}.record-recent-label[data-v-c1497fcb]{margin:16px 0 0}.record-content[data-v-c1497fcb],.record-calendar[data-v-c1497fcb]{position:relative;min-width:0;padding:20px;border:1px solid var(--fm-border, #202638);border-radius:14px;background:var(--fm-surface, #0d111b)}.record-content[data-v-c1497fcb]{min-height:360px}.record-content-header[data-v-c1497fcb]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--fm-border, #202638)}.record-content-header h2[data-v-c1497fcb]{font-size:20px;margin:0 0 8px}.record-content-header small[data-v-c1497fcb],.record-hint[data-v-c1497fcb]{color:var(--fm-text-muted, #68738d);font-size:12px;line-height:1.7}.record-text[data-v-c1497fcb]{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.9;margin:20px 0 0;color:var(--fm-text, #dfe5f5)}.record-calendar[data-v-c1497fcb]{padding:12px}.record-month-controls[data-v-c1497fcb]{display:flex;align-items:center;gap:6px;margin-bottom:12px}.record-month-controls input[data-v-c1497fcb]{width:0;min-width:0;flex:1;padding:6px;font-size:12px}.record-calendar-grid[data-v-c1497fcb]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.record-calendar-grid small[data-v-c1497fcb]{color:var(--fm-text-muted, #68738d);padding:5px 0}.record-day[data-v-c1497fcb]{position:relative;min-width:0;padding:7px 0}.record-day.today[data-v-c1497fcb]{box-shadow:inset 0 0 0 1px var(--fm-accent, #55dfc1)}.record-day.marked[data-v-c1497fcb]:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:var(--fm-accent, #55dfc1);bottom:2px;left:calc(50% - 2px)}.record-editor[data-v-c1497fcb]{width:min(760px,94vw);position:relative}.record-editor textarea[data-v-c1497fcb]{width:100%;resize:vertical;min-height:200px}.record-conflict[data-v-c1497fcb]{padding:14px;border:1px solid var(--fm-border, #202638);border-radius:10px;background:var(--fm-surface-raised, #202638)}.record-conflict .record-text[data-v-c1497fcb]{max-height:180px;overflow:auto;font-size:13px}.record-conflict-actions[data-v-c1497fcb]{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}@media(max-width:760px){.record-layout[data-v-c1497fcb]{grid-template-columns:1fr}.record-sidebar[data-v-c1497fcb]{max-width:100%}.record-content[data-v-c1497fcb]{padding:16px}.record-content-header[data-v-c1497fcb]{align-items:flex-start}.record-content-header .fm-primary[data-v-c1497fcb]{white-space:nowrap}.record-calendar[data-v-c1497fcb]{max-width:320px}}.fm-icp-global{position:fixed;left:18px;bottom:14px;z-index:20;color:var(--fm-text-secondary, #9da9c2);font-size:13px;font-weight:500;text-decoration:none;letter-spacing:.04em;text-shadow:0 1px 8px var(--fm-shadow, #000)}.fm-icp-global:hover{color:var(--fm-text, #d7def0);text-decoration:underline}.fm-login-brand p{margin:0 0 22px;color:var(--fm-text, #aeb9d7);font:600 clamp(22px,2.8vw,38px) "Space Grotesk";letter-spacing:.12em;text-shadow:0 8px 30px #4f54d055}.fm-login-brand h1{margin:0;color:var(--fm-text, #e9edff);font:600 clamp(36px,4.8vw,68px) "Space Grotesk";letter-spacing:-.045em;background:linear-gradient(100deg,var(--fm-surface-active, #f2f4ff),#8c9cff 55%,#56d8ce);-webkit-background-clip:text;background-clip:text;color:transparent}:root{font-family:Inter,Segoe UI,PingFang SC,sans-serif;color:var(--fm-text, #eef2ff);background:var(--fm-page, #060810);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--fm-page, #060810)}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;overflow:hidden}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr;position:relative}.auth-layout:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.16;background-image:linear-gradient(var(--fm-surface-line, rgba(255,255,255,.04)) 1px,transparent 1px),linear-gradient(90deg,var(--fm-surface-line, rgba(255,255,255,.04)) 1px,transparent 1px);background-size:52px 52px;-webkit-mask-image:linear-gradient(to right,#000,transparent 75%);mask-image:linear-gradient(to right,#000,transparent 75%)}.brand-panel{position:relative;display:flex;flex-direction:column;justify-content:center;padding:8vw;background:radial-gradient(circle at 23% 37%,rgba(90,72,255,.22),transparent 30%),radial-gradient(circle at 70% 72%,rgba(0,214,201,.12),transparent 28%)}.brand-panel:after{content:"";position:absolute;width:420px;height:420px;left:12%;top:24%;border:1px solid var(--fm-border-strong, rgba(121,108,255,.12));border-radius:50%;box-shadow:0 0 80px #4e40ff14,inset 0 0 80px #4e40ff0d}.brand-mark,.mini-brand span{display:grid;place-items:center;font-family:Space Grotesk,sans-serif;color:#fff;background:linear-gradient(145deg,#765cff,#33d4c7);box-shadow:0 12px 42px #6654ff52}.brand-mark{width:52px;height:52px;border-radius:15px;font-size:25px;margin-bottom:44px;position:relative;z-index:1}.eyebrow{margin:0 0 18px;color:var(--fm-text-secondary, #7f8ba8);letter-spacing:.2em;font-size:11px;font-weight:700}.brand-panel h1{position:relative;z-index:1;margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(42px,5vw,74px);line-height:1.07;letter-spacing:-.045em}.brand-panel h1 em{font-style:normal;color:transparent;background:linear-gradient(90deg,#8872ff,#49dfd0);-webkit-background-clip:text;background-clip:text}.brand-copy{max-width:480px;margin:28px 0 48px;color:var(--fm-text-secondary, #8d97b2);line-height:1.8}.signal{display:flex;align-items:center;gap:11px;color:var(--fm-text-muted, #6f7891);font-size:12px}.signal i{width:7px;height:7px;border-radius:50%;background:#3ce0a0;box-shadow:0 0 14px #3ce0a0}.auth-panel{display:grid;place-items:center;padding:48px;border-left:1px solid var(--fm-border-strong, rgba(255,255,255,.06));background:var(--fm-surface, rgba(9,11,21,.8));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.auth-card{width:min(420px,100%)}.mode-switch{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:12px;background:var(--fm-surface, #0d101c);border:1px solid var(--fm-border, #1a1e2d)}.mode-switch button{border:0;padding:10px;border-radius:9px;color:var(--fm-text-muted, #6f7891);background:transparent;transition:.2s}.mode-switch button.active{color:var(--fm-text, #f3f5ff);background:var(--fm-surface-raised, #191d2d);box-shadow:0 4px 15px var(--fm-shadow, rgba(0,0,0,.25))}.form-heading{margin:42px 0 30px}.form-heading h2{margin:0 0 9px;font:600 30px Space Grotesk,sans-serif;letter-spacing:-.025em}.form-heading p{margin:0;color:var(--fm-text-muted, #77819c);font-size:14px}form{display:grid;gap:20px}label{display:grid;gap:9px}label span{color:var(--fm-text-secondary, #a8b0c6);font-size:12px;font-weight:600}input{width:100%;border:1px solid var(--fm-border, #24293b);border-radius:11px;outline:none;padding:14px 15px;color:var(--fm-text, #eff2ff);background:var(--fm-surface, #0c0f19);transition:.2s}input::placeholder{color:var(--fm-text-muted, #484f65)}input:focus{border-color:var(--fm-border-strong, #6658e8);box-shadow:0 0 0 3px #6658e81f}.form-error{margin:-7px 0 0;color:var(--fm-danger, #ff7f9e);font-size:13px}.submit-button{margin-top:5px;border:0;border-radius:11px;padding:14px 17px;display:flex;justify-content:space-between;color:#fff;font-weight:600;background:linear-gradient(110deg,#6854e8,#397fd3);box-shadow:0 10px 28px #4948d038;transition:.2s}.submit-button:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.08)}.submit-button:disabled{opacity:.55;cursor:wait}.submit-button b{font-size:18px;font-weight:400}.security-note{margin:25px 0 0;text-align:center;color:var(--fm-text-muted, #535c73);font-size:11px}.workspace{width:min(980px,calc(100% - 40px));margin:0 auto;min-height:100vh;padding:26px 0 40px}.workspace nav{display:flex;justify-content:space-between;align-items:center;padding-bottom:65px}.mini-brand{display:flex;align-items:center;gap:11px;font-family:Space Grotesk,sans-serif}.mini-brand span{width:32px;height:32px;border-radius:9px}.account{display:flex;align-items:center;gap:17px;color:var(--fm-text-secondary, #9ca5bd);font-size:13px}.account button{border:1px solid var(--fm-border, #252a3a);border-radius:8px;padding:7px 12px;color:var(--fm-text-secondary, #8e98b1);background:var(--fm-surface, #0d1019)}.workspace-hero{margin-bottom:35px}.workspace-hero h1{margin:0 0 9px;font:600 clamp(32px,5vw,52px) "Space Grotesk",sans-serif;letter-spacing:-.04em}.workspace-hero>p:last-child{margin:0;color:var(--fm-text-muted, #79839c)}.magic-panel{border:1px solid var(--fm-border, #1c2131);border-radius:18px;padding:22px;background:linear-gradient(145deg,var(--fm-surface-raised, rgba(18,21,34,.9)),var(--fm-surface, rgba(9,11,19,.95)));box-shadow:0 30px 80px var(--fm-shadow, rgba(0,0,0,.3))}.input-row{display:grid;grid-template-columns:1fr auto auto;gap:10px}.cast-button,.random-button{border-radius:10px;padding:0 18px}.cast-button{border:0;color:#fff;background:linear-gradient(110deg,#6854e8,#397fd3)}.random-button{border:1px solid var(--fm-border, #2b3043);color:var(--fm-text-secondary, #aeb6ca);background:var(--fm-surface-raised, #121521)}.spell-card{margin-top:22px;padding:24px;border-radius:14px;border:1px solid var(--fm-border-strong, rgba(107,91,239,.28));background:radial-gradient(circle at 90% 10%,rgba(57,201,192,.1),transparent 35%),#6756eb12;animation:reveal .4s ease}.spell-card>div:first-child{display:flex;justify-content:space-between;color:var(--fm-text-muted, #69738c);font-size:11px}.spell-card p{margin:0;text-transform:uppercase;letter-spacing:.15em}.spell-card h2{margin:20px 0 7px;font-size:18px;color:var(--fm-text, #d9dded)}.spell-card strong{color:var(--fm-accent, #5ce0d2);font:600 clamp(25px,4vw,38px) "Space Grotesk",sans-serif;text-shadow:0 0 30px rgba(74,219,205,.25)}.power{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:26px;color:var(--fm-text-muted, #78829b);font-size:12px}.power i{height:5px;overflow:hidden;border-radius:9px;background:var(--fm-surface-active, #252a3b)}.power i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6d58ed,#43d9c9)}.power em{color:var(--fm-accent, #4edacb);font-style:normal}.workspace footer{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:27px;color:var(--fm-text-muted, #565f75);font-size:11px}.workspace footer i{width:6px;height:6px;border-radius:50%;background:var(--fm-surface-active, #667085)}.workspace footer i.up{background:#42d99a;box-shadow:0 0 10px #42d99a}.workspace footer i.offline{background:#ee6685}.admin-panel{margin-top:22px;border:1px solid var(--fm-border, #1c2131);border-radius:18px;padding:22px;background:var(--fm-surface, rgba(12,15,25,.88))}.admin-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.admin-heading h2{margin:0;font:600 22px Space Grotesk,sans-serif}.admin-heading .eyebrow{margin-bottom:7px}.admin-heading button,.user-row button{border:1px solid var(--fm-border, #2b3043);border-radius:8px;padding:8px 13px;color:var(--fm-text-secondary, #aeb6ca);background:var(--fm-surface-raised, #121521)}.user-list{display:grid;gap:9px}.user-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;border:1px solid var(--fm-border, #202536);border-radius:11px;background:var(--fm-surface, #0c0f19)}.user-row div{display:grid;gap:4px}.user-row strong{color:var(--fm-text, #e6e9f5);font-size:14px}.user-row span{color:var(--fm-text-muted, #69738c);font-size:11px}.user-row button.danger{color:var(--fm-danger, #ff8da7);border-color:var(--fm-border-strong, rgba(255,100,135,.25))}.user-row button:disabled{opacity:.35;cursor:not-allowed}@keyframes reveal{0%{opacity:0;transform:translateY(8px)}}@media(max-width:820px){.auth-layout{grid-template-columns:1fr}.brand-panel{min-height:37vh;padding:55px 28px 40px}.brand-panel h1{font-size:38px}.brand-panel .brand-copy,.brand-panel .signal{display:none}.brand-mark{margin-bottom:30px}.auth-panel{padding:42px 24px 60px;border-left:0;border-top:1px solid var(--fm-border-strong, rgba(255,255,255,.06))}}@media(max-width:600px){.workspace nav{padding-bottom:46px}.input-row{grid-template-columns:1fr 1fr}.input-row input{grid-column:1 / -1}.account>span{display:none}}.fm-shell{min-height:100vh}.fm-eyebrow{margin:0 0 8px;color:var(--fm-text-muted, #6f7b98);font-size:10px;letter-spacing:.18em;font-weight:700}.fm-error{color:var(--fm-danger, #ff7d9d);font-size:12px}.fm-primary{border:0;border-radius:10px;padding:13px 18px;color:#fff;font-weight:600;background:linear-gradient(110deg,#6754e8,#338ec8)}.fm-primary:disabled{opacity:.5}.fm-primary.compact{padding:10px 15px}.fm-login{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr;background:radial-gradient(circle at 25% 45%,rgba(94,74,238,.22),transparent 30%)}.fm-login-brand{display:flex;flex-direction:column;justify-content:center;padding:9vw}.fm-login-brand>span,.fm-logo>span{display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#735bff,#32d5c5)}.fm-login-brand>span{width:54px;height:54px;border-radius:16px;font:600 25px Space Grotesk;box-shadow:0 12px 40px #5d4cdc55}.fm-login-brand p{margin:45px 0 15px;color:var(--fm-text-secondary, #7d88a5);font-size:11px;letter-spacing:.2em}.fm-login-brand h1{margin:0;font:600 clamp(40px,5vw,72px) "Space Grotesk";letter-spacing:-.04em}.fm-login-brand small{margin-top:30px;color:var(--fm-text-muted, #667087)}.fm-login-card{align-self:center;width:min(390px,calc(100% - 50px));display:grid;gap:18px;padding:38px;border:1px solid var(--fm-border, #202536);border-radius:20px;background:var(--fm-surface, #0d101aaa);box-shadow:0 30px 80px var(--fm-shadow, #0008)}.fm-login-card h2{margin:0;font:600 29px Space Grotesk}.fm-login-card>p:not(.fm-eyebrow):not(.fm-error){margin:-12px 0 9px;color:var(--fm-text-muted, #707b96);font-size:13px}.fm-login-card label{display:grid;gap:8px;color:var(--fm-text-secondary, #9da7bd);font-size:12px}.fm-login-card input,.fm-create input,.fm-adjust input{min-width:0;border:1px solid var(--fm-border, #272d40);border-radius:9px;padding:12px 13px;outline:none;color:var(--fm-text, #eef2ff);background:var(--fm-surface, #0a0d16)}.fm-dashboard{min-height:100vh;display:grid;grid-template:72px 1fr/210px minmax(0,1fr) 310px}.fm-dashboard>header{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid var(--fm-border, #1b2030);background:var(--fm-surface, #0a0d15)}.fm-logo{display:flex;align-items:center;gap:11px;font-family:Space Grotesk}.fm-logo>span{width:34px;height:34px;border-radius:10px}.fm-profile{display:flex;align-items:center;gap:12px;font-size:12px}.fm-profile em{color:var(--fm-accent, #4dd3c5);font-style:normal}.fm-profile strong{color:var(--fm-text, #bdc5d8)}.fm-profile button,.fm-calendar-head button,.fm-close{border:1px solid var(--fm-border, #272d3f);color:var(--fm-text-secondary, #919bb3);background:var(--fm-surface-raised, #111520);border-radius:8px;padding:7px 11px}.fm-sidebar{padding:25px 14px;border-right:1px solid var(--fm-border, #1b2030);background:var(--fm-surface, #090c14)}.fm-sidebar p{margin:0 12px 14px;color:var(--fm-text-muted, #505a72);font-size:10px;letter-spacing:.16em}.fm-sidebar>button{width:100%;display:flex;gap:10px;border:0;border-radius:9px;padding:12px;color:var(--fm-text-secondary, #8490aa);background:transparent}.fm-sidebar>button.active{color:var(--fm-text, #fff);background:var(--fm-surface-raised, #171b2a)}.fm-content{padding:34px;overflow:auto;background:radial-gradient(circle at 50% 30%,var(--fm-surface-raised, #11152588),transparent 45%)}.fm-empty{height:100%;display:grid;place-content:center;text-align:center;color:var(--fm-text-muted, #454f68)}.fm-empty span{font:600 54px Space Grotesk;opacity:.18}.fm-empty p{font-size:12px}.fm-checkin{padding:24px 20px;border-left:1px solid var(--fm-border, #1b2030);background:var(--fm-surface, #090c14)}.fm-points-card{display:grid;padding:20px;margin-bottom:25px;border:1px solid var(--fm-border, #242a3d);border-radius:15px;background:linear-gradient(145deg,var(--fm-surface-raised, #171b2b),var(--fm-surface, #0e111c))}.fm-points-card small{color:var(--fm-text-muted, #73809b)}.fm-points-card strong{margin-top:8px;font:600 38px Space Grotesk}.fm-points-card span{color:var(--fm-accent, #4dd3c5);font-size:9px;letter-spacing:.18em}.fm-calendar-head{display:flex;align-items:center;justify-content:space-between;margin:10px 0 16px}.fm-calendar-head b{font-size:13px}.fm-calendar-head button{padding:4px 9px}.fm-week,.fm-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.fm-week span{text-align:center;color:var(--fm-text-muted, #505a70);font-size:10px}.fm-calendar{margin-top:8px}.fm-calendar span{aspect-ratio:1;display:grid;place-items:center;border-radius:8px;color:var(--fm-text-secondary, #8e98b0);font-size:11px}.fm-calendar span.checked{color:#06120e;background:#44d39a;box-shadow:0 0 13px #44d39a44}.fm-calendar span.today{outline:1px solid var(--fm-border-strong, #7a67ef);color:var(--fm-text, #fff)}.fm-calendar span.muted{visibility:hidden}.fm-checkin-btn{width:100%;margin-top:22px;border:1px solid var(--fm-border-strong, #315f55);border-radius:10px;padding:12px;color:var(--fm-success, #58deb0);background:var(--fm-success-bg, #11231f)}.fm-checkin-btn:disabled{color:var(--fm-text-muted, #71817c);opacity:.7}.fm-users{max-width:1150px;margin:auto}.fm-page-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.fm-page-title h1{margin:0 0 5px;font:600 34px Space Grotesk}.fm-page-title small{color:var(--fm-text-muted, #69748f)}.fm-create{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:9px;margin-bottom:16px;padding:14px;border:1px solid var(--fm-border, #202638);border-radius:13px;background:var(--fm-surface, #0d111b)}.fm-table{overflow:auto;border:1px solid var(--fm-border, #202638);border-radius:14px;background:var(--fm-surface, #0d1019)}.fm-table table{width:100%;border-collapse:collapse;font-size:12px}.fm-table th{text-align:left;padding:13px 15px;color:var(--fm-text-muted, #5f6a84);font-size:10px;letter-spacing:.08em;background:var(--fm-surface-raised, #111522)}.fm-table td{padding:15px;border-top:1px solid var(--fm-border, #1c2130);color:var(--fm-text-secondary, #949eb5);white-space:nowrap}.fm-table td:first-child{display:grid;gap:4px}.fm-table td strong{color:var(--fm-text, #e3e7f2)}.fm-table td small{color:var(--fm-text-muted, #667087)}.fm-status{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%}.fm-status.online{background:#43d89d;box-shadow:0 0 8px #43d89d}.fm-status.offline{background:var(--fm-surface-active, #68738c)}.fm-status.disabled{background:#ef708e}.fm-points{color:var(--fm-accent, #52dac0)}.fm-text{border:0;padding:5px;color:var(--fm-accent, #7d8ff0);background:transparent}.fm-text.danger{color:var(--fm-danger, #dc718c)}.fm-text:disabled{opacity:.25}.fm-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;background:var(--fm-scrim, #0009);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.fm-drawer{position:absolute;right:0;top:0;width:min(520px,100%);height:100%;overflow:auto;padding:36px;border-left:1px solid var(--fm-border, #293047);background:var(--fm-surface, #0c0f18);box-shadow:-30px 0 80px var(--fm-shadow, #0008)}.fm-close{float:right;font-size:20px}.fm-drawer h2{margin:0 0 5px;font:600 29px Space Grotesk}.fm-drawer>small{color:var(--fm-text-muted, #68738d)}.fm-tabs{display:grid;grid-template-columns:1fr 1fr;margin:28px 0 22px;padding:4px;border-radius:10px;background:var(--fm-surface-raised, #121621)}.fm-tabs button{border:0;border-radius:7px;padding:9px;color:var(--fm-text-muted, #6f7992);background:transparent}.fm-tabs button.active{color:var(--fm-text, #fff);background:var(--fm-surface-raised, #202638)}.fm-calendar.large span{font-size:13px}.fm-adjust{display:grid;grid-template-columns:100px 1fr auto;gap:8px}.fm-ledger{display:grid;gap:9px;margin-top:20px}.fm-ledger article{position:relative;padding:14px;border:1px solid var(--fm-border, #21273a);border-radius:10px;background:var(--fm-surface-raised, #10141f)}.fm-ledger article.deleted{opacity:.42}.fm-ledger article>div{display:flex;align-items:center;gap:12px}.fm-ledger article b{font-size:18px}.fm-ledger .plus{color:var(--fm-success, #45d7a0)}.fm-ledger .minus{color:var(--fm-danger, #f07894)}.fm-ledger article span,.fm-ledger article p{color:var(--fm-text-muted, #6e7891);font-size:11px}.fm-ledger article p{margin:7px 0 0}.fm-ledger article>button{position:absolute;right:12px;top:12px;border:0;color:var(--fm-danger, #dc718c);background:transparent;font-size:11px}.fm-empty-list{text-align:center;color:var(--fm-text-muted, #515b72);padding:30px}@media(max-width:1050px){.fm-dashboard{grid-template-columns:180px minmax(0,1fr)}.fm-checkin{grid-column:1/-1;border-left:0;border-top:1px solid var(--fm-border, #1b2030);display:grid;grid-template-columns:200px 1fr;gap:20px}.fm-checkin-btn{grid-column:1/-1}.fm-points-card{margin:0}.fm-login{grid-template-columns:1fr}.fm-login-brand{display:none}.fm-login-card{justify-self:center}}@media(max-width:700px){.fm-dashboard{display:block}.fm-dashboard>header{height:65px}.fm-sidebar{display:flex;border-right:0;border-bottom:1px solid var(--fm-border, #1b2030)}.fm-sidebar p{display:none}.fm-sidebar>button{width:auto}.fm-content{padding:20px;min-height:420px}.fm-checkin{display:block}.fm-points-card{margin-bottom:20px}.fm-create{grid-template-columns:1fr}.fm-page-title{align-items:start}.fm-table{margin-right:-20px}.fm-drawer{padding:25px}.fm-adjust{grid-template-columns:1fr}.fm-profile em{display:none}}@media(min-width:1051px){.fm-dashboard{height:100vh;height:100dvh;min-height:0;overflow:hidden;grid-template-rows:72px minmax(0,1fr)}.fm-dashboard>.fm-content{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain}.fm-dashboard>.fm-sidebar,.fm-dashboard>.fm-checkin{min-height:0;overflow-y:auto;overscroll-behavior:contain}}.fm-dashboard .fm-logo{display:flex;align-items:center;gap:11px;border:0;padding:0;color:var(--fm-text, #eaf0ff);background:transparent;font-family:Space Grotesk}.fm-dashboard .fm-logo:hover b{color:var(--fm-accent, #6de1d4)}.fm-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:14px;color:var(--fm-text-muted, #667087);font-size:11px}.fm-pagination>div{display:flex;align-items:center;gap:10px}.fm-pagination button,.fm-load-more{border:1px solid var(--fm-border, #293047);border-radius:8px;padding:7px 11px;color:var(--fm-text-secondary, #9ba6bf);background:var(--fm-surface-raised, #111520)}.fm-pagination button:disabled{opacity:.3}.fm-load-more{display:block;width:100%;margin-top:10px}.ark-page{max-width:1400px;margin:auto}.ark-week{display:flex;align-items:center;gap:10px}.ark-week button,.ark-secondary,.ark-list button{border:1px solid var(--fm-border, #293047);border-radius:8px;padding:8px 11px;color:var(--fm-text-secondary, #9ba6bf);background:var(--fm-surface-raised, #111520)}.ark-week button:disabled{opacity:.3}.ark-week b{font-size:12px;color:var(--fm-text-secondary, #aab4ca)}.ark-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}.ark-summary article{display:grid;gap:8px;padding:16px;border:1px solid var(--fm-border, #202638);border-radius:12px;background:linear-gradient(145deg,var(--fm-surface-raised, #131725),var(--fm-surface, #0d1019))}.ark-summary small{color:var(--fm-text-muted, #68738d);font-size:10px}.ark-summary b{font:600 22px Space Grotesk;color:var(--fm-text, #dfe5f5)}.ark-summary article:last-child b{color:var(--fm-accent, #4dd3c5)}.ark-matrix{max-width:100%;overflow:auto;border:1px solid var(--fm-border, #202638);border-radius:14px;background:var(--fm-surface, #0d1019)}.ark-matrix table{min-width:850px;width:100%;border-collapse:separate;border-spacing:0;font-size:11px}.ark-matrix th,.ark-matrix td{min-width:115px;padding:12px;text-align:center;border-right:1px solid var(--fm-border, #1c2130);border-bottom:1px solid var(--fm-border, #1c2130)}.ark-matrix th{color:var(--fm-text-muted, #717c96);background:var(--fm-surface-raised, #111522)}.ark-matrix th small,.ark-matrix td small{display:block;margin-top:4px;color:var(--fm-text-muted, #566079)}.ark-matrix .sticky-left{position:sticky;left:0;z-index:2;min-width:150px;text-align:left;background:var(--fm-surface-raised, #111522)}.ark-matrix td.sticky-left{background:var(--fm-surface, #0f131e)}.ark-run{display:grid;place-items:center;gap:4px;width:52px;height:52px;margin:auto;border:1px solid var(--fm-border, #30364a);border-radius:11px;color:var(--fm-text-muted, #69748f);background:var(--fm-surface-raised, #111520)}.ark-run span{display:grid;place-items:center;width:21px;height:21px;border:1px solid var(--fm-border-strong, #3b4359);border-radius:6px}.ark-run.done{border-color:var(--fm-border-strong, #27745d);color:var(--fm-success, #55dfa9);background:var(--fm-success-bg, #10251e)}.ark-run.done span{color:#07120f;border-color:var(--fm-border-strong, #4bd9a4);background:#4bd9a4}.ark-run:disabled{opacity:.34;cursor:not-allowed}.ark-income{color:var(--fm-accent, #52dac0);font-weight:700}.ark-empty{padding:45px;text-align:center;color:var(--fm-text-muted, #566079);border:1px dashed var(--fm-border, #293047);border-radius:13px}.ark-form{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:18px;padding:15px;border:1px solid var(--fm-border, #202638);border-radius:13px;background:var(--fm-surface, #0d111b)}.ark-form input{width:auto;min-width:130px;flex:1}.ark-form>label{display:flex;align-items:center;gap:6px;color:var(--fm-text-secondary, #8d98b0);font-size:11px;white-space:nowrap}.ark-form>label input{width:15px;min-width:15px}.ark-form.raid .ark-rewards{flex-basis:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;padding-top:10px;border-top:1px solid var(--fm-border, #202638)}.ark-rewards label{display:grid;gap:5px;color:var(--fm-text-muted, #737e97);font-size:10px}.ark-rewards input{width:100%}.ark-list{display:grid;gap:8px}.ark-list article{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--fm-border, #202638);border-radius:11px;background:var(--fm-surface, #0d1019)}.ark-list article>div{display:grid;gap:4px;margin-right:auto}.ark-list article b{color:var(--fm-text, #e4e8f4)}.ark-list article small{color:var(--fm-text-muted, #657089)}.ark-list article em{padding:4px 8px;border-radius:12px;color:var(--fm-success, #56dcb0);background:var(--fm-success-bg, #123126);font-size:10px;font-style:normal}.ark-list article span{color:var(--fm-success, #51d5a6);font-size:11px}.ark-list article span.off,.ark-list .danger{color:var(--fm-danger, #df738d)}.ark-list button{padding:6px 10px}.fm-sidebar{overflow-y:auto}.fm-sidebar>button{align-items:center;justify-content:flex-start;text-align:left;white-space:nowrap}.fm-sidebar>button>span{flex:0 0 20px;width:20px;text-align:left}@media(max-width:900px){.ark-summary{grid-template-columns:repeat(2,1fr)}.ark-form{display:grid;grid-template-columns:1fr}.ark-form input{width:100%}.ark-page .fm-page-title{display:grid;gap:15px}.ark-list article{flex-wrap:wrap}}.ark-switch{display:inline-flex;align-items:center;gap:8px;border:0;color:var(--fm-text-muted, #77829a);background:transparent}.ark-switch i{position:relative;width:34px;height:18px;border-radius:20px;background:var(--fm-surface-active, #303749);transition:.2s}.ark-switch i:after{content:"";position:absolute;left:3px;top:3px;width:12px;height:12px;border-radius:50%;background:var(--fm-surface-active, #8993aa);transition:.2s}.ark-switch.on{color:var(--fm-success, #50d7a6)}.ark-switch.on i{background:var(--fm-success-bg, #245f4c)}.ark-switch.on i:after{left:19px;background:#55dfa9}.ark-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:24px;background:var(--fm-scrim, #02040bcc);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ark-modal{width:min(860px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--fm-border, #293047);border-radius:17px;padding:22px;background:var(--fm-surface, #0b0e17);box-shadow:0 28px 90px var(--fm-shadow, #000b)}.ark-modal>header{position:sticky;top:-22px;z-index:3;display:flex;align-items:center;justify-content:space-between;margin:-22px -22px 18px;padding:20px 22px 14px;border-bottom:1px solid var(--fm-border, #202638);background:var(--fm-surface, #0b0e17)}.ark-modal h2{margin:0;font:600 24px Space Grotesk}.ark-modal>header>button{border:1px solid var(--fm-border, #293047);border-radius:8px;padding:5px 11px;color:var(--fm-text-secondary, #9aa5bc);background:var(--fm-surface-raised, #111520);font-size:20px}.ark-modal .ark-form{margin:0;padding:0;border:0;background:transparent}.ark-modal .ark-form>footer{flex-basis:100%;display:flex;justify-content:flex-end;gap:9px;padding-top:5px}.ark-modal .ark-difficulties{max-height:none}.ark-reset-lock{padding:11px 14px;border:1px solid var(--fm-border-strong, #8a6638);border-radius:10px;color:var(--fm-warning, #efc67e);background:var(--fm-surface-raised, #2a2114)}.ark-material-totals{display:flex;flex-wrap:wrap;gap:8px;margin:-7px 0 18px}.ark-material-totals span{display:flex;gap:9px;padding:8px 11px;border:1px solid var(--fm-border, #293047);border-radius:9px;color:var(--fm-text-secondary, #8290aa);background:var(--fm-surface-raised, #10141f);font-size:11px}.ark-material-totals b{color:var(--fm-text, #dce2f1)}.ark-run-cell{display:grid;justify-items:center;gap:7px}.ark-difficulties{flex-basis:100%;display:grid;gap:10px}.ark-difficulties>article{display:grid;gap:10px;padding:12px;border:1px solid var(--fm-border, #293047);border-radius:10px;background:var(--fm-surface-raised, #10141f)}.ark-difficulties>article>div:first-child,.ark-difficulty-fields{display:flex;gap:8px;align-items:center}.ark-difficulties button{border:1px solid var(--fm-border, #30374b);border-radius:7px;padding:7px 10px;color:var(--fm-text-secondary, #8f9ab2);background:var(--fm-surface-raised, #171b27)}.ark-difficulties button.chosen{color:var(--fm-success, #54dcad);border-color:var(--fm-border-strong, #31715d)}.ark-difficulties button.danger{color:var(--fm-danger, #df738d)}.ark-difficulty-fields label{display:flex;align-items:center;gap:5px;color:var(--fm-text-secondary, #8995ad);font-size:11px}.ark-difficulty-fields label input{width:15px;min-width:15px}.fm-checkin-history{margin:22px 0 0;padding:12px;text-align:center;border:1px solid var(--fm-border, #242a3d);border-radius:10px;color:var(--fm-text-muted, #68738d);font-size:11px}.ark-order{display:flex;gap:5px}.ark-order button{min-width:29px;border:1px solid var(--fm-border, #293047);border-radius:7px;padding:5px 8px;color:var(--fm-text-secondary, #9aa5bc);background:var(--fm-surface-raised, #111520)}.ark-order button:disabled{opacity:.25;cursor:not-allowed}.fm-busy-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;background:var(--fm-scrim, rgba(3,6,14,.62));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:default}.fm-busy-indicator{display:flex;align-items:center;gap:12px;padding:15px 20px;border:1px solid var(--fm-border-strong, #303852);border-radius:12px;color:var(--fm-text, #dce4f5);background:var(--fm-surface, rgba(12,16,27,.94));box-shadow:0 18px 60px var(--fm-shadow, rgba(0,0,0,.45));font-size:12px}.fm-busy-indicator i{width:24px;height:24px;border:3px solid var(--fm-border, #303951);border-top-color:var(--fm-border-strong, #54d9ba);border-right-color:var(--fm-border-strong, #638cff);border-radius:50%;animation:fm-spin .75s linear infinite}@keyframes fm-spin{to{transform:rotate(360deg)}}.fm-error-toast{position:fixed;left:50%;top:50%;z-index:1100;display:flex;align-items:center;gap:12px;min-width:260px;max-width:min(520px,calc(100vw - 40px));padding:15px 18px;border:1px solid var(--fm-border-strong, rgba(255,105,139,.48));border-radius:12px;color:var(--fm-text, #ffdce5);background:var(--fm-danger-bg, rgba(27,13,23,.96));box-shadow:0 18px 60px var(--fm-shadow, rgba(0,0,0,.55)),0 0 24px #ff537e1f;transform:translate(-50%,-50%);pointer-events:none}.fm-error-toast>span{display:grid;place-items:center;flex:0 0 26px;height:26px;border:1px solid var(--fm-border-strong, rgba(255,125,157,.55));border-radius:50%;color:var(--fm-danger, #ff8ba7);background:#ff527c1f;font-weight:800}.fm-error-toast p{margin:0;font-size:13px;line-height:1.55}.fm-toast-enter-active,.fm-toast-leave-active{transition:opacity .2s ease,transform .2s ease}.fm-toast-enter-from,.fm-toast-leave-to{opacity:0;transform:translate(-50%,calc(-50% - 10px)) scale(.96)}.ark-list .ark-order{display:flex;flex-direction:row;align-items:center;gap:5px;margin-right:0}.ark-list .ark-order button{width:30px;height:30px;padding:0}*{scrollbar-width:thin;scrollbar-color:var(--fm-text-muted, #39445f) #0b0f18}*::-webkit-scrollbar{width:9px;height:9px}*::-webkit-scrollbar-track{border-radius:10px;background:var(--fm-surface, #0b0f18)}*::-webkit-scrollbar-thumb{border:2px solid var(--fm-border, #0b0f18);border-radius:10px;background:var(--fm-surface-active, #35405a)}*::-webkit-scrollbar-thumb:hover{background:var(--fm-surface-active, #526384)}*::-webkit-scrollbar-corner{background:var(--fm-surface, #0b0f18)}.ark-stat-picker{display:grid;gap:12px;margin:0 0 18px;padding:15px;border:1px solid var(--fm-border, #202638);border-radius:13px;background:var(--fm-surface, #0d111b)}.ark-stat-picker>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.ark-stat-picker>header>div{display:grid;gap:3px}.ark-stat-picker>header b{color:var(--fm-text, #dfe5f5);font-size:13px}.ark-stat-picker>header small{color:var(--fm-text-muted, #68738d);font-size:10px}.ark-stat-picker>header button{border:0;color:var(--fm-accent, #7182a8);background:transparent;font-size:10px}.ark-stat-options{display:flex;flex-wrap:wrap;gap:7px}.ark-stat-options button{display:flex;align-items:center;gap:7px;border:1px solid var(--fm-border, #293047);border-radius:16px;padding:7px 10px;color:var(--fm-text-muted, #77829a);background:var(--fm-surface-raised, #111520);font-size:10px}.ark-stat-options button i{width:7px;height:7px;border-radius:50%;background:var(--fm-surface-active, #414a60)}.ark-stat-options button.active{border-color:var(--fm-border-strong, #34745f);color:var(--fm-success, #57d9ae);background:var(--fm-success-bg, #10221d)}.ark-stat-options button.active i{background:#55dfa9;box-shadow:0 0 8px #55dfa999}.ark-stat-picker .ark-material-totals{margin:0}.ark-stat-picker .ark-material-totals span{align-items:baseline;padding:10px 13px}.ark-stat-picker .ark-material-totals strong{color:var(--fm-accent, #55dfc1);font:600 18px Space Grotesk}.ark-stat-picker>p{margin:0;padding:12px;text-align:center;color:var(--fm-text-muted, #58637b);border:1px dashed var(--fm-border, #293047);border-radius:9px;font-size:10px}.ark-form.raid .ark-rewards{grid-template-columns:1fr}.ark-add-reward{display:flex;gap:8px}.ark-add-reward button:disabled{opacity:.4;cursor:not-allowed}.ark-picked-rewards{display:grid;gap:8px}.ark-reward-row{display:grid;grid-template-columns:minmax(140px,1fr) minmax(160px,1fr) auto;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--fm-border, #202638);border-radius:9px;background:var(--fm-surface, #0b0f18)}.ark-reward-row span{color:var(--fm-text-secondary, #aeb8cf);font-size:11px}.ark-reward-row input{min-width:0}.ark-reward-row .danger{border:1px solid var(--fm-border, #493044);border-radius:8px;padding:8px 11px;color:var(--fm-danger, #df738d);background:var(--fm-surface, #17101a)}.ark-reward-empty{margin:0;padding:14px;text-align:center;color:var(--fm-text-muted, #59647d);border:1px dashed var(--fm-border, #293047);border-radius:9px;font-size:11px}.ark-list article[draggable=true],.fm-table tbody tr[draggable=true]{cursor:grab;transition:border-color .16s,background .16s,opacity .16s,transform .16s}.ark-list article[draggable=true]:active,.fm-table tbody tr[draggable=true]:active{cursor:grabbing}.ark-drag-handle{display:inline-grid;place-items:center;min-width:28px;color:var(--fm-text-muted, #62708e)!important;font-size:17px!important;letter-spacing:-4px;-webkit-user-select:none;user-select:none}.ark-dragging{opacity:.38}.ark-list article.ark-drag-over{border-color:var(--fm-border-strong, #4d73a8);background:var(--fm-surface-raised, #121a29);transform:translateY(2px)}.fm-table tbody tr.ark-drag-over td{border-top:2px solid var(--fm-border-strong, #5687c6);background:var(--fm-surface-raised, #111827)}.fm-calendar span.today{position:relative;outline:2px solid var(--fm-border-strong, #8c7cff);outline-offset:2px;font-weight:800;box-shadow:0 0 0 2px var(--fm-shadow, #090c14),0 0 14px #7a67ef66}.fm-calendar span.today:after{content:"今";position:absolute;right:-4px;top:-5px;display:grid;place-items:center;width:14px;height:14px;border:2px solid var(--fm-border, #090c14);border-radius:50%;color:var(--fm-text, #fff);background:#7665ed;font-size:8px;font-weight:700;line-height:1}.fm-calendar span.checked.today{color:#06120e;background:#54dfa5;box-shadow:0 0 0 2px var(--fm-shadow, #090c14),0 0 0 4px #8c7cff,0 0 16px #54dfa566}.ark-summary{grid-template-columns:repeat(4,1fr)}.ark-stat-actions{display:flex;align-items:center;gap:12px}.ark-stat-scope{display:flex;padding:3px;border:1px solid var(--fm-border, #293047);border-radius:9px;background:var(--fm-surface, #090d16)}.ark-stat-picker>header .ark-stat-scope button{padding:6px 11px;border-radius:6px;color:var(--fm-text-muted, #69758f)}.ark-stat-picker>header .ark-stat-scope button.active{color:var(--fm-text, #fff);background:var(--fm-surface-active, #293047)}.ark-stat-picker>header .ark-stat-actions>button{color:var(--fm-accent, #7182a8)}.fm-home{gap:12px}.fm-home>span{margin:auto}.fm-home .fm-primary{margin:8px auto 0}.ark-trend-panel,.ark-all-materials{display:grid;gap:16px;margin-bottom:18px;padding:18px;border:1px solid var(--fm-border, #202638);border-radius:14px;background:var(--fm-surface, #0d111b)}.ark-trend-panel>header,.ark-all-materials>header{display:flex;align-items:center;justify-content:space-between;gap:14px}.ark-trend-panel>header>div:first-child,.ark-all-materials>header{color:var(--fm-text, #dfe5f5)}.ark-trend-panel header small,.ark-all-materials header small{display:block;margin-top:4px;color:var(--fm-text-muted, #68738d);font-size:10px}.ark-trend-controls{display:flex;align-items:center;gap:9px}.ark-trend-controls .ark-stat-scope button{border:0;border-radius:6px;padding:7px 11px;color:var(--fm-text-muted, #69758f);background:transparent}.ark-trend-controls .ark-stat-scope button.active{color:var(--fm-text, #fff);background:var(--fm-surface-active, #293047)}.ark-chart{overflow-x:auto;border:1px solid var(--fm-border, #1d2435);border-radius:12px;background:linear-gradient(180deg,var(--fm-surface-raised, #101624),var(--fm-surface, #0a0e17))}.ark-chart svg{display:block;min-width:680px;width:100%;height:auto}.ark-chart .grid-line{stroke:var(--fm-text-muted, #273047);stroke-width:1;stroke-dasharray:4 5}.ark-chart .axis-label{fill:var(--fm-text-muted, #65718b);font-size:10px}.ark-chart .trend-line{fill:none;stroke:var(--fm-accent, #52d9bd);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px #52d9bd66)}.ark-chart .trend-dot{fill:#0d111b;stroke:var(--fm-accent, #6f86ff);stroke-width:3}.ark-all-materials .ark-material-totals{margin:0}.ark-all-materials .ark-material-totals strong{color:var(--fm-accent, #55dfc1);font-size:17px}.ark-overview-summary article:nth-child(2) b,.ark-overview-summary article:nth-child(3) b{color:var(--fm-accent, #54d9ba)}@media(max-width:900px){.ark-summary{grid-template-columns:repeat(2,1fr)}.ark-trend-panel>header{align-items:flex-start;flex-direction:column}.ark-trend-controls{width:100%;justify-content:space-between}}.ark-run{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;color:#07120f;font-size:20px;font-weight:800}.ark-run.done{color:#07120f}.ark-complete-all{width:38px;height:38px;border:1px solid var(--fm-border-strong, #36506c);border-radius:50%;color:var(--fm-text-muted, #70809b);background:var(--fm-surface-raised, #111722);font-size:20px;font-weight:800}.ark-complete-all:hover:not(:disabled){border-color:var(--fm-border-strong, #4acfa3);color:var(--fm-success, #54dda9);background:var(--fm-success-bg, #10251e)}.ark-complete-all.done{border-color:var(--fm-border-strong, #28745d);color:#07120f;background:#54d9a7}.ark-complete-all:disabled{opacity:.45}.ark-run-cell{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;white-space:nowrap}.ark-run{flex:0 0 34px;width:34px;height:34px;border:1px solid var(--fm-border-strong, #35405a);border-radius:50%;color:var(--fm-text-muted, #5f6b83);background:linear-gradient(145deg,var(--fm-surface-raised, #171c29),var(--fm-surface, #0d111a));box-shadow:inset 0 1px #ffffff0a;transition:.18s}.ark-run:hover:not(:disabled){border-color:var(--fm-border-strong, #5976aa);color:var(--fm-text-secondary, #9fb1d1);transform:translateY(-1px);box-shadow:0 6px 16px var(--fm-shadow, #0006)}.ark-run.done{border-color:var(--fm-border-strong, #35a77f);color:#06130e;background:linear-gradient(145deg,#5ce0ae,#2c9b76);box-shadow:0 0 0 3px #35c99718,0 7px 18px #23a97833}.ark-run.done:hover:not(:disabled){color:#06130e}.ark-run:disabled{transform:none}.ark-run-cell .ark-run{flex:0 0 34px;width:34px;height:34px;border:1px solid var(--fm-border, #30384d);border-radius:8px;color:var(--fm-text-muted, #59647b);background:var(--fm-surface-raised, #111520);box-shadow:inset 0 1px #ffffff08;font-size:17px;font-weight:600;transition:border-color .16s,color .16s,background .16s}.ark-run-cell .ark-run:hover:not(:disabled){border-color:var(--fm-border-strong, #52617f);color:var(--fm-text-secondary, #aab5cc);background:var(--fm-surface-raised, #171c29);transform:none;box-shadow:inset 0 1px #ffffff0d}.ark-run-cell .ark-run.done{border-color:var(--fm-border-strong, #34725f);color:var(--fm-success, #58d9ac);background:var(--fm-success-bg, #10231e);box-shadow:inset 0 0 0 1px #4bd2a114}.ark-run-cell .ark-run.done:hover:not(:disabled){border-color:var(--fm-border-strong, #459176);color:var(--fm-success, #6be4ba);background:var(--fm-success-bg, #132a24)}.ark-run-cell .ark-run:disabled{transform:none}.ark-run-cell{gap:5px;justify-content:center;margin:auto}.ark-complete-all{width:34px;height:34px;border:1px solid var(--fm-border, #30384d);border-radius:8px;color:var(--fm-text-muted, #59647b);background:var(--fm-surface-raised, #111520);box-shadow:inset 0 1px #ffffff08;font-size:17px;font-weight:600;transition:border-color .16s,color .16s,background .16s}.ark-complete-all:hover:not(:disabled){border-color:var(--fm-border-strong, #52617f);color:var(--fm-text-secondary, #aab5cc);background:var(--fm-surface-raised, #171c29)}.ark-complete-all.done{border-color:var(--fm-border-strong, #34725f);color:var(--fm-success, #58d9ac);background:var(--fm-success-bg, #10231e);box-shadow:inset 0 0 0 1px #4bd2a114}.ark-complete-all.done:hover:not(:disabled){border-color:var(--fm-border-strong, #459176);color:var(--fm-success, #6be4ba);background:var(--fm-success-bg, #132a24)}.ark-overview-materials{margin-top:-2px}.ark-overview-materials>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.ark-overview-materials>header>div{display:grid;gap:4px}.ark-overview-materials>header b{color:var(--fm-text, #dfe5f5);font-size:13px}.ark-overview-materials>header small{color:var(--fm-text-muted, #68738d);font-size:10px}.ark-material-cards{margin-bottom:18px}.ark-material-cards article{position:relative}.ark-material-cards article b{padding-right:30px;color:var(--fm-accent, #54d9ba)}.ark-material-cards article span{position:absolute;right:16px;bottom:18px;color:var(--fm-text-muted, #66728b);font-size:10px}.ark-config-modal{width:min(660px,100%)}.ark-config-modal>p{margin:0 0 16px;color:var(--fm-text-muted, #748099);font-size:11px}.ark-config-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ark-config-options>button{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:10px;border:1px solid var(--fm-border, #293047);border-radius:10px;padding:11px;color:var(--fm-text-secondary, #8d98b0);text-align:left;background:var(--fm-surface-raised, #10141f)}.ark-config-options>button i{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--fm-border-strong, #39435a);border-radius:6px;color:#07120f;font-style:normal}.ark-config-options>button small{color:var(--fm-text-muted, #58647d)}.ark-config-options>button.active{border-color:var(--fm-border-strong, #34745f);color:var(--fm-text, #dfe8e4);background:var(--fm-success-bg, #10211c)}.ark-config-options>button.active i{border-color:var(--fm-border-strong, #52d6a7);background:#52d6a7}.ark-config-modal>footer{display:flex;justify-content:flex-end;gap:9px;margin-top:20px;padding-top:15px;border-top:1px solid var(--fm-border, #202638)}@media(max-width:650px){.ark-config-options{grid-template-columns:1fr}}.ark-overview-materials>header>.ark-stat-actions{display:flex;align-items:center;gap:12px}.ark-raid-materials .ark-stat-scope button{border:0;border-radius:6px;padding:6px 11px;color:var(--fm-text-muted, #69758f);background:transparent;font-size:10px}.ark-raid-materials .ark-stat-scope button.active{color:var(--fm-text, #fff);background:var(--fm-surface-active, #293047)}@media(max-width:650px){.ark-overview-materials>header{align-items:flex-start;flex-direction:column;gap:12px}.ark-overview-materials>header>.ark-stat-actions{width:100%;justify-content:space-between}}.fm-wechat-page{max-width:900px;margin:auto}.fm-wechat-card{display:flex;align-items:center;gap:16px;padding:20px;border:1px solid var(--fm-border, #242b3e);border-radius:14px;background:var(--fm-surface, #0d111b)}.fm-wechat-status{display:flex;align-items:center;gap:12px;margin-right:auto}.fm-wechat-status>i{width:11px;height:11px;border-radius:50%;background:var(--fm-surface-active, #667087)}.fm-wechat-status.bound>i{background:#54d9a7;box-shadow:0 0 12px #54d9a777}.fm-wechat-status>div{display:grid;gap:5px}.fm-wechat-status b{color:var(--fm-text, #dfe5f5)}.fm-wechat-status small{color:var(--fm-text-muted, #6f7a92)}.fm-wechat-code{display:grid;justify-items:start;gap:11px;margin-top:14px;padding:24px;border:1px solid var(--fm-border-strong, #315f55);border-radius:14px;background:var(--fm-success-bg, #10201c)}.fm-wechat-code small,.fm-wechat-code p{margin:0;color:var(--fm-text-muted, #778a84);font-size:11px}.fm-wechat-code strong{color:var(--fm-success, #5de1b1);font:600 25px Space Grotesk;letter-spacing:.08em}.fm-wechat-help{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.fm-wechat-help>b{grid-column:1/-1;margin-bottom:2px;color:var(--fm-text, #dfe5f5)}.fm-wechat-help>div{display:grid;gap:6px;padding:16px;border:1px solid var(--fm-border, #202638);border-radius:11px;background:var(--fm-surface, #0d111b)}.fm-wechat-help span{color:var(--fm-text-secondary, #aab5cb)}.fm-wechat-help small{color:var(--fm-text-muted, #657089);line-height:1.7}@media(max-width:700px){.fm-wechat-help{grid-template-columns:1fr}.fm-wechat-card{align-items:flex-start;flex-direction:column}.fm-wechat-status{margin-right:0}}.ark-account-switch{flex-wrap:wrap;margin:0 0 18px;padding:3px;border:1px solid var(--fm-border, #293047);border-radius:10px;background:var(--fm-surface, #090d16);width:fit-content}.ark-account-switch button{border:0;border-radius:7px;padding:7px 12px;color:var(--fm-text-muted, #69758f);background:transparent;font-size:11px}.ark-account-switch button.active{color:var(--fm-text, #fff);background:var(--fm-surface-active, #293047)}.ark-account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.ark-account-grid article{display:grid;gap:12px;padding:15px;border:1px solid var(--fm-border, #202638);border-radius:13px;background:var(--fm-surface, #0d111b)}.ark-account-grid article.active{border-color:var(--fm-border-strong, #34745f);background:var(--fm-success-bg, #10221d)}.ark-account-grid article>div:first-child{display:grid;gap:4px}.ark-account-grid b{color:var(--fm-text, #dfe5f5)}.ark-account-grid small{color:var(--fm-text-muted, #68738d);font-size:10px}.ark-account-grid article>div:last-child{display:flex;gap:7px}.ark-section-title{margin:24px 0 12px;color:var(--fm-text, #dfe5f5);font-size:14px}@media(max-width:900px){.ark-account-grid{grid-template-columns:1fr}}.ark-account-modal{width:min(620px,100%)}.ark-account-status{display:inline-flex;align-items:center;gap:7px;width:max-content;padding:5px 9px;border:1px solid var(--fm-border-strong, #285f50);border-radius:999px;color:var(--fm-success, #55d9ae)!important;background:var(--fm-success-bg, #10211d);font-size:10px!important}.ark-account-status i{width:6px;height:6px;border-radius:50%;background:#55d9ae;box-shadow:0 0 8px #55d9ae88}.ark-account-status.off{border-color:var(--fm-border, #493044);color:var(--fm-danger, #df738d)!important;background:var(--fm-surface, #191018)}.ark-account-status.off i{background:#df738d;box-shadow:none}.ark-account-actions{display:flex!important;align-items:center;gap:7px!important;margin:0!important}.ark-account-actions .ark-action-button{border:1px solid var(--fm-border, #293047);border-radius:8px;padding:7px 11px;color:var(--fm-text-secondary, #91a0bb);background:var(--fm-surface-raised, #111620);transition:border-color .16s,color .16s,background .16s}.ark-account-actions .ark-action-button:hover:not(:disabled){border-color:var(--fm-border-strong, #465777);color:var(--fm-text, #dce5f6);background:var(--fm-surface-raised, #171d2b)}.ark-account-actions .ark-action-button.active{border-color:var(--fm-border-strong, #34745f);color:var(--fm-success, #59dcaf);background:var(--fm-success-bg, #10231e)}.ark-account-actions .ark-action-button.danger{margin-left:auto;border-color:var(--fm-border, #493044);color:var(--fm-danger, #d9748c);background:var(--fm-surface, #181018)}.ark-account-actions .ark-action-button:disabled{opacity:.35;cursor:not-allowed}.ark-check{position:relative;padding:8px 10px;border:1px solid var(--fm-border, #293047);border-radius:9px;background:var(--fm-surface-raised, #10141f);cursor:pointer}.ark-check input{position:absolute;opacity:0;pointer-events:none}.ark-check i{display:inline-grid;width:17px;height:17px;border:1px solid var(--fm-border-strong, #3a455d);border-radius:5px;background:var(--fm-surface, #0a0e17)}.ark-check input:checked+i{border-color:var(--fm-border-strong, #4bcf9f);background:#4bcf9f;box-shadow:0 0 0 3px #4bcf9f16}.ark-check input:checked+i:after{content:"✓";place-self:center;color:#07120f;font-size:12px;font-weight:800}.role-cards{display:grid;gap:14px}.role-card{padding:20px;border:1px solid var(--fm-border, #202638);border-radius:16px;background:linear-gradient(145deg,var(--fm-surface-raised, #111725),var(--fm-surface, #0c1019));box-shadow:0 14px 34px var(--fm-shadow, #0003)}.role-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.role-card header b{display:block;color:var(--fm-text, #e8ecf7);font-size:16px}.role-card header small{display:block;margin-top:5px;color:var(--fm-text-muted, #68748d);font-size:11px}.role-badge{padding:5px 9px;border:1px solid var(--fm-border-strong, #315e62);border-radius:999px;color:var(--fm-accent, #5bd8c4);background:var(--fm-success-bg, #12302f);font-size:10px}.role-permission-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:18px}.role-permission-groups section>small{display:block;margin-bottom:8px;color:var(--fm-text-muted, #59657e);font-size:10px;letter-spacing:.08em}.role-permission-groups section>div{display:flex;flex-wrap:wrap;gap:7px}.permission-chip{padding:7px 10px;border:1px solid var(--fm-border, #252c40);border-radius:999px;color:var(--fm-text-muted, #66728d);background:var(--fm-surface, #0b0f18);font-size:11px}.permission-chip.enabled{border-color:var(--fm-border-strong, #347c83);color:var(--fm-accent, #78e4d1);background:linear-gradient(120deg,var(--fm-surface-active, #123b3d),var(--fm-surface-active, #172748));box-shadow:0 0 14px #39cdb522}.fm-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:24px;background:var(--fm-scrim, #000b);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.role-editor{width:min(620px,100%);max-height:90vh;overflow:auto;padding:26px;border:1px solid var(--fm-border, #2a3550);border-radius:18px;background:var(--fm-surface, #0d121e);box-shadow:0 30px 90px var(--fm-shadow, #000b)}.role-editor>header{display:flex;justify-content:space-between;align-items:start;margin-bottom:20px}.role-editor h2{margin:0;color:var(--fm-text, #eef2ff);font:600 24px Space Grotesk}.role-editor form>input{width:100%;box-sizing:border-box;border:1px solid var(--fm-border, #293149);border-radius:9px;padding:12px;color:var(--fm-text, #eef2ff);background:var(--fm-surface, #090d16)}.role-editor-count{margin:16px 0;color:var(--fm-accent, #61d7c5);font-size:12px}.role-editor-group{margin-top:18px}.role-editor-group>b{display:block;margin-bottom:9px;color:var(--fm-text-secondary, #8692ad);font-size:11px}.role-editor-group>div{display:flex;flex-wrap:wrap;gap:8px}.permission-option{display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid var(--fm-border, #252d43);border-radius:10px;color:var(--fm-text-secondary, #8591aa);background:var(--fm-surface-raised, #101522);cursor:pointer;font-size:12px}.permission-option.selected{border-color:var(--fm-border-strong, #4a78e5);color:var(--fm-text, #fff);background:var(--fm-surface-active, #1a2a50)}.permission-option input{accent-color:var(--fm-accent, #6374f0)}.role-editor footer{display:flex;justify-content:flex-end;gap:9px;margin-top:25px}@media(max-width:700px){.role-permission-groups{grid-template-columns:1fr}}.role-page .fm-create{display:grid;grid-template-columns:1fr;gap:12px;padding:20px;border:1px solid var(--fm-border, #293149);border-radius:16px;background:linear-gradient(145deg,var(--fm-surface-raised, #111725),var(--fm-surface, #0c1019));box-shadow:0 14px 34px var(--fm-shadow, #0003)}.role-page .fm-create label{display:inline-flex;align-items:center;gap:8px;width:max-content;padding:9px 12px;border:1px solid var(--fm-border, #252d43);border-radius:10px;color:var(--fm-text-secondary, #8591aa);background:var(--fm-surface-raised, #101522);font-size:12px}.role-page .fm-create label:has(input:checked){border-color:var(--fm-border-strong, #4a78e5);color:var(--fm-text, #fff);background:var(--fm-surface-active, #1a2a50)}.role-page .fm-create input[type=checkbox]{accent-color:var(--fm-accent, #6374f0)}.role-page .fm-table{margin-top:16px}.role-page .fm-table td:nth-child(2){white-space:normal;color:var(--fm-accent, #76d9c6)}.role-page .fm-table td:nth-child(2):first-letter{color:var(--fm-accent, #76d9c6)}.role-page .fm-page-title h1{letter-spacing:-.02em}.role-page .fm-create{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));align-items:stretch;gap:12px}.role-page .fm-create>input:first-child{grid-column:1/-1}.role-page .fm-create label{box-sizing:border-box;width:auto!important;min-height:64px;display:flex!important;align-items:center;justify-content:flex-start;gap:10px;padding:14px 16px;border:1px solid var(--fm-border, #28334b);border-radius:12px;color:var(--fm-text-secondary, #8591aa);background:linear-gradient(145deg,var(--fm-surface-raised, #121a2a),var(--fm-surface-raised, #0d1320));font-size:13px;writing-mode:horizontal-tb;white-space:nowrap;transition:.18s}.role-page .fm-create label:hover{border-color:var(--fm-border-strong, #536ed0);transform:translateY(-1px)}.role-page .fm-create label:has(input:checked){border-color:var(--fm-border-strong, #4f8ee8);color:var(--fm-text, #fff);background:linear-gradient(135deg,var(--fm-surface-active, #263c76),var(--fm-surface-active, #1e6b78));box-shadow:0 8px 20px #3e7be833}.role-page .fm-create label input{flex:0 0 auto;width:16px;height:16px;accent-color:var(--fm-accent, #67d9ca)}.role-page .fm-create button{grid-column:span 2;min-height:44px}.role-page .fm-create button.ark-secondary{grid-column:span 2}@media(max-width:800px){.role-page .fm-create{grid-template-columns:repeat(2,minmax(130px,1fr))}}@media(max-width:520px){.role-page .fm-create{grid-template-columns:1fr}.role-page .fm-create>input:first-child,.role-page .fm-create button,.role-page .fm-create button.ark-secondary{grid-column:auto}}.role-permission-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.role-permission-options label{display:flex;align-items:center;gap:10px;min-height:50px;padding:10px 13px;border:1px solid var(--fm-border, #27334c);border-radius:11px;color:var(--fm-text-secondary, #8995ae);background:var(--fm-surface-raised, #111827);cursor:pointer;transition:.18s}.role-permission-options label:hover{border-color:var(--fm-border-strong, #5574d7);transform:translateY(-1px)}.role-permission-options label.selected{border-color:var(--fm-border-strong, #4b8fe8);color:var(--fm-text, #fff);background:linear-gradient(135deg,var(--fm-surface-active, #263c76),var(--fm-surface-active, #1e6b78))}.role-permission-options input{width:16px;height:16px;accent-color:var(--fm-accent, #67d9ca)}.role-editor-form footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}@media(max-width:560px){.role-permission-options{grid-template-columns:1fr}}.user-editor-form{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.user-editor-form>.fm-error{margin:0}.user-editor-form>footer{margin-top:12px}:root{--fm-control-border:var(--fm-border, #293047);--fm-control-bg:var(--fm-surface, #0b0f18);--fm-control-radius:9px}.fm-primary,.ark-secondary,.fm-action,.ark-list article>button,.ark-account-actions .ark-action-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:10px 15px;border-radius:var(--fm-control-radius);font-size:12px;font-weight:600;line-height:18px;white-space:nowrap;transition:border-color .16s,background .16s,color .16s,box-shadow .16s}.fm-primary.compact{min-height:40px;padding:10px 15px}.ark-secondary,.fm-action,.ark-list article>button,.ark-account-actions .ark-action-button{border:1px solid var(--fm-control-border);color:var(--fm-text-secondary, #9ba6bf);background:var(--fm-surface-raised, #111520)}.fm-action,.ark-list article>button,.ark-account-actions .ark-action-button{min-height:34px;padding:7px 11px}.fm-primary:hover:not(:disabled){filter:brightness(1.1)}.ark-secondary:hover:not(:disabled),.fm-action:hover:not(:disabled),.ark-list article>button:hover:not(:disabled){border-color:var(--fm-border-strong, #465777);color:var(--fm-text, #dce5f6);background:var(--fm-surface-raised, #171d2b)}.fm-action.danger,.ark-list article>button.danger{border-color:var(--fm-border, #493044);color:var(--fm-danger, #df738d);background:var(--fm-surface, #181018)}.fm-action.danger:hover:not(:disabled),.ark-list article>button.danger:hover:not(:disabled){border-color:var(--fm-border-strong, #86506a);background:var(--fm-surface-raised, #251522)}.fm-primary:disabled,.ark-secondary:disabled,.fm-action:disabled,.ark-list article>button:disabled{opacity:.4;cursor:default}:is(.fm-primary,.ark-secondary,.fm-action):focus-visible{outline:2px solid var(--fm-border-strong, #6f86ff);outline-offset:3px}.ark-modal-mask,.fm-modal-mask{z-index:20;padding:24px;background:var(--fm-scrim, #02040bcc);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.fm-editor{width:min(620px,100%);max-height:calc(100dvh - 48px);overflow:auto;padding:24px;border:1px solid var(--fm-control-border);border-radius:17px;background:var(--fm-surface, #0b0e17);box-shadow:0 28px 90px var(--fm-shadow, #000b)}.fm-editor.fm-editor-wide{width:min(860px,100%)}.fm-editor>header{position:sticky;top:-24px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-24px -24px 20px;padding:20px 24px;border-bottom:1px solid var(--fm-border, #202638);background:var(--fm-surface, #0b0e17)}.fm-editor h2{margin:0;color:var(--fm-text, #eef2ff);font:600 24px Space Grotesk,sans-serif}.fm-editor>header>button{float:none;flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--fm-control-border);border-radius:var(--fm-control-radius);padding:0;color:var(--fm-text-secondary, #9aa5bc);background:var(--fm-surface-raised, #111520);font-size:20px}.fm-editor>header>button:hover{border-color:var(--fm-border-strong, #465777);color:var(--fm-text, #eef2ff)}.fm-editor>header>button:focus-visible{outline:2px solid var(--fm-border-strong, #6f86ff);outline-offset:3px}.fm-editor .fm-editor-form{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:0;padding:0;border:0;background:transparent}.fm-editor .fm-editor-form input:not([type=checkbox]){width:100%;min-width:0;min-height:42px;border:1px solid var(--fm-control-border);border-radius:var(--fm-control-radius);padding:10px 12px;color:var(--fm-text, #dce3f2);background-color:var(--fm-control-bg);outline:none;font-size:12px;transition:border-color .16s,box-shadow .16s}.fm-editor .fm-editor-form input:not([type=checkbox]):hover{border-color:var(--fm-border-strong, #435271)}.fm-editor .fm-editor-form input:not([type=checkbox]):focus{border-color:var(--fm-border-strong, #5570a5);box-shadow:0 0 0 3px #5570a51a}.fm-editor .fm-editor-form input[type=checkbox]{accent-color:var(--fm-accent, #67d9ca)}.fm-editor .fm-editor-form>.fm-field{display:grid;align-items:stretch;gap:8px;color:var(--fm-text-secondary, #9da7bd);font-size:12px;white-space:normal}.fm-editor .fm-editor-form>footer,.fm-editor>footer{display:flex;justify-content:flex-end;gap:10px;margin:6px 0 0;padding-top:18px;border-top:1px solid var(--fm-border, #202638)}.fm-editor .role-editor-count{margin:0}.fm-check-row{display:flex;flex-wrap:wrap;gap:10px}.fm-check-row .ark-check{display:flex;align-items:center;gap:8px;color:var(--fm-text-secondary, #9da7bd);font-size:12px}.ark-check:has(input:focus-visible){outline:2px solid var(--fm-border-strong, #6f86ff);outline-offset:3px}.fm-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 12px}.fm-section-head .ark-section-title{margin:0}@media(max-width:560px){.ark-modal-mask,.fm-modal-mask{padding:16px}.fm-editor{max-height:calc(100dvh - 32px);padding:20px}.fm-editor>header{top:-20px;margin:-20px -20px 18px;padding:18px 20px}.fm-editor h2{font-size:21px}.fm-section-head{flex-wrap:wrap}}.fm-admin-home{position:relative;min-width:0}.fm-visit-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.fm-visit-summary article,.fm-resource-grid article{display:grid;gap:12px;min-width:0;padding:20px;border:1px solid var(--fm-border, #202638);border-radius:14px;background:var(--fm-surface, #0d111b)}.fm-visit-summary small,.fm-resource-grid small{color:var(--fm-text-secondary, #929db5);font-size:12px}.fm-visit-summary strong{font:600 32px Space Grotesk,sans-serif;color:var(--fm-accent, #55dfc1)}.fm-visit-summary span,.fm-resource-grid span{font-size:11px;color:var(--fm-text-muted, #68738d)}.fm-monitor-tag{font-size:10px;color:var(--fm-accent, #8b9bc0);white-space:nowrap}.fm-visit-value{fill:var(--fm-text, #bfc9e1);font-size:11px}.fm-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fm-resource-grid article{background:var(--fm-surface, #0a0e17);padding:18px}.fm-resource-grid strong{font:600 25px Space Grotesk,sans-serif;color:var(--fm-text, #dfe5f5)}.fm-resource-track{height:6px;overflow:hidden;background:var(--fm-surface-raised, #202638);border-radius:6px}.fm-resource-track i{display:block;height:100%;background:linear-gradient(90deg,#52d9bd,#6f86ff);transition:width .3s}.fm-resource-track.warning i{background:#e6a15c}.fm-monitor-note{margin:0;color:var(--fm-text-muted, #68738d);font-size:11px;line-height:1.8}.fm-visit-details{font-size:12px;color:var(--fm-text-secondary, #929db5)}.fm-visit-details summary{cursor:pointer}.fm-visit-details>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--fm-border, #202638)}.fm-visit-details b{color:var(--fm-text, #bfc9e1)}.fm-visit-chart svg{min-width:520px}@media(max-width:700px){.fm-visit-summary{grid-template-columns:1fr;gap:10px}.fm-visit-summary article{gap:8px;padding:16px}.fm-resource-grid{grid-template-columns:1fr}.fm-admin-home .fm-page-title{gap:12px}.fm-admin-home .fm-page-title button{white-space:nowrap}}.photos-shell .photo-hero{padding:18px 0;gap:20px;min-height:0}.photos-shell .photo-hero h1{margin:6px 0;font-size:clamp(20px,2.3vw,28px);line-height:1.3}.photos-shell .photo-hero .fm-eyebrow{margin:0;font-size:9px}.photos-shell .photo-hero>div>p:last-child{margin:6px 0 0;font-size:12px;line-height:1.5}.photos-shell .photo-hero-mark{width:110px;gap:0}.photos-shell .photo-hero-mark svg{width:80px}.photo-dock-stage{position:relative;overflow-x:clip;padding:40px 24px 20px;touch-action:pan-y;-webkit-user-select:none;user-select:none}.photo-dock{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:18px;padding:26px 22px 18px;border:1px solid var(--fm-border-strong, #39435c);border-radius:24px;background:linear-gradient(145deg,var(--fm-surface-active, #20283bb3),var(--fm-surface-raised, #111827b3));box-shadow:0 20px 48px var(--fm-shadow, #0003),inset 0 1px #ffffff0d;animation:photo-dock-enter .25s ease-out}.photo-dock-item{flex:0 1 calc((100% - (var(--dock-count) - 1)*18px)/var(--dock-count));min-width:0;position:relative}.photo-dock-item .photo-open{overflow:visible;text-align:center}.photo-dock-visual{pointer-events:none;transform:translate3d(0,var(--dock-lift,0px),0) scale(var(--dock-scale,1));transform-origin:center bottom;will-change:transform}.photo-dock-preview{position:relative;overflow:hidden;border-radius:12px;border:1px solid var(--fm-border-strong, #52617d66);box-shadow:0 8px 18px var(--fm-shadow, #0005)}.photo-dock-item .photo-open:focus-visible{outline:none}.photo-dock-item .photo-open:focus-visible .photo-dock-preview{outline:2px solid var(--fm-border-strong, #6f86ff);outline-offset:3px}.photo-dock-item .photo-image{aspect-ratio:4/5!important}.photo-dock-item .photo-image img{height:100%;object-fit:cover;pointer-events:none}.photo-dock-item .photo-open:hover img{transform:none}.photo-dock-caption{text-align:center;padding:12px 4px 0;min-height:32px}.photo-dock-title{position:absolute;left:0;right:0;bottom:0;padding:12px;font-size:12px;line-height:1.5;color:#edf1ff;background:#080c16cc;overflow-wrap:anywhere;opacity:0;transition:opacity .15s}.photo-open:hover .photo-dock-title,.photo-open:focus-visible .photo-dock-title{opacity:1}.photo-dock-caption time{font-size:10px;color:var(--fm-text-secondary, #8e9db8);letter-spacing:.05em}.photo-dock-pagination{display:flex;align-items:center;justify-content:center;gap:24px;margin:24px 0 0}.photo-dock-pagination>div{display:grid;gap:8px;text-align:center;font-size:12px;color:var(--fm-text, #b7c3da)}.photo-dock-pagination small{font-size:10px;color:var(--fm-text-secondary, #7888a4)}.photo-dock-pagination button{min-width:42px}.photo-viewer{touch-action:pan-y}.photo-editor .photo-fields{align-items:start}@keyframes photo-dock-enter{0%{opacity:.4;transform:translate(var(--dock-enter-x,32px))}to{opacity:1;transform:translate(0)}}@media(max-width:900px){.photo-dock-stage{position:relative;overflow-x:clip;padding:32px 12px 12px}.photo-dock{gap:14px;padding:22px 18px 16px}.photo-dock-item{flex-basis:calc((100% - (var(--dock-count) - 1)*14px)/var(--dock-count))}}@media(max-width:600px){.photos-shell .photo-hero{padding:12px 0}.photos-shell .photo-hero h1{font-size:20px}.photo-dock-stage{position:relative;overflow-x:clip;padding:18px 0 8px}.photo-dock{gap:12px;padding:18px 12px 14px;border-radius:18px}.photo-dock-item{flex-basis:calc((100% - 12px)/2);transform:none}.photo-dock-preview{border-radius:9px}.photo-dock-title{font-size:11px}.photo-dock-pagination{gap:16px;margin-top:18px}}@media(prefers-reduced-motion:reduce){.photo-dock{animation:none}.photo-dock-visual{transition:none;will-change:auto}}.photo-upload-queue{display:grid;gap:10px;max-height:320px;overflow:auto}.photo-upload-summary{margin:0;font-size:11px;color:var(--fm-text-secondary, #8d9ab4)}.photo-upload-item{display:flex;align-items:center;gap:12px;min-width:0;padding:10px;border:1px solid var(--fm-border, #263148);border-radius:10px;background:var(--fm-surface-raised, #101725)}.photo-upload .photo-upload-item img,.photo-upload-placeholder{width:66px;height:66px;flex:0 0 66px;object-fit:cover;border-radius:7px}.photo-upload-placeholder{display:grid;place-items:center;background:var(--fm-surface-raised, #1c2538);color:var(--fm-text-secondary, #7d8ba5)}.photo-upload-item>div{display:grid;gap:5px;flex:1;min-width:0}.photo-upload-item strong{font-size:12px;font-weight:500;color:var(--fm-text, #c6d2e8);overflow-wrap:anywhere}.photo-upload-item span,.photo-upload-item p{font-size:11px;color:var(--fm-text-secondary, #8ea0bb);margin:0;line-height:1.6;overflow-wrap:anywhere}.photo-upload-item .photo-upload-failed,.photo-upload-item p{color:var(--fm-danger, #efa3ac)}.photo-upload-notice{padding:12px 16px;border:1px solid var(--fm-border-strong, #30584f);border-radius:10px;color:var(--fm-success, #75d6ba);background:var(--fm-success-bg, #10231e);font-size:12px;line-height:1.7}@media(max-width:600px){.photo-upload-item{gap:8px;padding:8px}.photo-upload .photo-upload-item img,.photo-upload-placeholder{width:48px;height:48px;flex-basis:48px}}.photo-upload .photo-file-trigger{justify-self:start}.photo-upload input[hidden]{display:none}.photo-admin-gallery .photo-admin-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.photo-admin-gallery .photo-admin-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:280px;transition:border-color .15s,box-shadow .15s}.photo-admin-card.photo-is-selected{border-color:var(--fm-border-strong, #67cfc7);box-shadow:0 0 0 1px #67cfc766}.photo-admin-thumbnail{position:absolute;top:0;right:0;bottom:0;left:0}.photo-admin-select{display:block;position:relative;width:100%;height:100%;padding:0;border:0;background:var(--fm-surface, #0b101b)}.photo-admin-select:disabled{cursor:default;opacity:1}.photo-admin-select:focus-visible{outline:2px solid var(--fm-border-strong, #6f86ff);outline-offset:-3px}.photo-admin-thumbnail .photo-image{height:100%;aspect-ratio:auto!important}.photo-admin-thumbnail .photo-image img{height:100%;object-fit:contain}.photo-selection-mark{position:absolute;top:9px;left:9px;display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--fm-border-strong, #a7b5d0);border-radius:6px;color:#07131c;background:var(--fm-surface, #0b101bdd);font-size:14px;pointer-events:none}.photo-is-selected .photo-selection-mark{border-color:var(--fm-border-strong, #6cddd0);background:#6cddd0}.photo-admin-thumbnail .photo-admin-enlarge{position:absolute;right:8px;top:8px;background:var(--fm-surface, #0b101bea);font-size:10px}.photo-admin-gallery .photo-card-content{position:relative;padding:12px;background:#080d1785;border-top:1px solid #ffffff14;pointer-events:none;text-shadow:0 1px 3px #000}.photo-admin-gallery .photo-card-content button{pointer-events:auto}.photo-admin-gallery .photo-card-content .photo-meta,.photo-admin-gallery .photo-card-content .photo-caption{color:#cad5e8}.photo-admin-gallery .photo-card-content h3{font-size:13px;margin:0 0 6px;line-height:1.5}.photo-admin-gallery .blog-actions{gap:6px;margin-top:12px;flex-wrap:wrap}.photo-selection-bar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 16px;padding:14px;border:1px solid var(--fm-border, #27334c);border-radius:12px;background:var(--fm-surface-raised, #101725)}.photo-selection-bar>span{font-size:12px;color:var(--fm-text, #c3d2e9)}.photo-selection-bar>div{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.photo-selection-bar>small{flex-basis:100%;font-size:11px;color:var(--fm-text-secondary, #8b9bb5)}.photo-publish-errors{padding:12px 16px;margin-bottom:14px;border:1px solid var(--fm-border-strong, #67404a);border-radius:10px;color:var(--fm-danger, #efa3ac);background:var(--fm-danger-bg, #28151c);font-size:12px;line-height:1.7;overflow-wrap:anywhere}.photo-publish-errors p{margin:0}.photo-publish-errors ul{margin:6px 0 0;padding-left:18px}@media(max-width:600px){.photo-admin-gallery .photo-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-admin-gallery .photo-admin-card{min-height:260px}.photo-selection-bar>div{margin-left:0}.photo-admin-gallery .photo-card-content{padding:10px}}.photo-theme-filter,.photo-theme-management{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0}.photo-theme-filter .photo-theme-active{color:var(--fm-accent, #a5f3fc);border-color:var(--fm-border-strong, #22d3ee);background:#22d3ee1f}.photo-theme-management{align-items:flex-end}.photo-theme-management .fm-field{display:grid;gap:8px;min-width:160px;color:var(--fm-text-secondary, #9da7bd);font-size:12px}.photo-theme-management>button{min-height:42px;box-sizing:border-box}.photo-theme-filter button,.photo-theme-management button{max-width:100%;overflow-wrap:anywhere}.fm-select{box-sizing:border-box;min-width:0;max-width:100%;min-height:42px;padding:10px 34px 10px 12px;border:1px solid var(--fm-control-border);border-radius:var(--fm-control-radius);font-family:inherit;font-size:12px;line-height:20px;color:var(--fm-text, #dce3f2);background-color:var(--fm-control-bg);color-scheme:var(--fm-color-scheme, dark);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--fm-text-muted, #71809d) 50%),linear-gradient(135deg,var(--fm-text-muted, #71809d) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;outline:none;cursor:default;transition:border-color .16s,box-shadow .16s}.fm-select option{color:var(--fm-text, #dce3f2);background-color:var(--fm-control-bg)}.fm-select:hover:not(:disabled){border-color:var(--fm-border-strong, #435271)}.fm-select:focus{border-color:var(--fm-border-strong, #5570a5);box-shadow:0 0 0 3px #5570a51a}.fm-select:focus-visible{outline:2px solid var(--fm-border-strong, #6f86ff);outline-offset:3px}.fm-select:disabled{color:var(--fm-text-muted, #677188);background-color:var(--fm-surface, #10131c);opacity:.65}.fm-select[aria-invalid=true]{border-color:var(--fm-border-strong, #df738d)}.fm-select--compact{min-height:34px;padding:6px 27px 6px 9px;background-position:calc(100% - 13px) 50%,calc(100% - 8px) 50%}.fm-editor-form .fm-select,.photo-theme-management .fm-select{width:100%}.ark-run-cell .fm-select{width:auto;min-width:76px;max-width:110px}.ark-trend-controls .fm-select{min-width:150px}.ark-add-reward .fm-select{min-width:0;flex:1}.fm-logo{color:var(--fm-text, #eaf0ff);text-decoration:none}.blog-shell{display:flex;flex-direction:column;width:min(1160px,calc(100% - 64px));margin:auto;min-height:100vh}.blog-nav{display:flex;align-items:center;justify-content:space-between;height:88px;border-bottom:1px solid var(--fm-border, #202638);gap:24px}.blog-nav nav{display:flex;gap:28px;align-items:center}.blog-nav nav a,.blog-back{color:var(--fm-text-secondary, #929db5);text-decoration:none;font-size:13px}.blog-nav nav a:hover,.blog-nav nav a.selected,.blog-back:hover{color:var(--fm-accent, #73dfd2)}.blog-hero{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:20px;min-height:134px;padding:18px 0}.blog-hero h1{margin:6px 0;color:var(--fm-text, #edf1ff);font-size:clamp(20px,2.3vw,28px);line-height:1.3;letter-spacing:-.035em;font-weight:650}.blog-hero h1 em{font-style:normal;background:linear-gradient(100deg,#78dbd2,var(--fm-surface-active, #a799ff));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.blog-hero .fm-eyebrow{margin:0;font-size:9px}.blog-intro{margin:6px 0 0;max-width:480px;color:var(--fm-text-secondary, #8994ac);font-size:12px;line-height:1.5}.blog-hero-art{position:relative;height:85px;display:grid;place-content:center;text-align:center;background:radial-gradient(ellipse,#5441a32d,transparent 70%)}.blog-hero-art i{position:absolute;width:62px;height:62px;top:7px;left:calc(50% - 31px);border:1px solid var(--fm-border-strong, #566491);border-radius:15px;transform:rotate(25deg);box-shadow:0 0 70px #5555aa20,inset 0 0 40px #6854e820}.blog-hero-art span{position:relative;color:var(--fm-accent, #83d6d9);font:600 34px Space Grotesk,sans-serif}.blog-hero-art small{position:absolute;left:0;right:0;bottom:-6px;margin:0;color:var(--fm-text-muted, #747e9e);font-size:9px;letter-spacing:.25em}.blog-feed{flex:1;padding:28px 0 68px;border-top:1px solid var(--fm-border, #202638)}.blog-section-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.blog-section-title h2{margin:8px 0 0;color:var(--fm-text, #eef2ff);font-size:25px}.blog-section-title>span{color:var(--fm-text-secondary, #7d89a2);font-size:12px}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.blog-card{display:flex;flex-direction:column;min-width:0;min-height:250px;padding:25px;color:var(--fm-text, #dce3f2);text-decoration:none;border:1px solid var(--fm-border, #252c40);border-radius:16px;background:linear-gradient(145deg,var(--fm-surface-raised, #111624),var(--fm-surface, #0c101a));transition:transform .16s,border-color .16s}.blog-card:hover{transform:translateY(-4px);border-color:var(--fm-border-strong, #5a6590)}.blog-card:focus-visible,.blog-nav a:focus-visible,.blog-back:focus-visible{outline:2px solid var(--fm-border-strong, #6f86ff);outline-offset:4px}.blog-card-top{display:flex;justify-content:space-between;color:var(--fm-accent, #76bdbb);font-size:10px;letter-spacing:.15em}.blog-card-top span:last-child{color:var(--fm-text-muted, #505d77)}.blog-card h3{margin:24px 0 12px;color:var(--fm-text, #edf1ff);font-size:20px;line-height:1.5;overflow-wrap:anywhere}.blog-card>p{margin:0 0 24px;color:var(--fm-text-secondary, #929db5);font-size:13px;line-height:1.9;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.blog-card-bottom{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:auto;padding-top:17px;border-top:1px solid var(--fm-border, #222a3c);color:var(--fm-text-secondary, #7f8ba4);font-size:11px}.blog-card-bottom b{color:var(--fm-accent, #85ded4);font-size:20px}.blog-state{border:1px dashed var(--fm-border, #2c344b);border-radius:16px;padding:60px 24px;text-align:center;color:var(--fm-text-secondary, #8994ac)}.blog-state h3{color:var(--fm-text, #dce3f2);font-size:21px}.blog-state p{font-size:13px;line-height:1.8}.blog-empty-symbol{display:block;color:var(--fm-purple, #8c80d7);font-size:34px}.blog-footer{display:flex;justify-content:space-between;gap:20px;padding:26px 0;border-top:1px solid var(--fm-border, #202638);color:var(--fm-text-muted, #75819a);font-size:11px}.blog-footer a{color:inherit;text-decoration:none}.blog-footer a:hover{color:var(--fm-accent, #80dcd3)}.blog-detail{flex:1;width:100%;max-width:800px;min-height:65vh;margin:40px auto 70px}.blog-article-heading{margin:42px 0;padding-bottom:30px;border-bottom:1px solid var(--fm-border, #252c40)}.blog-article-heading h1{color:var(--fm-text, #edf1ff);font-size:clamp(28px,4vw,42px);line-height:1.45;overflow-wrap:anywhere}.blog-article-meta{color:var(--fm-text-secondary, #8d99b1);font-size:12px}.blog-article-meta span{margin:0 12px}.blog-article-summary{color:var(--fm-text-secondary, #b3bed2);font-size:15px;line-height:1.9;padding:18px 22px;border-left:2px solid var(--fm-border-strong, #776bc5);background:var(--fm-surface-raised, #121726);border-radius:0 8px 8px 0}.blog-markdown{color:var(--fm-text, #bcc7db);line-height:1.95;font-size:15px;overflow-wrap:anywhere}.blog-markdown h1,.blog-markdown h2,.blog-markdown h3,.blog-markdown h4{color:var(--fm-text, #edf1ff);margin:1.7em 0 .6em;line-height:1.5}.blog-markdown a{color:var(--fm-accent, #80dcd3)}.blog-markdown a:hover{color:var(--fm-purple, #bbabff)}.blog-markdown pre{padding:20px;border:1px solid var(--fm-border, #2b3449);border-radius:12px;background:var(--fm-surface, #080c14);overflow:auto;line-height:1.65}.blog-markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em}.blog-markdown :not(pre)>code{color:var(--fm-purple, #b5abf1);background:var(--fm-surface-raised, #1c2034);padding:3px 6px;border-radius:5px}.blog-markdown blockquote{margin:24px 0;padding:8px 22px;border-left:3px solid var(--fm-border-strong, #685bbb);background:var(--fm-surface-raised, #121726);color:var(--fm-text-secondary, #a7b2c9)}.blog-markdown img{max-width:100%;height:auto;border-radius:10px}.blog-markdown table{display:block;width:100%;overflow:auto;border-collapse:collapse}.blog-markdown th,.blog-markdown td{padding:10px 16px;border:1px solid var(--fm-border, #2b3449)}.blog-markdown th{background:var(--fm-surface-raised, #171d2d)}.blog-markdown hr{border:0;border-top:1px solid var(--fm-border, #2b3449);margin:32px 0}.blog-article-end{margin-top:50px;padding-top:24px;border-top:1px solid var(--fm-border, #252c40);color:var(--fm-text-muted, #75819a);font-size:12px}.blog-not-found{display:grid;align-content:center;justify-items:start;gap:16px}.blog-not-found a{text-decoration:none}.blog-list-slug{display:block;color:var(--fm-text-muted, #76829b);font-size:11px;margin-top:7px;overflow-wrap:anywhere}.blog-actions{display:flex;flex-wrap:wrap;gap:8px}.blog-actions a{text-decoration:none;display:inline-flex;align-items:center}.blog-status{display:inline-block;padding:5px 9px;border-radius:6px;background:var(--fm-surface-active, #242139);color:var(--fm-purple, #b7a7e1);font-size:11px;white-space:nowrap}.blog-status.published{color:var(--fm-accent, #81dcca);background:var(--fm-success-bg, #173331)}.blog-status.unpublished{color:var(--fm-warning, #b8a27d);background:var(--fm-surface-raised, #302b24)}.blog-editor.fm-editor{width:min(860px,100%)}.blog-editor-form label{display:grid;gap:8px;color:var(--fm-text-secondary, #9da7bd);font-size:12px}.blog-editor-form label small{color:var(--fm-text-secondary, #7c88a3);line-height:1.7}.blog-editor-form textarea{width:100%;min-width:0;border:1px solid var(--fm-control-border);border-radius:var(--fm-control-radius);padding:12px;color:var(--fm-text, #dce3f2);background:var(--fm-control-bg);font-family:inherit;font-size:13px;line-height:1.8;resize:vertical;outline:none}.blog-editor-form textarea:hover{border-color:var(--fm-border-strong, #435271)}.blog-editor-form textarea:focus{border-color:var(--fm-border-strong, #5570a5);box-shadow:0 0 0 3px #5570a51a}.blog-editor-form .blog-source{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;min-height:300px}.blog-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--fm-text-secondary, #9da7bd);font-size:12px}.blog-editor-preview{min-height:300px;padding:0 20px 20px;border:1px solid var(--fm-border, #2b3449);border-radius:10px;background:var(--fm-surface, #0a0d16)}.blog-editor-note{margin:0;padding:12px;color:var(--fm-warning, #cbb78b);background:var(--fm-surface-raised, #302919);border-radius:8px;font-size:12px;line-height:1.8}.blog-delete p{color:var(--fm-text-secondary, #a5b1c8);line-height:1.8;overflow-wrap:anywhere}.tools-shell{display:flex;flex-direction:column}.tools-page{flex:1;padding:48px 0 56px}.tools-heading{margin-bottom:32px}.tools-heading h1{margin:10px 0 12px;color:var(--fm-text, #edf1ff);font-size:36px;letter-spacing:-.03em}.tools-heading>p:last-child{color:var(--fm-text-secondary, #929db5);font-size:14px}.json-tool{padding:26px;border:1px solid var(--fm-border, #252c40);border-radius:16px;background:linear-gradient(145deg,var(--fm-surface-raised, #111624),var(--fm-surface, #0c101a))}.json-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px}.json-toolbar h2{margin:0 0 10px;font-size:21px;color:var(--fm-text, #edf1ff)}.json-toolbar p{margin:0;color:var(--fm-text-secondary, #8994ac);font-size:13px;line-height:1.8}.json-indent{display:flex;align-items:center;gap:12px;color:var(--fm-text-secondary, #9da7bd);font-size:12px;white-space:nowrap}.json-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:24px 0}.json-actions>span{margin-left:auto;color:var(--fm-text-muted, #75819a);font-size:11px}.json-editors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.json-panel{min-width:0}.json-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;margin-bottom:10px}.json-panel-heading label{color:var(--fm-text, #bcc7db);font-size:13px}.json-panel-heading>span{color:var(--fm-text-muted, #75819a);font-size:11px}.json-panel textarea{display:block;width:100%;min-width:0;min-height:380px;padding:16px;border:1px solid var(--fm-control-border);border-radius:var(--fm-control-radius);color:var(--fm-text, #dce3f2);background:var(--fm-control-bg);font:13px/1.8 ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical;-moz-tab-size:2;tab-size:2;outline:none}.json-panel textarea::placeholder{color:var(--fm-text-muted, #66728c)}.json-panel textarea:hover{border-color:var(--fm-border-strong, #435271)}.json-panel textarea:focus{border-color:var(--fm-border-strong, #5570a5);box-shadow:0 0 0 3px #5570a51a}.json-error{margin-bottom:20px;padding:14px 16px;border:1px solid var(--fm-border-strong, #613346);border-radius:10px;color:var(--fm-danger, #ff9ab1);background:var(--fm-danger-bg, #2a1721);font-size:12px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.json-notice{min-height:20px;margin:16px 0 0;color:var(--fm-accent, #80dcd3);font-size:12px;line-height:1.7}@media(max-width:800px){.json-editors{grid-template-columns:1fr}.json-panel textarea{min-height:280px}.json-toolbar{align-items:flex-start;flex-direction:column;gap:16px}.json-actions>span{width:100%;margin:4px 0 0}}@media(max-width:600px){.tools-page{padding:32px 0}.tools-heading h1{font-size:28px}.json-tool{padding:18px}.blog-footer{flex-wrap:wrap;gap:12px}}@media(max-width:900px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-hero{grid-template-columns:1fr .6fr;gap:20px}.blog-hero-art{transform:scale(.8)}}@media(max-width:600px){.blog-shell{width:calc(100% - 36px)}.blog-nav{height:76px;gap:12px}.blog-nav nav{gap:14px}.blog-nav .fm-logo{gap:7px}.blog-hero{grid-template-columns:1fr;padding:12px 0;min-height:unset}.blog-hero-art{display:none}.blog-grid{grid-template-columns:1fr}.blog-card{min-height:220px}.blog-section-title h2{font-size:22px}.blog-detail{margin-top:28px}.blog-article-heading{margin:32px 0}.blog-article-summary{padding:14px 16px}.blog-markdown{font-size:14px}.blog-management .fm-page-title{gap:14px;flex-wrap:wrap}.blog-editor-preview{padding:0 12px 12px}}.photos-shell{display:flex;flex-direction:column}.photo-hero{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:60px 0 54px}.photo-hero h1{margin:16px 0 20px;font-size:clamp(34px,4.5vw,54px);line-height:1.3;letter-spacing:-.04em;color:var(--fm-text, #edf1ff)}.photo-hero h1 em{font-style:normal;background:linear-gradient(100deg,#78dbd2,var(--fm-surface-active, #a799ff));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.photo-hero>div>p:last-child{font-size:14px;line-height:1.9;color:var(--fm-text-secondary, #8994ac)}.photo-hero-mark{display:grid;justify-items:center;gap:24px;width:280px;flex-shrink:0;background:radial-gradient(ellipse,#5441a326,transparent 70%)}.photo-hero-mark svg{width:170px;stroke:var(--fm-accent, #8499c6);stroke-width:1.5}.photo-hero-mark span{font-size:9px;letter-spacing:.22em;color:var(--fm-text-muted, #74829e)}.photo-feed{flex:1;padding:30px 0 60px;border-top:1px solid var(--fm-border, #202638)}.photo-wall{columns:3;column-gap:22px}.photo-card{break-inside:avoid;margin-bottom:22px;border:1px solid var(--fm-border, #252c40);border-radius:14px;overflow:hidden;background:var(--fm-surface, #0d111b)}.photo-open{display:block;position:relative;padding:0;border:0;width:100%;text-align:left;background:transparent;cursor:pointer;overflow:hidden}.photo-open:focus-visible{outline:2px solid var(--fm-border-strong, #6f86ff);outline-offset:-3px}.photo-open-label{position:absolute;bottom:12px;right:12px;padding:7px 10px;border-radius:7px;font-size:10px;color:#dfe5f5;background:#080c16cc;opacity:0;transition:opacity .15s}.photo-open:hover .photo-open-label,.photo-open:focus-visible .photo-open-label{opacity:1}.photo-image{position:relative;display:grid;place-items:center;width:100%;min-width:0;overflow:hidden;background:linear-gradient(135deg,var(--fm-surface-raised, #151c2d),var(--fm-surface, #0b101b))}.photo-image img{display:block;width:100%;height:auto;transition:transform .25s}.photo-open:hover img{transform:scale(1.025)}.photo-image-state{position:absolute;font-size:11px;color:var(--fm-text-muted, #74829e)}.photo-card-content{padding:18px 20px}.photo-card-content h3{font-size:16px;line-height:1.6;margin:8px 0;color:var(--fm-text, #e6ecfa);overflow-wrap:anywhere}.photo-meta{display:flex;flex-wrap:wrap;gap:12px;margin:0;font-size:10px;color:var(--fm-text-secondary, #8494ad);line-height:1.8;overflow-wrap:anywhere}.photo-caption{font-size:12px;line-height:1.8;color:var(--fm-text-secondary, #929db5);white-space:pre-wrap;margin:8px 0 0;overflow-wrap:anywhere}.photo-viewer-mask{z-index:8;background:var(--fm-page, #04070dea);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.photo-viewer{width:min(1080px,100%);max-height:calc(100dvh - 48px);overflow:auto;border:1px solid var(--fm-border, #2a3248);border-radius:16px;background:var(--fm-surface, #0c101a);outline:none}.photo-viewer>header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;font-size:11px;color:var(--fm-text-secondary, #8292ac)}.photo-viewer .fm-close{float:none}.photo-image-full{min-height:160px;aspect-ratio:auto;background:var(--fm-surface, #070b12)}.photo-image-full img{width:100%;height:auto;max-height:65dvh;object-fit:contain}.photo-viewer-caption{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:20px 24px}.photo-viewer-caption h2{font-size:21px;line-height:1.5;margin:8px 0;color:var(--fm-text, #edf1ff);overflow-wrap:anywhere}.photo-viewer-caption>div:first-child{min-width:0}.photo-viewer-caption p:last-child{font-size:13px;line-height:1.9;color:var(--fm-text-secondary, #a2afc7);white-space:pre-wrap;overflow-wrap:anywhere}.photo-viewer-controls{display:flex;gap:8px;flex-shrink:0}.photo-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.photo-admin-card{min-width:0;overflow:hidden;border:1px solid var(--fm-border, #252c40);border-radius:14px;background:var(--fm-surface, #0d111b)}.photo-admin-card>.photo-image{aspect-ratio:4/3!important}.photo-admin-card>.photo-image img{width:100%;height:100%;object-fit:cover}.photo-admin-heading{display:flex;justify-content:space-between;align-items:start;gap:12px}.photo-admin-heading h3{margin:0 0 8px}.photo-admin-card .blog-actions{margin-top:18px}.photo-admin-card .photo-caption{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.photo-editor.fm-editor{width:min(680px,100%)}.photo-upload{display:grid;gap:12px;padding:16px;border:1px dashed var(--fm-border-strong, #3c4968);border-radius:12px;background:var(--fm-surface, #0a0e17)}.photo-upload label{color:var(--fm-text, #c1cce1)}.photo-upload small,.photo-upload>span{font-size:11px;color:var(--fm-text-secondary, #7d8ba5);line-height:1.7}.photo-upload img{display:block;width:100%;max-height:280px;object-fit:contain;border-radius:8px;background:var(--fm-surface, #070b12)}.photo-editor .photo-image{max-height:280px;aspect-ratio:auto!important}.photo-editor .photo-image img{max-height:280px;object-fit:contain}.photo-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.photo-management .fm-page-title{gap:14px;flex-wrap:wrap}@media(max-width:900px){.photo-wall{columns:2}.photo-hero-mark{width:200px}}@media(max-width:600px){.blog-nav{height:auto;min-height:76px;flex-wrap:wrap;padding:18px 0}.blog-nav nav{gap:18px;flex-wrap:wrap}.photo-hero{padding:40px 0}.photo-hero-mark{display:none}.photo-wall{columns:1}.photo-feed{padding-top:24px}.photo-viewer{max-height:calc(100dvh - 32px)}.photo-viewer-caption{padding:18px;align-items:flex-start;flex-direction:column;gap:14px}.photo-admin-grid,.photo-fields{grid-template-columns:1fr}.photo-card-content{padding:16px}.photo-image-full img{max-height:55dvh}}:root{color-scheme:dark}:root[data-theme=light]{color-scheme:light;--fm-color-scheme: light;--fm-page: #f4f8fd;--fm-surface: #ffffff;--fm-surface-raised: #edf3fb;--fm-surface-active: #e0eafb;--fm-surface-line: rgba(38, 93, 151, .09);--fm-text: #182b46;--fm-text-secondary: #415775;--fm-text-muted: #5c708b;--fm-border: #d4dfed;--fm-border-strong: #8da6c8;--fm-accent: #087d91;--fm-purple: #6650bb;--fm-success: #087757;--fm-danger: #bb3057;--fm-warning: #946018;--fm-success-bg: #e5f5ee;--fm-danger-bg: #fff0f3;--fm-warning-bg: #fff4df;--fm-shadow: rgba(32, 65, 108, .12);--fm-scrim: rgba(29, 48, 76, .26);--fm-control-bg: #fff;--fm-control-border: #c8d6e8}:root[data-theme=light] body{background-image:radial-gradient(ellipse at 12% 0%,#e0edff 0%,transparent 42%),radial-gradient(ellipse at 100% 25%,#e4f5f8 0%,transparent 38%);background-attachment:fixed}:root[data-theme=light] .fm-login-brand h1{background-image:linear-gradient(100deg,#223e65,#6253b8 55%,#087d91)}:root[data-theme=light] :is(.blog-hero h1 em,.photo-hero h1 em){background-image:linear-gradient(100deg,#087d91,#6650bb)}:root[data-theme=light] :is(.fm-calendar span.today,.fm-sidebar>button.active,.ark-stat-scope button.active,.mode-switch button.active){color:var(--fm-text)}:root[data-theme=light] .fm-calendar span.checked{color:#06120e}:root[data-theme=light] .fm-calendar span.today.checked{outline:2px solid #6650bb;outline-offset:2px}:root[data-theme=light] .fm-select{color-scheme:light}:root[data-theme=light] *{scrollbar-color:#a4b7d0 #edf3fb}:root[data-theme=light] *::-webkit-scrollbar-track,:root[data-theme=light] *::-webkit-scrollbar-corner{background:#edf3fb}:root[data-theme=light] *::-webkit-scrollbar-thumb{background:#a4b7d0;border-color:#edf3fb}:root[data-theme=light] *::-webkit-scrollbar-thumb:hover{background:#829ab9}:root[data-theme=light] .photo-admin-gallery .photo-card-content h3{color:#e6ecfa}.fm-brand-tools{display:flex;align-items:center;gap:18px;min-width:0}.fm-theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex-shrink:0;min-height:34px;padding:7px 10px;border:1px solid var(--fm-control-border);border-radius:var(--fm-control-radius);color:var(--fm-text-secondary, #a8b7d0);background:var(--fm-control-bg);font:500 11px/18px Inter,PingFang SC,sans-serif;transition:border-color .16s,background-color .16s}.fm-theme-toggle svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.fm-theme-toggle:hover{border-color:var(--fm-accent, #67cfc7)}.fm-theme-toggle:focus-visible{outline:2px solid var(--fm-purple, #6f86ff);outline-offset:3px}.fm-login-theme{position:absolute;left:24px;top:24px;z-index:1}@media(max-width:600px){.fm-brand-tools{gap:10px}.fm-brand-tools .fm-theme-toggle{width:34px;padding:7px}.fm-brand-tools .fm-theme-toggle span{display:none}.blog-nav{flex-wrap:wrap;height:auto;min-height:76px;padding:14px 0}.fm-dashboard>header{padding:0 14px;gap:12px}.fm-login-theme{top:18px;left:18px}}
