:root{color-scheme:dark;--green:#f5f3ff;--paper:#08080d;--muted:#9a97ac;--accent:#bcb4ff}body{background:#101018;color:#f5f3ff}.app{background-color:#08080d;background-image:radial-gradient(#a6a2d912 .8px,transparent .8px);background-size:12px 12px;position:relative;padding:25px 22px 125px;isolation:isolate;overflow:hidden}header{border:0;margin-bottom:28px;padding-bottom:0}.brand{font-weight:500;color:#eeeaff;letter-spacing:-.5px}.brand i{display:flex;background:#ffffff0a;color:#b7b0ea;width:30px;height:30px;margin-right:8px;border-radius:10px}.header-icon{background:#ffffff09;border:1px solid #ffffff0c;color:#c9c4e0;width:40px;height:40px}.topdate{text-align:left;color:#8c889e;font-size:11px;letter-spacing:.4px;margin:0 0 18px 3px}.hero{min-height:355px;position:relative;isolation:isolate;overflow:hidden;border-radius:38px;padding:27px 24px 24px;background:linear-gradient(155deg,#241629d9,#0d0c1ce8 70%);border:1px solid #e8c6ff40;box-shadow:inset 0 2px 25px #e7b8ff30,inset 0 -8px 28px #8973ff25,0 20px 65px #0006;text-align:center}.hero:after{content:'';display:block;position:absolute;z-index:-1;inset:0;border-radius:inherit;background:linear-gradient(145deg,#e79fdc25,transparent 40%,#a48dff15);pointer-events:none}.hero-head{justify-content:space-between;position:relative}.hero-label{font-size:13px;color:#e5d9f2;font-weight:400;letter-spacing:.5px}.hero .eye{position:static;color:#c2afd2;min-height:28px;min-width:28px}.money{font-size:clamp(43px,14vw,65px);line-height:1.2;font-weight:450;letter-spacing:-2.5px;color:white;margin:42px -9px 15px;text-shadow:0 0 30px #f4deff25;position:relative;z-index:2}.money small{font-size:25px;color:#dad1e5;letter-spacing:0;font-weight:300;margin-right:8px}.hero .sub{color:#b6a4c5;font-size:10px}.earning-meta{position:relative;z-index:2}.status{color:#e1cfe8;font-size:10px}.dot{background:#e7ceff;box-shadow:0 0 9px #d9b1ff}.hero .line{position:relative;z-index:2;margin-top:51px;background:#ffffff13;height:2px}.line span{background:#e0c4ff;box-shadow:0 0 12px #d4a1ff}.micro{color:#bba7ca;font-size:9px;position:relative;z-index:2}.aurora{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;border-radius:inherit}.aurora i{position:absolute;display:block;width:95%;height:70%;border-radius:50%;filter:blur(35px);will-change:transform,opacity;opacity:.45}.aurora .a1{background:radial-gradient(ellipse,#ea8dd8,transparent 68%);left:-25%;top:-43%;animation:driftA 14s ease-in-out infinite alternate}.aurora .a2{background:radial-gradient(ellipse,#6c5be9,transparent 68%);right:-40%;bottom:-42%;animation:driftB 17s ease-in-out infinite alternate}.aurora .a3{background:radial-gradient(ellipse,#9a84ff90,transparent 65%);left:20%;top:28%;width:75%;height:70%;opacity:.15;animation:driftC 12s ease-in-out infinite alternate}.income-wave{position:absolute;left:var(--wave-x,50%);top:var(--wave-y,50%);width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,#e4b6ff25, #ad8dff12 30%,transparent 69%);transform:translate(-50%,-50%) scale(.3);opacity:0;pointer-events:none}.income-wave.active{animation:incomeWave 1.6s ease-out forwards}.orbital{position:absolute;bottom:30px;left:50%;width:210px;height:105px;transform:translateX(-50%);border:1px dotted #ebd2ff18;border-radius:50%;z-index:-1}.orbital:before,.orbital:after{content:'';position:absolute;inset:0 35px;border:1px dotted #ebd2ff20;border-radius:50%}.orbital:after{inset:-20px 72px;transform:rotate(70deg)}.orbital b{position:absolute;width:3px;height:3px;background:#eddbff;border-radius:50%;box-shadow:0 0 10px #eedbff;top:15px;left:28px}.orbital b:nth-child(2){top:60px;left:172px}.orbital b:nth-child(3){top:90px;left:83px}.primary{background:#dcd4ff;color:#171025;border:1px solid #f3edff30;box-shadow:0 5px 25px #a18cff18;font-weight:500}.primary:hover{background:#e9e3ff}.clock-action{width:100%;margin-top:17px;border-radius:22px;height:54px;background:linear-gradient(120deg,#dbd1ff,#c1b7f3);color:#201a34}.clock-action .action-arrow{display:block;margin-left:auto}.clock-action .action-label{margin-right:auto}.hint{color:#93899f;margin:13px 0 26px;font-size:10px}.grid{gap:12px;padding:0;border:0}.grid .card{border:1px solid #ffffff12!important;border-radius:24px;background:linear-gradient(145deg,#1a1823,#0b0b12 75%);padding:21px 17px!important;text-align:left;min-height:155px;box-shadow:inset 0 1px 0 #ffffff08}.grid .card:last-child{background:radial-gradient(ellipse at 90% 110%,#332a7c70,transparent 75%),#10101a}.grid .card>.sub{color:#b4acc4;font-size:11px}.metric-icon{display:block;color:#8d80bd;width:17px;height:17px;margin-bottom:17px}.value{color:#f2eeff;font-size:27px;font-weight:400;letter-spacing:-1px;margin:12px 0 9px}.value small{color:#a197b6;font-size:9px}.eyebrow{color:#91859e;font-size:9px}.section{color:#e6e0f2;font-size:16px;margin:28px 0 10px;font-weight:500}.link,a{color:#b4a5ed}.entry{border-color:#ffffff0c}.entry .title{color:#dcd5e9;font-size:12px}.entry .sub{color:#94879e}.entry .amount{color:#e9e1f7;font-size:22px}.entry .amount small{color:#a99abc}.pill{background:#a98aff15;color:#c5afe9}.empty{background:#ffffff04;border:1px solid #ffffff09;color:#887e98;border-radius:22px}.empty svg{color:#6f6087}.privacy{color:#8d829c;font-size:9px}.nav{background:#101017e8;border-color:#ffffff0d;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);padding-top:17px}.nav button{color:#80788f}.nav .active{color:#e2d5ff}.nav .active svg{background:#c3a7ff0d;box-shadow:0 0 0 7px #c3a7ff0d;border-radius:7px}.nav svg{stroke-width:1.5}h1{color:#eee7fa;font-size:29px;font-weight:500}.page-sub{color:#998ba9}.card,.month-card{background:radial-gradient(ellipse at top right,#4f428660,transparent 80%),#14121e;color:#ddd3ed;border:1px solid #c4a2ff20;border-radius:28px}.month-card{box-shadow:inset 0 1px 18px #b7a3ff15;text-align:left}.month-card>.row{justify-content:space-between}.month-card>.row>span{color:#c8bbd8;font-size:12px}.month-card .eye{position:static;color:#baaae2!important}.month-card .value{color:#f0e8ff;font-weight:400}.month-card .sub{color:#9d8fb4}.bar{color:#9686aa}.bar i{background:linear-gradient(#9e8add60,#54498030);border-radius:6px 6px 1px 1px}.bar.today i{background:linear-gradient(#e1c8ff,#8069c9)}.week{border-color:#ffffff10}.settings-disclosure,.secondary{background:#17131f;border:1px solid #ffffff0b;color:#d1c1e6}.settings-disclosure .note{border-color:#ffffff0b;color:#a697b9}.note{background:#17131f;color:#a697b9}.disclosure-plus,.secondary:after{color:#a18cb9}label{color:#b3a0c8}#salary{color:#f5ecff;border-color:#ffffff18}input{background:#1b1525;border-color:#ffffff15;color:#e9ddf9}input:focus{border-color:#b7a0e6;box-shadow:0 0 0 3px #b7a0e618}.settings-privacy{color:#9888a8}.secondary.danger{color:#d898aa}dialog{background:#100d18;color:#ebdff9;border:1px solid #c1a1e52b;box-shadow:0 20px 90px #0008}dialog::backdrop{background:#0009}dialog .sub{color:#9d8cae}.toast{background:#30243eee;border:1px solid #c3a4e320;color:#f1e4ff}.app main{animation:appear .35s ease-out}@keyframes driftA{to{transform:translate(70px,60px) rotate(25deg);opacity:.7}}@keyframes driftB{to{transform:translate(-65px,-45px) rotate(-20deg);opacity:.65}}@keyframes driftC{to{transform:translate(-40px,25px) scale(1.2);opacity:.28}}@keyframes incomeWave{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}25%{opacity:.85}100%{opacity:0;transform:translate(-50%,-50%) scale(2.3)}}@media(min-width:600px){.app{box-shadow:0 30px 100px #0006;border:1px solid #ffffff0c}}@media(prefers-reduced-motion:reduce){.aurora i,.income-wave.active{animation:none!important}.aurora .a1{opacity:.5}.income-wave{display:none}}
.hero:after{width:auto;height:auto;inset:0;border:0;box-shadow:none;opacity:1}.aurora i{border:0;box-shadow:none}.app{background-image:radial-gradient(circle,#aaa0db15 .7px,transparent .9px)}
/* Coordinated region colors: berry / iris / ember */
.hero{background:linear-gradient(160deg,#30172ddc,#160d1eea 65%,#201026);border-color:#df9ac344;box-shadow:inset 0 3px 26px #efb2d337,inset 0 -9px 30px #cc6ea62b,0 20px 65px #0006}.hero:after{background:linear-gradient(145deg,#ee9bc527,transparent 45%,#be6b9f17)}.aurora .a1{background:radial-gradient(ellipse,#ec94c7,transparent 68%)}.aurora .a2{background:radial-gradient(ellipse,#a9509f,transparent 68%)}.aurora .a3{background:radial-gradient(ellipse,#c793dd90,transparent 65%)}.line span{background:#edc3de;box-shadow:0 0 12px #e5a1cb}.hero .dot{background:#f0c5df;box-shadow:0 0 9px #eaa5cf}.hero-label{color:#efdaea}.hero .sub,.hero .micro{color:#c7a9bf}.orbital,.orbital:before,.orbital:after{border-color:#edc5df24}.orbital b{background:#f5d2e7;box-shadow:0 0 10px #f5c4df}.clock-action{background:linear-gradient(115deg,#e2d3e9,#cfc8ed);border-color:#f2e8ff35;color:#2a2038;box-shadow:0 6px 28px #b290d014}.clock-action:hover{background:linear-gradient(115deg,#ece0f1,#dcd5f7)}
.grid .card:first-child{background:radial-gradient(ellipse at 95% 105%,#5554bf8a,transparent 74%),linear-gradient(145deg,#171a3b,#0c0d1e 75%);border-color:#8d8ad835!important;box-shadow:inset 0 1px 17px #a6a0f313,inset 0 -2px 18px #4e46c224}.grid .card:first-child>.sub{color:#c3c4e7}.grid .card:first-child .metric-icon{color:#a2a1e4}.grid .card:first-child .eyebrow,.grid .card:first-child .value small{color:#a09fc1}.grid .card:first-child .value{color:#efefff}.grid .card:last-child{background:radial-gradient(ellipse at 100% 115%,#b75c3a9c,transparent 76%),linear-gradient(145deg,#30201e,#170f12 75%);border-color:#d08c6235!important;box-shadow:inset 0 1px 17px #f0ba8d10,inset 0 -2px 18px #b05f3524}.grid .card:last-child>.sub{color:#e6c6b7}.grid .card:last-child .metric-icon{color:#d6a081}.grid .card:last-child .eyebrow,.grid .card:last-child .value small{color:#b89a8e}.grid .card:last-child .value{color:#fff0e8}.month-card{background:radial-gradient(ellipse at 95% 0%,#b66b3b58,transparent 75%),linear-gradient(145deg,#281c1b,#140f16);border-color:#c08f692c;box-shadow:inset 0 1px 24px #d5a06a14}.month-card>.row>span{color:#dfc5b7}.month-card .value{color:#fff0e5}.month-card .sub{color:#ba9d8f}.month-card .eye{color:#d9b59c!important}.bar i{background:linear-gradient(#9396e180,#46488240)}.bar.today i{background:linear-gradient(#c8cbff,#7273cb)}.bar.today{color:#ceceee}.entry .pill{background:#c58aac16;color:#d9a5c3}.settings-disclosure{background:linear-gradient(120deg,#181620,#15151f)}#salary{color:#f2e8e0}.nav .active{color:#dbd7f5}.nav .active svg{background:#c0b9e80d;box-shadow:0 0 0 7px #c0b9e80d}
/* Readable type scale: amount → metric → section → label → detail */
body{font-size:15px}.brand{font-size:21px;font-weight:600}.topdate{font-size:14px;line-height:1.5;letter-spacing:0;color:#aaa1b8;margin-bottom:18px}.hero{padding:25px 24px 26px;min-height:360px}.hero-label{font-size:17px;font-weight:500;letter-spacing:0}.hero .eye{font-size:13px;gap:6px;min-height:36px;min-width:44px}.hero .eye svg{width:17px;height:17px}.money{font-size:clamp(48px,14vw,68px);font-weight:500;letter-spacing:-2px;margin:37px -8px 17px;line-height:1.2}.money small{font-size:29px}.status,.hero .sub{font-size:13px;line-height:1.5}.hero .sub{color:#bfaec7}.earning-meta{gap:8px;flex-wrap:wrap}.hero .line{margin-top:36px;margin-bottom:15px}.micro{font-size:12px;line-height:1.6;color:#c6b2cb;gap:8px}.clock-action{font-size:17px;min-height:58px;border-radius:21px}.clock-action svg{width:20px;height:20px}.hint{font-size:13px;line-height:1.65;margin:14px 0 25px;color:#a399af}.grid .card{padding:22px 18px!important;min-height:180px}.metric-icon{width:20px;height:20px;margin-bottom:17px}.grid .card>.sub{font-size:14px;font-weight:500;line-height:1.5}.value{font-size:33px;letter-spacing:-1px;line-height:1.3;margin:13px 0 11px;font-weight:500}.value small{font-size:12px;font-weight:400;letter-spacing:0}.eyebrow{font-size:12px;line-height:1.6;letter-spacing:0}.section{font-size:21px;font-weight:550;line-height:1.4;margin:30px 0 12px;letter-spacing:-.4px}.link{font-size:14px;min-height:44px}.entry{padding:18px 0}.entry .title{font-size:16px;font-weight:500}.entry .sub{font-size:13px;line-height:1.65;margin-top:8px;color:#ab9bb8}.entry .amount{font-size:27px}.entry .amount small{font-size:13px}.pill{font-size:12px;padding:4px 7px}.privacy{font-size:12px;line-height:1.7;color:#a294af}.empty{font-size:14px;padding:30px 15px}.empty svg{width:28px;height:28px}.nav button{font-size:12px;gap:7px}.nav svg{width:23px;height:23px}.nav{padding-top:18px}.app{padding-bottom:140px}h1{font-size:32px;line-height:1.2;font-weight:550}.page-sub{font-size:15px;line-height:1.5}.sub{font-size:14px;line-height:1.65;color:#ad9cbb}.month-card>.row>span{font-size:16px;font-weight:500}.month-card .value{font-size:48px;margin:23px 0 14px}.month-card .sub{font-size:14px}.month-card .eye{font-size:14px;min-height:44px}.bar{font-size:12px}.week{height:175px;gap:10px}.note,.settings-disclosure .note{font-size:14px;line-height:1.9}.settings-disclosure summary{font-size:16px;padding:21px}.settings-privacy{font-size:13px;line-height:1.8}.secondary{font-size:16px;min-height:58px}.primary{font-size:17px}label{font-size:15px;line-height:1.5}#salary{font-size:48px}.toast{font-size:14px}dialog h2{font-size:23px}dialog .sub{font-size:14px}.hero .money #liveMoney{white-space:nowrap}.grid .value{white-space:normal}.grid .value small{white-space:nowrap}@media(max-width:390px){.app{padding-left:18px;padding-right:18px}.hero{padding-left:20px;padding-right:20px}.grid{gap:10px}.grid .card{padding:20px 13px!important}.grid .value{font-size:29px}.grid .value small{font-size:11px}.grid .card>.sub{font-size:13px}.eyebrow{font-size:11px}.micro{font-size:11px}.money{font-size:clamp(43px,14vw,58px)}}
/* Shared button shape across every page and dialog. */
:root{--button-radius:20px}button,.primary,.clock-action,.secondary,dialog .primary,dialog .secondary,.header-icon,.hero .eye,.month-card .eye,.nav button{border-radius:var(--button-radius)}
.calendar-heading{margin-bottom:20px}.calendar-heading h1{margin:0}.calendar-panel{background:radial-gradient(ellipse at 80% 0%,#5d4b862b,transparent 70%),#13101c;border:1px solid #c2a7e51c;border-radius:28px;padding:18px 12px}.calendar-controls{padding:0 5px 19px}.calendar-controls h2{font-size:20px;font-weight:500;margin:0}.calendar-step{font-size:28px;line-height:1;width:44px;height:44px;background:#ffffff08;color:#dacef3;border:1px solid #ffffff0d}.calendar-step:disabled{opacity:.23;cursor:default}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekdays span{text-align:center;color:#9d8eaf;font-size:13px;padding:0 0 12px}.calendar-day{min-width:0;min-height:64px;padding:8px 0;background:transparent;color:#d8cde4;display:flex;align-items:center;flex-direction:column;gap:8px;border:1px solid transparent;border-radius:15px;font-size:16px;font-variant-numeric:tabular-nums}.calendar-day small{font-size:11px;line-height:1;color:#8f809f}.calendar-day.has-hours{background:#7661a821}.calendar-day.has-hours small{color:#d3b9ef}.calendar-day.is-today>span{color:#eed5fb;text-decoration:underline;text-underline-offset:5px}.calendar-day.selected{border-color:#c3a0eb8a;background:#a780d735;box-shadow:inset 0 0 17px #c498ed10}.calendar-day:disabled{color:#51495c;opacity:.45;cursor:default}.calendar-day:disabled:active{transform:none}.calendar-summary{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #ffffff0c;margin:17px 5px 0;padding-top:19px;font-size:13px;color:#ab9ab9}.calendar-summary strong{font-size:20px;font-weight:500;color:#e8d9f6;margin:0 3px}.calendar-legend{margin:8px 3px 0;font-size:12px;color:#9c8ba9}.calendar-legend .link{white-space:nowrap}@media(max-width:370px){.calendar-grid,.calendar-weekdays{gap:2px}.calendar-panel{padding:16px 8px}.calendar-day{font-size:15px;min-height:59px}.calendar-summary{font-size:12px}.calendar-summary strong{font-size:18px}}
