:root{--navy:#27385d;--muted:#7d8ba5;--line:#dfe7f2;--green:#52c97c;--green2:#38b968;--pink:#ec6e9c;--purple:#875fc7;--blue:#50aeea;--paper:#fff;--bg:#f5f9fd;--shadow:0 10px 32px rgba(44,68,112,.10)}
.carat{display:block;object-fit:contain}.inline-carat{display:inline-block!important;width:16px!important;height:16px!important;margin:0 0 -3px 1px!important}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--navy);font-family:Nunito,system-ui,sans-serif;min-height:100vh}.sky-glow{position:fixed;inset:0 0 auto;height:360px;z-index:-1;background:linear-gradient(130deg,#eefcff 0%,#fafcff 45%,#fff0fa 100%);clip-path:polygon(0 0,100% 0,100% 78%,72% 94%,35% 82%,0 100%)}.topbar{height:78px;background:#fff;border-bottom:1px solid #e9eff6;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px)/2));box-shadow:0 3px 15px rgba(50,65,95,.05)}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:var(--navy);line-height:1}.brand>span:last-child{display:grid}.brand strong{font:900 20px/1 "Roboto Condensed",sans-serif;letter-spacing:2px}.brand small{font-size:8px;letter-spacing:3.1px;color:#73809a;margin-top:4px}.brand-mark{width:43px;height:43px;background:linear-gradient(145deg,#57d180 0 48%,#40537b 49%);border-radius:50% 50% 48% 18%;transform:rotate(-10deg);position:relative;border:3px solid white;box-shadow:0 0 0 2px #dde8ef}.brand-stripe{position:absolute;width:8px;height:35px;background:#fff;border-radius:8px;left:17px;top:2px;transform:rotate(10deg)}.day-chip{display:flex;align-items:center;gap:10px;background:#f5f8fc;border:1px solid var(--line);border-radius:12px;padding:8px 14px}.day-chip>span:last-child{display:grid}.day-chip small{font-size:8px;letter-spacing:1.5px;color:#929db0;font-weight:900}.day-chip b{font-size:12px}.status-dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #dff6e7}main{width:min(1180px,calc(100% - 32px));margin:auto}.hero{min-height:238px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:36px 16px}.hero-copy{position:relative}.hero-copy:before{content:"";position:absolute;width:7px;height:87px;border-radius:8px;background:linear-gradient(var(--green),#83dcaa);left:-22px;top:36px;transform:skewY(-18deg)}.eyebrow,.panel-title p{font:800 11px/1 "Roboto Condensed",sans-serif;color:var(--green2);letter-spacing:2px;margin:0 0 9px}.hero h1{font:900 clamp(34px,4vw,53px)/.98 "Roboto Condensed",sans-serif;letter-spacing:-1px;margin:0;text-transform:uppercase}.hero h1 em{color:var(--green2);font-style:italic}.hero-copy>p:last-child{color:#75839b;font-size:14px;max-width:530px;margin:16px 0 0}.reset-card{width:265px;padding:22px 24px;background:rgba(255,255,255,.84);border:1px solid white;border-radius:18px;box-shadow:var(--shadow);position:relative;overflow:hidden}.reset-card:after{content:"";position:absolute;right:-25px;top:-25px;width:80px;height:80px;border:13px solid rgba(82,201,124,.09);border-radius:50%}.flag{font-size:9px;font-weight:900;letter-spacing:2px;color:#98a4b6}.countdown{font:900 37px/1.2 "Roboto Condensed",sans-serif;letter-spacing:1px;margin:8px 0 12px}.reset-card p{display:flex;justify-content:space-between;margin:0;padding-top:11px;border-top:1px solid #e7edf4;font-size:10px;color:#8995a8}.reset-card p strong{font-size:10px;color:#4b5b76}.stats-grid{display:grid;grid-template-columns:1.25fr repeat(4,1fr);gap:12px;margin-bottom:18px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px 18px;min-width:0;box-shadow:0 6px 18px rgba(48,74,113,.06)}.net-card{background:linear-gradient(135deg,#3fcb78,#5ed18b);color:#fff;border:0;box-shadow:0 10px 24px rgba(70,190,116,.25)}.stat-head{display:flex;justify-content:space-between;align-items:center;font:900 9px/1 "Roboto Condensed",sans-serif;letter-spacing:1.4px;color:#8a97a9}.net-card .stat-head{color:#eafff0}.trend{background:rgba(255,255,255,.2);border-radius:8px;padding:5px 7px}.mini-icon{width:21px;height:21px;display:grid;place-items:center;border-radius:7px;color:#fff;font-size:13px}.pink{background:var(--pink)}.purple{background:var(--purple)}.green{background:var(--green)}.blue{background:var(--blue)}.stat-value{display:flex;align-items:center;margin-top:10px;height:34px}.stat-value .carat{width:25px;height:25px;margin-right:4px}.stat-value strong{font:900 28px/1 "Roboto Condensed",sans-serif}.stat-value small{font-size:10px;color:#9ba6b5;margin:8px 0 0 5px}.stat-card>p{font-size:10px;color:#99a4b4;margin:4px 0 0}.net-card>p{color:#dff9e8}.progress{height:5px;background:#edf1f6;border-radius:5px;margin-top:9px;overflow:hidden}.progress i{height:100%;display:block;width:0;background:linear-gradient(90deg,#f58aaa,#ed6395);border-radius:5px;transition:width .3s}.workspace{display:grid;grid-template-columns:430px 1fr;gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.form-panel{padding:22px}.panel-title{display:flex;align-items:center;gap:11px}.panel-title p{font-size:9px;margin-bottom:4px}.panel-title h2{font:900 19px/1 "Roboto Condensed",sans-serif;margin:0;text-transform:uppercase}.title-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#e1f7e9;color:var(--green2);font-size:21px;font-weight:800}.flag-icon{background:#ecf0fa;color:#6677aa;font-size:16px}form{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:20px}.field{display:grid;gap:6px}.full,fieldset,.primary{grid-column:1/-1}label,legend{font-size:10px;text-transform:uppercase;letter-spacing:.6px;font-weight:900;color:#64728a}label span{font-weight:600;color:#a3adba;text-transform:none}input{font:700 13px Nunito,sans-serif;color:var(--navy);height:42px;border:1px solid #dce4ee;border-radius:9px;background:#fbfcfe;padding:0 12px;outline:none;transition:.2s}input:focus{border-color:var(--green);box-shadow:0 0 0 3px #e4f8ea}.input-icon{position:relative}.input-icon input{width:100%;padding-left:37px}.input-icon .carat{position:absolute;width:22px;height:22px;left:10px;top:10px}fieldset{padding:0;border:0;margin:2px 0}legend{margin-bottom:7px}.pay-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.pay-card{height:83px;border:1px solid #dde4ed;border-radius:10px;display:grid;justify-items:center;align-content:center;position:relative;cursor:pointer;text-transform:none;letter-spacing:0}.pay-card input{position:absolute;opacity:0}.radio-dot{position:absolute;left:8px;top:8px;width:11px;height:11px;border-radius:50%;border:2px solid #c8d1de}.pay-card:has(input:checked){border-color:var(--green);background:#f4fcf7;box-shadow:0 0 0 2px #dff5e7}.pay-card:has(input:checked) .radio-dot{border-color:var(--green);background:var(--green);box-shadow:inset 0 0 0 2px white}.pay-card .carat{width:24px;height:24px}.pay-symbol{font-size:17px;margin:2px}.leaf{color:var(--green)}.bottle{color:var(--blue)}.pay-card b{font-size:10px}.pay-card small{font-size:8px;color:#9aa5b5}.primary{height:47px;border:0;border-radius:10px;background:linear-gradient(90deg,#3fc476,#5bd087);color:#fff;font:900 12px Nunito,sans-serif;letter-spacing:1px;display:flex;justify-content:center;gap:12px;align-items:center;cursor:pointer;box-shadow:0 6px 14px rgba(62,190,115,.25)}.primary span:last-child{font-size:22px}.history-panel{min-height:485px;padding:22px}.history-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid #e7edf4}.text-button{background:none;border:0;color:#9aa4b3;font:800 10px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.history-list{display:grid;gap:9px;margin-top:14px}.empty-state{text-align:center;margin:auto;padding:70px 20px;color:#98a4b7}.empty-state .empty-mark{width:58px;height:58px;display:grid;place-items:center;margin:0 auto 14px;background:#eef9f2;border-radius:50%;font-size:25px;color:var(--green)}.empty-state b{display:block;color:#52617a;font-size:13px}.empty-state p{font-size:11px;margin:5px}.run-row{display:grid;grid-template-columns:55px 1fr auto;gap:12px;align-items:center;padding:11px;border:1px solid #e3e9f1;border-radius:12px;background:#fcfdff}.run-time{border-right:1px solid #e2e8ef;font:900 14px "Roboto Condensed",sans-serif}.run-time small{display:block;color:#a1acbb;font:700 8px Nunito,sans-serif}.run-main b{display:block;font-size:12px}.run-main span{font-size:9px;color:#8f9bac}.run-result{text-align:right}.run-result b{display:block;font:900 14px "Roboto Condensed",sans-serif;color:var(--green2)}.run-result small{font-size:8px;color:#8995a5}.delete-run{border:0;background:none;color:#c3cad4;cursor:pointer;font-size:14px;padding:3px}.info-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:16px;margin:18px 0 28px;padding:16px 22px;box-shadow:0 6px 18px rgba(48,74,113,.05)}.info-strip>div{display:flex;align-items:center;gap:10px;padding:0 18px;border-right:1px solid #e6ebf2}.info-strip>div:last-child{border:0}.info-strip .carat{width:29px;height:29px}.info-icon{font-size:19px;color:var(--green2)}.info-strip p{display:grid;margin:0}.info-strip b{font-size:10px}.info-strip small{font-size:9px;color:#9ba5b3}footer{border-top:1px solid #e1e8f1;display:flex;justify-content:space-between;padding:22px max(24px,calc((100vw - 1180px)/2));font-size:9px;color:#9ba6b7;text-transform:uppercase;letter-spacing:1px}.svg-defs{position:absolute}
@media(max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}.net-card{grid-column:1/-1}.workspace{grid-template-columns:1fr}.form-panel{order:1}.history-panel{min-height:320px}.info-strip{grid-template-columns:1fr 1fr;gap:15px}.info-strip>div{border:0;padding:0}.hero{padding-inline:10px}}
@media(max-width:590px){main{width:min(100% - 22px,1180px)}.topbar{height:66px;padding:0 13px}.brand strong{font-size:17px}.brand-mark{width:37px;height:37px}.brand-stripe{height:29px;left:14px}.day-chip{padding:6px 9px}.hero{display:block;min-height:0;padding:34px 15px}.hero-copy:before{left:-13px}.hero h1{font-size:38px}.reset-card{width:100%;margin-top:25px;display:grid;grid-template-columns:1fr auto;align-items:center}.reset-card .countdown{grid-row:1/3;grid-column:2;margin:0;font-size:27px}.reset-card p{grid-column:1/-1;margin-top:10px}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:14px}.workspace{gap:12px}.panel{border-radius:14px}.form-panel,.history-panel{padding:16px}form{gap:11px}.pay-card{height:78px}.run-row{grid-template-columns:48px 1fr auto;gap:8px}.info-strip{grid-template-columns:1fr;padding:16px}.info-strip>div{padding-bottom:10px;border-bottom:1px solid #edf1f5}.info-strip>div:last-child{padding-bottom:0}footer{display:grid;gap:7px;text-align:center}.day-chip small{display:none}}

/* Entry management */
.form-actions{grid-column:1/-1;display:flex;gap:8px}.form-actions .primary{flex:1}.secondary{height:47px;padding:0 16px;border:1px solid #d9e1eb;border-radius:10px;background:#fff;color:#78859a;font:900 10px Nunito,sans-serif;cursor:pointer}.reset-button{border:1px solid #f1cdd7;border-radius:8px;background:#fff7f9;color:#d75f80;font:900 9px Nunito,sans-serif;letter-spacing:.5px;text-transform:uppercase;padding:8px 10px;cursor:pointer}.run-row{grid-template-columns:55px minmax(0,1fr) auto auto}.run-main{min-width:0}.run-main span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-actions{display:flex;gap:4px}.row-action{border:1px solid #dfe6ef;border-radius:7px;background:#fff;color:#728099;cursor:pointer;font:800 9px Nunito,sans-serif;padding:6px 7px}.row-action.remove{color:#d45f7e;border-color:#f0d5dd}
@media(max-width:590px){.run-row{grid-template-columns:48px minmax(0,1fr) auto}.run-result{display:none}.row-actions{grid-column:2/-1;justify-content:flex-end}.form-actions{flex-direction:column-reverse}.secondary{width:100%}}

/* Fast fan-count entry */
.fans-field{grid-column:1/-1}.fan-stepper{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.fan-stepper button{height:30px;border:1px solid #dfe6ef;border-radius:7px;background:#f8fafc;color:#6f7d94;font:900 9px Nunito,sans-serif;cursor:pointer}.fan-stepper button:nth-child(-n+3){color:#d46582;background:#fff8fa;border-color:#f0d9df}.fan-stepper button:nth-child(n+4){color:#2fae63;background:#f4fbf7;border-color:#d6efdf}.fan-stepper button:hover{filter:brightness(.97);transform:translateY(-1px)}
@media(max-width:590px){.fan-stepper{grid-template-columns:repeat(3,1fr)}.fan-stepper button{height:34px}}

.carats-field{grid-column:1/-1}.value-stepper{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.value-stepper button{height:30px;border:1px solid #dfe6ef;border-radius:7px;background:#f8fafc;color:#6f7d94;font:900 9px Nunito,sans-serif;cursor:pointer}.value-stepper button:nth-child(-n+3){color:#d46582;background:#fff8fa;border-color:#f0d9df}.value-stepper button:nth-child(n+4){color:#2fae63;background:#f4fbf7;border-color:#d6efdf}.value-stepper button:hover{filter:brightness(.97);transform:translateY(-1px)}
.net-card.is-negative{background:linear-gradient(135deg,#e75d72,#d9425c);box-shadow:0 10px 24px rgba(210,62,86,.25)}
@media(max-width:590px){.value-stepper{grid-template-columns:repeat(3,1fr)}.value-stepper button{height:34px}}

select{font:700 13px Nunito,sans-serif;color:var(--navy);height:42px;border:1px solid #dce4ee;border-radius:9px;background:#fbfcfe;padding:0 12px;outline:none}.spark-section{border:1px solid #dfe7f2;border-radius:11px;padding:12px;background:#fafcff}.spark-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;text-transform:none;letter-spacing:0}.spark-toggle>input{position:absolute;opacity:0}.spark-toggle>span:last-child{display:grid}.spark-toggle b{font-size:11px;color:var(--navy)}.spark-toggle small{font-size:9px;color:#929daf}.toggle-track{width:36px;height:21px;border-radius:20px;background:#cad3df;padding:3px;transition:.2s}.toggle-track i{display:block;width:15px;height:15px;border-radius:50%;background:#fff;transition:.2s}.spark-toggle input:checked+.toggle-track{background:var(--green)}.spark-toggle input:checked+.toggle-track i{transform:translateX(15px)}.reroll-payment{margin-top:13px;padding-top:12px;border-top:1px solid #e3e9f1}.reroll-payment legend{margin-bottom:8px}.type-badge{display:inline-block;margin-left:4px;padding:3px 5px;border-radius:5px;background:#edf7f1;color:#35a964;font:800 7px Nunito,sans-serif;text-transform:uppercase;font-style:normal;vertical-align:2px}

.day-navigator{display:flex;align-items:center;justify-content:center;gap:7px;margin:-7px 0 15px}.day-navigator>button{height:36px;min-width:36px;border:1px solid #dce5ef;border-radius:9px;background:#fff;color:#64738c;font:900 20px Nunito,sans-serif;cursor:pointer;box-shadow:0 4px 12px rgba(48,74,113,.05)}.day-navigator>div{height:44px;display:grid;align-content:center;padding:4px 12px;border:1px solid #dce5ef;border-radius:10px;background:#fff;box-shadow:0 4px 12px rgba(48,74,113,.05)}.day-navigator small{font:900 7px Nunito,sans-serif;letter-spacing:1px;color:#9aa5b5}.day-navigator input{height:23px;border:0;background:transparent;padding:0;font-size:12px;box-shadow:none}.day-navigator .today-button{width:auto;min-width:58px;padding:0 11px;color:#2dac61;font-size:10px;text-transform:uppercase;letter-spacing:.5px}.day-navigator button:hover{border-color:var(--green);color:var(--green2)}
@media(max-width:590px){.day-navigator{margin-top:0}.day-navigator>div{flex:1}.day-navigator input{width:100%}}

/* Header day controls */
.header-tools{display:flex;align-items:center;gap:8px}.topbar .day-navigator{margin:0;gap:4px}.topbar .day-navigator>button{height:34px;min-width:34px;box-shadow:none}.topbar .day-navigator>div{height:42px;padding:3px 9px;box-shadow:none}.topbar .day-navigator input{width:112px}.topbar .day-navigator .today-button{min-width:52px}
@media(max-width:760px){.topbar{height:auto;min-height:66px;padding-top:8px;padding-bottom:8px}.header-tools{gap:5px}.day-chip{display:none}.topbar .day-navigator>div{flex:0 1 auto}.topbar .day-navigator input{width:108px}}
@media(max-width:450px){.brand small{display:none}.brand strong{font-size:14px;letter-spacing:1px}.brand-mark{width:32px;height:32px}.brand-stripe{height:25px;left:12px}.topbar .day-navigator>button{height:32px;min-width:29px}.topbar .day-navigator>div{height:38px;padding-inline:5px}.topbar .day-navigator input{width:102px;font-size:11px}.topbar .day-navigator .today-button{min-width:43px;padding:0 6px;font-size:8px}}

/* Dark mode */
.theme-toggle{width:40px;height:40px;flex:0 0 40px;border:1px solid #dce5ef;border-radius:11px;background:#fff;color:#65738c;font-size:18px;cursor:pointer}.theme-toggle:hover{border-color:var(--green);color:var(--green2)}
body,body *{transition-property:background-color,border-color,color,box-shadow;transition-duration:.2s}body.dark-mode{--navy:#e8eef8;--muted:#aeb9ca;--line:#33405a;--paper:#202b40;--bg:#151d2d;background:#151d2d;color:#e8eef8}.dark-mode .sky-glow{background:linear-gradient(130deg,#172b35 0%,#182236 48%,#2a1e31 100%)}.dark-mode .topbar,.dark-mode .panel,.dark-mode .stat-card,.dark-mode .info-strip{background:#202b40;border-color:#33405a}.dark-mode .topbar{box-shadow:0 3px 18px rgba(0,0,0,.25)}.dark-mode .brand,.dark-mode .panel-title h2,.dark-mode .spark-toggle b,.dark-mode input,.dark-mode select{color:#e8eef8}.dark-mode .brand-mark{border-color:#202b40;box-shadow:0 0 0 2px #40506b}.dark-mode .day-chip,.dark-mode .day-navigator>div,.dark-mode .day-navigator>button,.dark-mode .theme-toggle{background:#263249;border-color:#3a4964;color:#d9e2ef}.dark-mode .reset-card{background:rgba(32,43,64,.9);border-color:#35445e}.dark-mode .reset-card p,.dark-mode .history-head,.dark-mode .info-strip>div{border-color:#354159}.dark-mode .stat-card{box-shadow:0 7px 20px rgba(0,0,0,.18)}.dark-mode .net-card{background:linear-gradient(135deg,#29995a,#3dac69);border:0}.dark-mode .net-card.is-negative{background:linear-gradient(135deg,#c4475c,#aa3149)}.dark-mode .progress{background:#354158}.dark-mode input,.dark-mode select{background:#263249;border-color:#3a4860}.dark-mode input:focus,.dark-mode select:focus{border-color:#50c67c;box-shadow:0 0 0 3px rgba(77,196,120,.15)}.dark-mode input[type="date"]{color-scheme:dark}.dark-mode .pay-card,.dark-mode .row-action,.dark-mode .secondary{background:#263249;border-color:#3b4961;color:#c3cddd}.dark-mode .pay-card:has(input:checked){background:#213c34;border-color:#4cc379;box-shadow:0 0 0 2px #294d3d}.dark-mode .spark-section,.dark-mode .run-row{background:#1b2538;border-color:#354159}.dark-mode .reroll-payment,.dark-mode .run-time,.dark-mode .history-head{border-color:#354159}.dark-mode .fan-stepper button,.dark-mode .value-stepper button{background:#263249;border-color:#3c4a62}.dark-mode .fan-stepper button:nth-child(-n+3),.dark-mode .value-stepper button:nth-child(-n+3){background:#392733;border-color:#5b3947;color:#f18aa6}.dark-mode .fan-stepper button:nth-child(n+4),.dark-mode .value-stepper button:nth-child(n+4){background:#213a32;border-color:#315744;color:#6fd394}.dark-mode .reset-button{background:#392630;border-color:#633b49;color:#f28aa5}.dark-mode .type-badge{background:#264637;color:#6fd394}.dark-mode footer{border-color:#33405a}.dark-mode .empty-state b{color:#cdd6e5}
@media(max-width:450px){.theme-toggle{width:34px;height:34px;flex-basis:34px}.topbar .day-navigator .today-button{display:none}}

/* Backup and transfer */
.backup-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:-10px 0 28px;padding:15px 20px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(48,74,113,.05)}.backup-panel>div:first-child{display:flex;align-items:center;gap:11px}.backup-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#edf2fb;color:#6379ad;font-size:20px;font-weight:900}.backup-panel p{display:grid;margin:0}.backup-panel b{font-size:11px}.backup-panel small{font-size:9px;color:#929daf}.backup-actions{display:flex;gap:7px}.backup-actions button,.import-button{height:34px;display:flex;align-items:center;border:1px solid #dce5ef;border-radius:8px;background:#fff;color:#62718a;font:900 9px Nunito,sans-serif;text-transform:uppercase;letter-spacing:.4px;padding:0 12px;cursor:pointer}.backup-actions button{background:#eef9f2;border-color:#d3eddd;color:#2da860}.backup-actions button:hover,.import-button:hover{border-color:var(--green);color:var(--green2)}.dark-mode .backup-panel{background:#202b40;border-color:#33405a}.dark-mode .backup-icon{background:#2b3850;color:#a9b9db}.dark-mode .backup-actions button,.dark-mode .import-button{background:#263249;border-color:#3b4961;color:#c3cddd}.dark-mode .backup-actions button{background:#213a32;color:#6fd394;border-color:#315744}
.backup-actions .install-button{background:linear-gradient(90deg,#43bf72,#58ce84);border:0;color:#fff;box-shadow:0 4px 10px rgba(55,177,103,.2)}.backup-actions .install-button[hidden]{display:none}.dark-mode .backup-actions .install-button{background:linear-gradient(90deg,#329f60,#42b66f);border:0;color:#fff}
@media(max-width:590px){.backup-panel{align-items:stretch;flex-direction:column}.backup-actions{display:grid;grid-template-columns:1fr 1fr}.backup-actions button,.import-button{justify-content:center}}
.data-health{display:flex;align-items:center;gap:8px;margin-left:auto;padding:7px 10px;border:1px solid #d8ecdf;border-radius:10px;background:#f3fbf6}.data-health>i{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#49c579;box-shadow:0 0 0 3px rgba(73,197,121,.14)}.data-health p{display:grid;margin:0}.data-health b{color:#329d5b;font-size:9px}.data-health small{color:#8d9aab;font-size:7px}.data-health.is-warning{border-color:#f0d2d9;background:#fff6f8}.data-health.is-warning>i{background:#dc5873;box-shadow:0 0 0 3px rgba(220,88,115,.13)}.data-health.is-warning b{color:#d64f6b}.dark-mode .data-health{background:#213a32;border-color:#315744}.dark-mode .data-health.is-warning{background:#392630;border-color:#633b49}.dark-mode .data-health b{color:#6fd394}.dark-mode .data-health.is-warning b{color:#f28aa5}
@media(max-width:760px){.backup-panel{flex-wrap:wrap}.data-health{order:3;width:100%;margin:0}.backup-actions{margin-left:auto}}
@media(max-width:590px){.data-health{order:0}.backup-actions{margin:0}}

/* Partner Uma profile */
.hero-feature{display:flex;align-items:center;gap:24px;min-width:0}.character-profile{width:150px;flex:0 0 150px;display:grid;justify-items:center;gap:5px}.portrait-frame{width:126px;height:126px;overflow:hidden;border-radius:50%;background:linear-gradient(145deg,#e7faf0,#eaf1ff);border:4px solid #fff;box-shadow:0 8px 23px rgba(47,74,112,.16);position:relative}.portrait-frame:after{content:"";position:absolute;inset:auto 13px 5px;height:4px;border-radius:4px;background:var(--green)}.portrait-frame img{width:100%;height:100%;object-fit:cover}.character-profile label{font-size:7px;color:#8794a8;letter-spacing:1.2px}.character-profile select{width:150px;height:32px;padding:0 7px;background:#fff;font-size:9px;border-radius:8px}.profile-source{font-size:8px;color:#7d8ba5;text-decoration:none}.profile-source:hover{color:var(--green2)}.hero-feature .hero-copy{max-width:540px}.hero-feature .hero-copy h1{font-size:clamp(27px,3.4vw,47px);line-height:1.03;text-transform:none}.hero-feature .hero-copy:before{height:100px;top:31px}.dark-mode .portrait-frame{background:linear-gradient(145deg,#203b38,#26334c);border-color:#34425b}.dark-mode .character-profile select{background:#263249}.dark-mode .profile-source{color:#aeb9ca}
@media(max-width:900px){.hero-feature{gap:16px}.character-profile{width:125px;flex-basis:125px}.portrait-frame{width:106px;height:106px}.character-profile select{width:125px}}
@media(max-width:590px){.hero-feature{align-items:center}.character-profile{width:105px;flex-basis:105px}.portrait-frame{width:88px;height:88px}.character-profile select{width:105px}.hero-feature .hero-copy:before{display:none}.hero-feature .hero-copy>p:last-child{display:none}.hero-feature .hero-copy h1{font-size:25px}.hero-feature .eyebrow{font-size:9px}.profile-source{display:none}}
footer a{color:inherit}footer a:hover{color:var(--green2)}

/* Character portrait gallery */
.portrait-frame{display:block;padding:0;cursor:pointer}.portrait-frame span{position:absolute;inset:auto 12px 8px;padding:4px;border-radius:8px;background:rgba(39,56,93,.78);color:#fff;font:900 8px Nunito,sans-serif;text-transform:uppercase;letter-spacing:.7px;opacity:0;transform:translateY(4px);transition:.2s}.portrait-frame:hover span,.portrait-frame:focus-visible span{opacity:1;transform:none}.portrait-frame:focus-visible{outline:3px solid rgba(82,201,124,.45);outline-offset:3px}.profile-picker-name{width:150px;color:var(--navy);font:900 10px Nunito,sans-serif;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px}.profile-modal[hidden]{display:none}.profile-backdrop{position:absolute;inset:0;background:rgba(13,20,34,.76);backdrop-filter:blur(5px)}.profile-dialog{position:relative;width:min(920px,100%);height:min(760px,calc(100vh - 48px));display:flex;flex-direction:column;background:#fff;border:1px solid #dfe7f2;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.3);overflow:hidden}.profile-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 14px}.profile-dialog-head p{margin:0 0 3px;color:var(--green2);font:900 9px Nunito,sans-serif;letter-spacing:1.5px}.profile-dialog-head h2{margin:0;font:900 23px "Roboto Condensed",sans-serif;text-transform:uppercase}.profile-dialog-head button{width:36px;height:36px;border:1px solid #dfe6ef;border-radius:10px;background:#f8fafc;color:#78859a;font-size:22px;cursor:pointer}.profile-search{position:relative;margin:0 22px 15px}.profile-search span{position:absolute;left:13px;top:7px;color:#8290a6;font-size:23px}.profile-search input{width:100%;height:44px;padding-left:42px;text-transform:none;font-size:13px}.profile-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:2px 22px 24px;overflow-y:auto}.profile-tile{min-width:0;padding:7px 5px 8px;border:1px solid #e1e7ef;border-radius:12px;background:#fbfcfe;color:var(--navy);cursor:pointer}.profile-tile img{display:block;width:100%;aspect-ratio:1;border-radius:9px;object-fit:cover;background:#edf3f8}.profile-tile span{display:block;margin-top:6px;font:800 9px/1.15 Nunito,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-tile:hover{border-color:#68cf8e;transform:translateY(-2px);box-shadow:0 7px 16px rgba(46,126,77,.13)}.profile-tile.is-selected{border-color:var(--green);background:#edf9f1;box-shadow:0 0 0 2px #d4f0de}.profile-empty{text-align:center;color:#929daf;font-size:12px;margin:50px}.modal-open{overflow:hidden}.dark-mode .profile-dialog{background:#202b40;border-color:#394760}.dark-mode .profile-dialog-head button,.dark-mode .profile-tile{background:#263249;border-color:#3b4961;color:#dce5f2}.dark-mode .profile-tile.is-selected{background:#213a32;border-color:#52c97c;box-shadow:0 0 0 2px #315744}.dark-mode .profile-tile img{background:#1b2538}
@media(max-width:800px){.profile-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:590px){.profile-modal{padding:10px}.profile-dialog{height:calc(100vh - 20px);border-radius:16px}.profile-dialog-head{padding:15px 15px 12px}.profile-search{margin:0 15px 12px}.profile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:2px 15px 18px}.profile-picker-name{width:105px}.portrait-frame span{opacity:1;inset:auto 9px 6px;font-size:7px;padding:3px}}

.profile-name-row{width:150px;display:flex;align-items:center;justify-content:center;gap:5px}.profile-name-row .profile-picker-name{width:auto;min-width:0}.profile-name-row .profile-source{width:18px;height:18px;flex:0 0 18px;display:grid;place-items:center;border:1px solid #dce5ef;border-radius:6px;background:#fff;color:#8290a5;text-decoration:none;font:900 10px Nunito,sans-serif}.profile-name-row .profile-source:hover{border-color:var(--green);color:var(--green2)}.dark-mode .profile-name-row .profile-source{background:#263249;border-color:#3b4961;color:#aeb9ca}
@media(max-width:590px){.profile-name-row{width:105px}.profile-name-row .profile-source{display:grid}}

#profile-quote.is-long{font-size:clamp(24px,2.8vw,39px);line-height:1.08}#profile-quote.is-very-long{font-size:clamp(21px,2.35vw,33px);line-height:1.1}
@media(max-width:590px){#profile-quote.is-long{font-size:22px}#profile-quote.is-very-long{font-size:19px;line-height:1.12}}
.profile-name-row .guide-source{background:#edf9f1;color:#28a45b;border-color:#d3eddd;font-size:8px}.profile-name-row .guide-source[hidden]{display:none}.dark-mode .profile-name-row .guide-source{background:#213a32;color:#6fd394;border-color:#315744}

/* Trainee autocomplete */
.trainee-input-wrap{position:relative}.trainee-input-wrap>input{width:100%}.trainee-suggestions{position:absolute;z-index:50;top:calc(100% + 5px);left:0;right:0;padding:5px;border:1px solid #dbe4ee;border-radius:11px;background:#fff;box-shadow:0 14px 32px rgba(38,57,91,.18);max-height:268px;overflow-y:auto}.trainee-suggestions[hidden]{display:none}.trainee-suggestions button{width:100%;display:flex;align-items:center;gap:10px;padding:6px;border:0;border-radius:8px;background:transparent;color:var(--navy);font:800 11px Nunito,sans-serif;text-align:left;cursor:pointer}.trainee-suggestions button:hover,.trainee-suggestions button.is-active{background:#edf9f1;color:#279f59}.trainee-suggestions img{width:34px;height:34px;flex:0 0 34px;border-radius:50%;object-fit:cover;background:#edf3f8}.dark-mode .trainee-suggestions{background:#202b40;border-color:#3b4961;box-shadow:0 14px 32px rgba(0,0,0,.35)}.dark-mode .trainee-suggestions button{color:#dce5f2}.dark-mode .trainee-suggestions button:hover,.dark-mode .trainee-suggestions button.is-active{background:#213a32;color:#6fd394}.dark-mode .trainee-suggestions img{background:#1b2538}

.run-row{grid-template-columns:55px 38px minmax(0,1fr) auto auto}.run-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;object-fit:cover;background:#edf3f8;border:2px solid #fff;box-shadow:0 2px 8px rgba(42,65,101,.13)}.run-avatar-empty{color:#98a5b7;font-size:16px;border-color:#e2e8f0}.dark-mode .run-avatar{background:#27344b;border-color:#3b4961}.dark-mode .run-avatar-empty{color:#8491a6}
.hero-copy .eyebrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile-name-jp{padding-left:8px;border-left:1px solid #b9c6d5;color:#7f8ca2;font-family:Nunito,"Noto Sans JP",sans-serif;font-size:9px;letter-spacing:.5px}.dark-mode .profile-name-jp{border-color:#4a5870;color:#aeb9ca}
#profile-quote .quote-symbol{display:inline-block;font-size:.55em;line-height:1;vertical-align:.16em;margin:0 .04em;color:var(--green2)}
#profile-message{line-height:1.45}#profile-message.is-long{font-size:12px}.hero-copy>#profile-message.is-very-long{font-size:10px;line-height:1.4}
@media(max-width:590px){.hero-feature .hero-copy>#profile-message{display:block;font-size:10px;line-height:1.35;margin-top:10px}.hero-feature .hero-copy>#profile-message.is-very-long{font-size:9px}}
.tp-bottle{display:block;width:27px;height:27px;object-fit:contain}.pay-card .tp-bottle{width:28px;height:28px}.stat-bottle{width:25px;height:25px;filter:drop-shadow(0 2px 3px rgba(75,48,26,.16))}
@media(max-width:590px){.run-row{grid-template-columns:48px 34px minmax(0,1fr) auto}.run-avatar{width:34px;height:34px}.row-actions{grid-column:3/-1}}

/* TP recovery planner and period analytics */
.insights-grid{display:grid;grid-template-columns:430px minmax(0,1fr);gap:18px;margin-top:18px}.tp-planner,.analytics-panel{padding:22px}.insight-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.tp-icon{background:#fff3dd;color:#e99a2f}.chart-icon{background:#eaf1ff;color:#617fca;font-size:17px}.live-pill{display:flex;align-items:center;gap:5px;padding:5px 8px;border-radius:8px;background:#edf9f1;color:#31a961;font:900 8px Nunito,sans-serif;letter-spacing:.7px}.live-pill i{width:6px;height:6px;border-radius:50%;background:#49c879;box-shadow:0 0 0 3px rgba(73,200,121,.15)}.tp-balance-row{display:flex;align-items:center;gap:18px;margin:20px 0 14px}.tp-ring{width:104px;height:104px;flex:0 0 104px;display:grid;place-content:center;text-align:center;border:9px solid #e5f7eb;border-top-color:var(--green);border-radius:50%;background:#fbfefc}.tp-ring strong{font:900 34px/1 "Roboto Condensed",sans-serif}.tp-ring small{margin-top:4px;color:#99a5b5;font-size:8px}.tp-status{display:grid;gap:4px;min-width:0}.tp-status b{font-size:13px}.tp-status span{color:var(--green2);font-size:11px;font-weight:800}.tp-status small{color:#929daf;font-size:9px}.tp-progress{height:8px;position:relative;border-radius:8px;background:#edf2f6;overflow:hidden}.tp-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#59cd82,#7bd99c);transition:width .4s}.tp-progress span{position:absolute;left:30%;top:0;width:2px;height:100%;background:rgba(39,56,93,.25)}.tp-sync{display:grid;grid-template-columns:auto 72px 1fr;align-items:end;gap:8px;margin-top:16px}.tp-sync label{grid-column:1/-1}.tp-sync input{width:72px}.tp-sync button{height:42px;border:1px solid #d3eddd;border-radius:9px;background:#eef9f2;color:#2ca75e;font:900 9px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.tp-note{margin:9px 0 0;color:#9aa5b5;font-size:8px}.period-toggle{display:flex;padding:3px;border-radius:9px;background:#f1f4f8}.period-toggle button{height:27px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:#8a96a8;font:900 8px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.period-toggle button.is-active{background:#fff;color:#34ac64;box-shadow:0 2px 7px rgba(44,68,112,.1)}.analytics-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.analytics-summary>div{padding:10px;border:1px solid #e5eaf1;border-radius:10px;background:#fafcff;min-width:0}.analytics-summary small{display:block;color:#99a5b5;font:900 7px Nunito,sans-serif;letter-spacing:.6px}.analytics-summary strong{display:block;margin-top:4px;font:900 18px/1 "Roboto Condensed",sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-summary strong.negative{color:#df526d}.analytics-chart{height:145px;display:flex;align-items:stretch;gap:5px;padding-top:8px;border-bottom:1px solid #dfe6ef}.chart-column{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;min-width:0}.chart-column i{display:block;width:min(22px,70%);min-height:2px;border-radius:5px 5px 2px 2px;background:linear-gradient(#65d18b,#42b96e);transition:height .35s}.chart-column small{height:14px;color:#99a4b5;font-size:7px;text-transform:uppercase}.chart-legend{display:flex;align-items:center;justify-content:space-between;margin-top:10px;color:#8995a7;font-size:8px}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend span i{width:7px;height:7px;border-radius:2px;background:var(--green)}
.dark-mode .tp-ring{background:#1b2538;border-color:#294c3a;border-top-color:#57ce82}.dark-mode .tp-progress,.dark-mode .period-toggle{background:#172133}.dark-mode .tp-sync button{background:#213a32;border-color:#315744;color:#6fd394}.dark-mode .analytics-summary>div{background:#1b2538;border-color:#354159}.dark-mode .period-toggle button.is-active{background:#2b3850;color:#6fd394}.dark-mode .analytics-chart{border-color:#354159}.dark-mode .live-pill{background:#213a32;color:#6fd394}
@media(max-width:900px){.insights-grid{grid-template-columns:1fr}.analytics-chart{height:160px}}
@media(max-width:590px){.insights-grid{gap:12px;margin-top:12px}.tp-planner,.analytics-panel{padding:16px}.tp-balance-row{gap:13px}.tp-ring{width:88px;height:88px;flex-basis:88px;border-width:7px}.tp-ring strong{font-size:29px}.analytics-summary{grid-template-columns:1fr 1fr}.analytics-chart{height:130px;gap:2px}.chart-column i{width:min(16px,72%)}.period-toggle button{padding:0 7px}.tp-sync{grid-template-columns:72px 1fr}}

/* Start-now run workflow */
.form-panel [hidden],.entry-mode-toggle[hidden]{display:none!important}
.entry-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:17px;padding:4px;border-radius:10px;background:#f0f4f8}.entry-mode-toggle button{height:34px;border:0;border-radius:8px;background:transparent;color:#8794a7;font:900 9px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.entry-mode-toggle button.is-active{background:#fff;color:#32aa62;box-shadow:0 2px 8px rgba(44,68,112,.1)}.running-row{border-color:#f0d9b8;background:linear-gradient(90deg,#fffaf2,#fff)}.running-badge{background:#fff0d8;color:#dc8c26}.run-timer{text-align:right;min-width:66px}.run-timer b{display:block;color:#dc8c26;font:900 17px/1 "Roboto Condensed",sans-serif;font-variant-numeric:tabular-nums}.run-timer small{color:#a99b87;font-size:6px;font-weight:900}.row-action.finish{background:#edf9f1;border-color:#cfecd9;color:#2ca75e}.notification-strip{grid-column:1/-1;display:flex;align-items:center;gap:11px;padding:13px 16px;border:1px solid var(--line);border-radius:13px;background:#fff}.notification-strip>span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#edf9f1;color:#43b970}.notification-strip p{display:grid;flex:1;margin:0}.notification-strip b{font-size:10px}.notification-strip small{font-size:8px;color:#96a2b3}.notification-strip .notification-button,.notification-strip .sound-toggle{height:34px;padding:0 12px;border:1px solid #d7e3ea;border-radius:8px;background:#fff;color:#68768d;font:900 8px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.notification-strip .sound-toggle span{margin-right:4px;font-size:12px}.notification-strip .sound-toggle.is-muted{color:#a0a9b7;background:#f6f8fa}.notification-strip .notification-button.is-enabled{background:#edf9f1;border-color:#d1ecdb;color:#2ea960}.dark-mode .entry-mode-toggle{background:#172133}.dark-mode .entry-mode-toggle button.is-active{background:#2b3850;color:#6fd394}.dark-mode .running-row{background:linear-gradient(90deg,#302a22,#1b2538);border-color:#58482f}.dark-mode .running-badge{background:#4a3924;color:#efb55f}.dark-mode .row-action.finish{background:#213a32;border-color:#315744;color:#6fd394}.dark-mode .notification-strip{background:#202b40;border-color:#33405a}.dark-mode .notification-strip .notification-button,.dark-mode .notification-strip .sound-toggle{background:#263249;border-color:#3b4961;color:#c3cddd}.dark-mode .notification-strip .notification-button.is-enabled{background:#213a32;border-color:#315744;color:#6fd394}.dark-mode .notification-strip .sound-toggle.is-muted{background:#1b2538;color:#8491a6}
@media(max-width:590px){.running-row{grid-template-columns:48px 34px minmax(0,1fr) auto}.run-timer{grid-column:3;text-align:left}.running-row .row-actions{grid-column:4;grid-row:2}.notification-strip{align-items:flex-start;flex-wrap:wrap}.notification-strip p{min-width:180px}.notification-strip .notification-button,.notification-strip .sound-toggle{flex:1}}
.notification-strip .notification-test{height:34px;padding:0 12px;border:1px solid #d9e3f4;border-radius:8px;background:#eef3fc;color:#5e77ad;font:900 8px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.notification-strip .notification-test:disabled{opacity:.72;cursor:wait}.notification-strip .notification-test[hidden]{display:none}.dark-mode .notification-strip .notification-test{background:#283650;border-color:#3c4d6c;color:#acc0ec}
@media(max-width:590px){.notification-strip .notification-test{flex:1}}
.notification-strip .chibi-spawn{height:34px;padding:0 12px;border:1px solid #f1d7e5;border-radius:8px;background:#fff3f8;color:#d1588d;font:900 8px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.notification-strip .chibi-spawn span{margin-right:4px;font-size:12px}.notification-strip .chibi-spawn:hover{transform:translateY(-1px);box-shadow:0 4px 10px rgba(209,88,141,.16)}.dark-mode .notification-strip .chibi-spawn{background:#412b3a;border-color:#614057;color:#f09ac0}
.chibi-stage{position:fixed;inset:0;z-index:1200;pointer-events:none;overflow:hidden}.dancing-chibi{position:absolute;left:var(--chibi-left);bottom:-100px;width:90px;height:90px;filter:drop-shadow(0 7px 5px rgba(28,38,61,.2));animation:chibi-party 7s cubic-bezier(.2,.7,.25,1) forwards}.dancing-chibi img{display:block;width:100%;height:100%;object-fit:contain}.dancing-chibi:nth-child(even){transform:scaleX(-1)}
@keyframes chibi-party{0%{bottom:-100px;translate:0 0;opacity:0}8%{bottom:18px;opacity:1}20%{translate:20px -12px}32%{translate:-15px 0}44%{translate:25px -14px}56%{translate:-12px 0}68%{translate:22px -12px}80%{bottom:18px;translate:var(--chibi-drift) 0;opacity:1}100%{bottom:-110px;translate:var(--chibi-drift) 0;opacity:0}}
@media(max-width:590px){.notification-strip .chibi-spawn{flex:1}.dancing-chibi{width:76px;height:76px}}
@media(prefers-reduced-motion:reduce){.dancing-chibi{animation-duration:4s}.dancing-chibi img{animation:none}}
/* Optional parent-run spark journal */
.spark-journal-section{padding:0;border:0}.spark-journal{display:grid;gap:12px;margin-top:10px;padding:13px;border:1px solid #e1e8f0;border-radius:12px;background:#f9fbfd}.spark-kind-toggle{display:flex;width:max-content;padding:3px;border-radius:9px;background:#edf1f6}.spark-kind-toggle button{height:28px;padding:0 16px;border:0;border-radius:7px;background:transparent;color:#8b97a8;font:900 8px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.spark-kind-toggle button.is-active{background:#fff;color:#9c65ce;box-shadow:0 2px 7px rgba(44,68,112,.1)}.spark-builder{display:grid;grid-template-columns:minmax(0,1fr) 86px 96px;align-items:end;gap:8px}.spark-builder label>span{display:block;margin-bottom:6px;color:#8996a8;font:900 8px Nunito,sans-serif;text-transform:uppercase;letter-spacing:.6px}.spark-search-wrap{position:relative}.spark-search input{width:100%;text-transform:none}.spark-stars select{width:100%;color:#e19728}.add-spark{height:42px;border:0;border-radius:9px;background:linear-gradient(135deg,#ab73d4,#8c5dbe);color:#fff;font:900 8px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.add-spark:disabled{opacity:.42;cursor:not-allowed}.spark-suggestions{position:absolute;z-index:70;top:calc(100% + 5px);left:0;right:0;max-height:280px;padding:5px;border:1px solid #dce4ee;border-radius:11px;background:#fff;box-shadow:0 14px 32px rgba(38,57,91,.2);overflow-y:auto}.spark-suggestions[hidden]{display:none}.spark-suggestions button{width:100%;display:flex;align-items:center;gap:9px;padding:6px;border:0;border-radius:8px;background:transparent;color:var(--navy);text-align:left;cursor:pointer}.spark-suggestions button:hover,.spark-suggestions button.is-active{background:#f5edfb}.spark-suggestions img,.spark-chip>img,.run-sparks img{width:32px;height:32px;flex:0 0 32px;border-radius:7px;object-fit:contain}.spark-suggestions button>span{display:grid;min-width:0}.spark-suggestions b{font:800 10px Nunito,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spark-suggestions small{color:#98a3b3;font-size:8px}.aptitude-icon{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border:2px solid #da76a4;border-radius:50%;background:linear-gradient(145deg,#fff3f8,#f6d9e7);color:#b54479;font:900 14px "Roboto Condensed",sans-serif}.aptitude-distance{border-color:#729ee1;background:linear-gradient(145deg,#f2f7ff,#dce9fb);color:#4776bc}.aptitude-style{border-color:#8a7ad4;background:linear-gradient(145deg,#f6f3ff,#e4defa);color:#6755b6}.spark-list{display:flex;flex-wrap:wrap;gap:7px}.spark-list>p{margin:0;color:#9aa5b5;font-size:9px}.spark-chip{display:flex;align-items:center;gap:7px;max-width:100%;padding:5px 6px;border:1px solid #e2d6ed;border-radius:9px;background:#fff}.spark-chip>span{display:grid;min-width:0}.spark-chip b{max-width:150px;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spark-chip small{color:#99a3b2;font-size:7px}.spark-chip>strong,.run-sparks strong{color:#e7a12e;font-size:9px;letter-spacing:-1px}.spark-chip>button{width:22px;height:22px;padding:0;border:0;border-radius:6px;background:#f4eef8;color:#a17cb8;font-size:14px;cursor:pointer}.run-sparks{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.run-sparks>span{display:flex;align-items:center;gap:4px;max-width:190px;padding:3px 6px 3px 3px;border:1px solid #e6dced;border-radius:7px;background:#faf6fd}.run-sparks img,.run-sparks .aptitude-icon{width:21px;height:21px;flex-basis:21px;border-radius:5px;font-size:9px}.run-sparks b{font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.run-sparks strong{flex:0 0 auto;font-size:7px}.dark-mode .spark-journal{background:#1b2538;border-color:#354159}.dark-mode .spark-kind-toggle{background:#172133}.dark-mode .spark-kind-toggle button.is-active{background:#35415a;color:#d3a8f2}.dark-mode .spark-suggestions,.dark-mode .spark-chip,.dark-mode .run-sparks>span{background:#263249;border-color:#45516a;color:#dce5f2}.dark-mode .spark-suggestions button{color:#dce5f2}.dark-mode .spark-suggestions button:hover,.dark-mode .spark-suggestions button.is-active{background:#392e49}
@media(max-width:590px){.spark-builder{grid-template-columns:minmax(0,1fr) 76px}.add-spark{grid-column:1/-1}.spark-chip{width:100%}.spark-chip>span{flex:1}.spark-chip b{max-width:none}}
.more-sparks{height:29px;padding:0 9px;border:1px dashed #cbb4dc;border-radius:7px;background:#fbf8fd;color:#8e62ad;font:900 7px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.more-sparks:hover{border-style:solid;background:#f4eafb}.spark-history-details{flex:1 0 100%;display:grid;gap:9px;margin-top:4px;padding:10px;border:1px solid #e7ddef;border-radius:10px;background:#fcfafe}.spark-history-details section{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:7px}.spark-history-details section>small{padding-top:7px;color:#9470aa;font:900 7px Nunito,sans-serif;text-transform:uppercase;letter-spacing:.5px}.spark-history-details section>div{display:flex;flex-wrap:wrap;gap:4px}.spark-history-details .history-spark-chip{display:flex;align-items:center;gap:4px;max-width:210px;padding:3px 6px 3px 3px;border:1px solid #e6dced;border-radius:7px;background:#fff}.dark-mode .more-sparks{background:#30273d;border-color:#69547b;color:#d0a9e7}.dark-mode .spark-history-details{background:#1b2538;border-color:#414c63}.dark-mode .spark-history-details .history-spark-chip{background:#263249;border-color:#45516a;color:#dce5f2}
@media(max-width:590px){.spark-history-details section{grid-template-columns:1fr}.spark-history-details section>small{padding-top:0}.spark-history-details .history-spark-chip{max-width:100%}}
/* Persistent parent library */
.parent-library{margin-top:18px;padding:22px}.library-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.library-icon{background:#f4ecfb;color:#9764bd}.library-count{padding:6px 9px;border-radius:8px;background:#f5eefb;color:#9062b2;font:900 8px Nunito,sans-serif;text-transform:uppercase}.library-tools{display:flex;align-items:center;gap:12px;margin:18px 0 14px}.library-search{position:relative;flex:1}.library-search>span{position:absolute;left:13px;top:7px;color:#8794a7;font-size:22px}.library-search input{width:100%;height:42px;padding-left:40px;text-transform:none;font-size:11px}.library-filters{display:flex;padding:3px;border-radius:9px;background:#f0f3f7}.library-filters button{height:30px;padding:0 11px;border:0;border-radius:7px;background:transparent;color:#8995a7;font:900 7px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.library-filters button.is-active{background:#fff;color:#9462b8;box-shadow:0 2px 7px rgba(44,68,112,.1)}.parent-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.parent-card{min-width:0;padding:13px;border:1px solid #e2e7ef;border-radius:13px;background:linear-gradient(145deg,#fff,#fbf9fd)}.parent-card>header{display:flex;align-items:center;gap:10px}.parent-card>header>img{width:56px;height:56px;flex:0 0 56px;border:2px solid #fff;border-radius:50%;object-fit:cover;background:#edf3f8;box-shadow:0 3px 10px rgba(47,61,91,.13)}.parent-card>header>div{display:grid;min-width:0;flex:1}.parent-card>header small{color:#9ca6b5;font-size:7px}.parent-card h3{margin:2px 0 1px;font:900 15px/1.1 "Roboto Condensed",sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parent-card>header span{color:#9264b4;font-size:8px;font-weight:800}.parent-card>header>button{align-self:flex-start;width:25px;height:25px;border:0;border-radius:7px;background:#f5eef8;color:#a77db6;font-size:15px;cursor:pointer}.parent-card-sparks{display:flex;flex-wrap:wrap;gap:4px;margin-top:11px}.parent-card-sparks .history-spark-chip{display:flex;align-items:center;gap:4px;max-width:100%;padding:3px 6px 3px 3px;border:1px solid #e7ddef;border-radius:7px;background:#fff}.parent-card-sparks img,.parent-card-sparks .aptitude-icon{width:23px;height:23px;flex:0 0 23px;border-radius:5px;font-size:9px}.parent-card-sparks b{min-width:0;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parent-card-sparks strong{flex:0 0 auto;color:#e7a12e;font-size:7px;letter-spacing:-1px}.library-expand{height:31px;padding:0 9px;border:1px dashed #cbb4dc;border-radius:7px;background:#faf7fc;color:#9167ac;font:900 7px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.parent-note{margin:9px 0 0;padding-top:8px;border-top:1px solid #e9e5ed;color:#8792a3;font-size:8px;line-height:1.4}.library-empty{grid-column:1/-1;display:grid;justify-items:center;padding:34px;border:1px dashed #dce3ec;border-radius:13px;color:#96a1b1;text-align:center}.library-empty span{font-size:27px;color:#b494c9}.library-empty b{margin-top:5px;font-size:11px;color:var(--navy)}.library-empty p{margin:3px 0 0;font-size:9px}.row-action.save-parent{background:#f5eefb;border-color:#dfcfeb;color:#9061b1}.row-action.save-parent.is-saved{background:#edf9f1;border-color:#d0ebda;color:#38a866;opacity:1}.dark-mode .parent-library{background:#202b40}.dark-mode .library-count{background:#392e49;color:#d4adee}.dark-mode .library-search input,.dark-mode .parent-card{background:#1b2538;border-color:#354159;color:#dce5f2}.dark-mode .library-filters{background:#172133}.dark-mode .library-filters button.is-active{background:#35415a;color:#d3a8f2}.dark-mode .parent-card-sparks .history-spark-chip{background:#263249;border-color:#45516a;color:#dce5f2}.dark-mode .parent-note{border-color:#39445a}.dark-mode .library-empty{border-color:#414d63}.dark-mode .library-empty b{color:#dce5f2}
@media(max-width:1000px){.parent-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.parent-library{margin-top:12px;padding:16px}.library-tools{align-items:stretch;flex-direction:column}.library-filters{overflow-x:auto}.library-filters button{flex:1}.parent-library-grid{grid-template-columns:1fr}}
.insights-grid>.parent-library{grid-column:1/-1;margin-top:0}
.parent-card-actions{align-self:flex-start;display:flex;align-items:center;gap:5px}.parent-card-actions>button{height:25px;padding:0 8px;border:0;border-radius:7px;background:#f5eef8;color:#9469aa;font:900 7px Nunito,sans-serif;text-transform:uppercase;cursor:pointer}.parent-card-actions>button:last-child{width:25px;padding:0;font-size:15px}.parent-card-actions>.share-parent{border:1px solid #d8e8df;background:#edf9f1;color:#36a866}.parent-card-actions>.share-parent:disabled{opacity:.65;cursor:wait}.dark-mode .parent-card-actions>button{background:#392e49;color:#d6b8e8}.dark-mode .parent-card-actions>.share-parent{background:#213a32;border-color:#315744;color:#72d599}
.stat-spark-icon{border-color:#6e9dcc;background:linear-gradient(145deg,#f2f8ff,#d9eafb);color:#3976ad}.stat-speed{border-color:#62a5d5;color:#287ab7}.stat-stamina{border-color:#e47a8b;background:linear-gradient(145deg,#fff4f5,#f8dce1);color:#c94d64}.stat-power{border-color:#e9a25b;background:linear-gradient(145deg,#fff8ef,#f8e4ca);color:#c97827}.stat-guts{border-color:#d67ac4;background:linear-gradient(145deg,#fff3fc,#f3d8ed);color:#b54aa0}.stat-wit{border-color:#6fbd8b;background:linear-gradient(145deg,#f1fff5,#d9f1e1);color:#39965a}
.library-search-suggestions{position:absolute;z-index:80;top:calc(100% + 5px);left:0;right:0;max-height:290px;padding:5px;border:1px solid #dce4ee;border-radius:11px;background:#fff;box-shadow:0 14px 32px rgba(38,57,91,.2);overflow-y:auto}.library-search-suggestions[hidden]{display:none}.library-search-suggestions button{width:100%;display:flex;align-items:center;gap:9px;padding:6px;border:0;border-radius:8px;background:transparent;color:var(--navy);text-align:left;cursor:pointer}.library-search-suggestions button:hover,.library-search-suggestions button.is-active{background:#f5edfb}.library-search-suggestions img,.library-search-suggestions .aptitude-icon{width:32px;height:32px;flex:0 0 32px;border-radius:7px;font-size:11px}.library-search-suggestions button>span{position:static;display:grid;color:inherit;font-size:inherit}.library-search-suggestions b{font:800 10px Nunito,sans-serif}.library-search-suggestions small{color:#98a3b3;font-size:8px}.library-search-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.library-search-chips:empty{display:none}.library-search-chips>span{display:flex;align-items:center;gap:5px;max-width:220px;padding:3px 4px 3px 3px;border:1px solid #decce9;border-radius:8px;background:#f8f1fc;color:#80549f}.library-search-chips img,.library-search-chips .aptitude-icon{width:24px;height:24px;flex:0 0 24px;border-radius:6px;font-size:9px}.library-search-chips b{min-width:0;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-search-chips button{width:20px;height:20px;padding:0;border:0;border-radius:5px;background:#eadcf2;color:#8d62a8;font-size:13px;cursor:pointer}.dark-mode .library-search-suggestions{background:#263249;border-color:#45516a}.dark-mode .library-search-suggestions button{color:#dce5f2}.dark-mode .library-search-suggestions button:hover,.dark-mode .library-search-suggestions button.is-active{background:#392e49}.dark-mode .library-search-chips>span{background:#392e49;border-color:#59466b;color:#d7b5eb}.dark-mode .library-search-chips button{background:#4b3a5b;color:#dfc5ee}
.half-tp-toggle{display:flex;align-items:center;gap:10px;margin-top:17px;padding:11px 12px;border:1px solid #f0dfbe;border-radius:11px;background:#fffaf0;cursor:pointer;text-transform:none;letter-spacing:0}.half-tp-toggle>input{position:absolute;opacity:0}.half-tp-toggle>span:last-child{display:grid}.half-tp-toggle b{color:#c77c1d;font-size:11px}.half-tp-toggle small{color:#9c8c75;font-size:8px}.half-tp-toggle input:checked+.toggle-track{background:#eea33f}.half-tp-toggle input:checked+.toggle-track i{transform:translateX(15px)}.dark-mode .half-tp-toggle{background:#352d21;border-color:#59462b}.dark-mode .half-tp-toggle b{color:#f0b65f}.dark-mode .half-tp-toggle small{color:#b9a990}
.parent-card>header>.parent-card-actions{display:flex;flex:0 0 auto;align-self:flex-start;align-items:center;gap:5px}.parent-card-actions>.share-parent{width:25px;padding:0;font-size:15px;line-height:1;text-transform:none}
.backup-actions>.clear-all-data{background:#fff4f5;border-color:#f0cfd5;color:#c44d62}.backup-actions>.clear-all-data:hover{border-color:#dc6578;color:#b83c52}.dark-mode .backup-actions>.clear-all-data{background:#3b2630;border-color:#633b49;color:#f18aa0}
