:root{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#202a34;background:#f5f6f8;--line:#dfe4e9;--ink:#202a34;--accent:#4757d6;--muted:#657181}*{box-sizing:border-box}body{margin:0}header{max-width:1160px;margin:auto;padding:26px 24px 18px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{font-size:29px;font-weight:750;letter-spacing:-1.1px;text-decoration:none;color:var(--ink)}.brand span{display:block;font-size:12px;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:4px}.wallet{padding:11px 17px;background:#e9ecff;border-radius:12px;white-space:nowrap}.wallet strong{font-size:23px;color:var(--accent)}nav{position:sticky;top:0;z-index:5;display:flex;gap:5px;padding:10px max(20px,calc((100vw - 1112px)/2));background:#f5f6f8f5;border-bottom:1px solid var(--line);overflow:auto;backdrop-filter:blur(12px)}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:9px 13px;min-height:39px}button:hover{border-color:#9ba5d6;background:#f1f3ff}button:disabled{opacity:.45;cursor:default}button.primary,nav button.active{background:var(--accent);color:#fff;border-color:var(--accent)}nav button{white-space:nowrap;background:transparent;border-color:transparent}button.link{border:0;background:transparent;color:var(--accent);padding:5px;min-height:28px}button.danger{color:#a23737}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8995ef;outline-offset:2px}main{max-width:1160px;padding:25px 24px 70px;margin:auto}.page-title,.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}h1{font-size:25px;margin:0 0 5px;letter-spacing:-.6px}h2{font-size:18px;margin:0 0 14px}h3{font-size:15px;margin:0 0 6px}p{line-height:1.5;margin:7px 0}.muted,small{color:var(--muted);line-height:1.5}.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;margin:16px 0}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.stat strong{font-size:23px;display:block;margin:7px 0}.pill{display:inline-block;font-size:12px;border-radius:7px;background:#edf0f4;padding:4px 8px}.warn{background:#fff3db;color:#795215}.danger-note{background:#fff1ee;border-left:3px solid #cf7660;padding:12px 15px}.toolbar{display:flex;gap:9px;flex-wrap:wrap;margin:17px 0}.toolbar input{flex:1;min-width:150px}.task{border-top:1px solid var(--line);padding:14px 0;display:grid;grid-template-columns:1fr auto;gap:15px}.task:first-child{border-top:0}.task.done h3{text-decoration:line-through;color:var(--muted)}.task-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.task p{font-size:13px;max-width:700px;white-space:pre-wrap}.task small{display:block}.focus{border-color:#b4bce8;background:#f2f3ff}.clock{font-size:37px;letter-spacing:1px;font-variant-numeric:tabular-nums}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid .panel{margin:0}.zone{border-top:1px solid var(--line);padding:16px 0}.zone:first-child{border-top:0}.zone-fields{display:grid;grid-template-columns:1fr 2fr;gap:12px}.zone small{display:block;margin-top:6px}input,select,textarea{width:100%;border:1px solid #ccd3dc;border-radius:8px;padding:10px;background:#fff;color:var(--ink)}input[type=checkbox]{width:auto;margin-right:8px}label{display:block;font-size:13px;line-height:1.5;margin:12px 0}label input,label select,label textarea{margin-top:5px}textarea{min-height:90px;resize:vertical}details{border-top:1px solid var(--line);padding:12px 0;margin-top:10px}summary{cursor:pointer;color:#414c65;font-weight:600}code{background:#edf0f6;padding:2px 4px;border-radius:4px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f6f8;padding:14px;border-radius:9px;font-size:12px;max-height:340px;overflow:auto}.empty{padding:26px 0;color:var(--muted)}.reward-price{font-size:26px;color:var(--accent);font-weight:700}.ledger{display:grid;grid-template-columns:1fr auto;gap:16px;border-top:1px solid var(--line);padding:12px 0}.ledger small{display:block}.positive{color:#28705b}.negative{color:#9a4545}dialog{border:1px solid var(--line);border-radius:15px;padding:24px;width:min(600px,94vw);max-height:90vh;overflow:auto}dialog::backdrop{background:#17203375}footer{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);max-width:90vw;padding:13px 20px;border-radius:10px;background:#202a34;color:#fff;z-index:20}#storage-error{margin:15px auto;max-width:1100px;padding:15px;background:#ffe1de;white-space:pre-wrap}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar button{padding:9px 5px;text-align:left;font-size:12px}.calendar button.active{background:#e9ecff;border-color:var(--accent)}.queue-row{display:flex;gap:8px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.queue-row span{flex:1}.source{font-size:12px;color:var(--muted)}a{color:var(--accent)}[hidden]{display:none!important}@media(max-width:700px){header{padding:18px 15px}.brand span{max-width:175px;font-size:11px}main{padding:20px 15px 65px}nav{padding:8px 10px}.summary{grid-template-columns:1fr}.stat{padding:12px}.stat strong{font-size:21px}.grid{grid-template-columns:1fr}.zone-fields{grid-template-columns:1fr}.task{grid-template-columns:1fr}.task-actions{justify-content:flex-start}.panel{padding:16px}.calendar button small{display:none}.wallet{padding:8px 12px}.wallet strong{font-size:20px}}

/* Restored from the original Rytm visual system; the v3 domain model is unchanged. */
:root{--bg:#100f19;--side:#151420;--panel:#1b1929;--panel-2:#221f34;--line:#343044;--ink:#f7f4ff;--muted:#aaa6bf;--muted2:#817d98;--accent:#c5a4ff;--accent-bright:#d5baff;--accent-dark:#433560;--peach:#ffc6a6;--mint:#a9d6b8;--gold:#ffd88c;--shadow:0 14px 46px rgba(0,0,0,.19);--radius:23px;color-scheme:dark}
:root[data-theme="peach"]{--accent:#ffb894;--accent-bright:#ffd2b9;--accent-dark:#68423e;--peach:#ffc2aa}
:root[data-theme="mint"]{--accent:#a5e5c2;--accent-bright:#c8f4d9;--accent-dark:#2b5649;--peach:#ffd3ad}
body{background:var(--bg);color:var(--ink);font-family:'Manrope','DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
.app-layout{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}.workspace{min-width:0}
.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:34px 19px 24px 25px;background:var(--side);border-right:1px solid #2c2938;z-index:9}
.logo{display:flex;align-items:center;gap:12px;padding:0 6px;text-decoration:none;color:var(--ink)}
.brand-symbol{width:40px;height:40px;position:relative;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#e1c5ff,var(--accent) 65%,#8c70cb);color:#241a35;font-size:25px;font-weight:900;line-height:1;box-shadow:0 7px 23px #a47fd633}
.brand-symbol:after{content:'';position:absolute;width:10px;height:10px;border:2px solid var(--side);background:var(--peach);border-radius:50%;right:-3px;top:-4px}
.brand-title{display:block;font-size:21px;line-height:1.15;font-weight:800;letter-spacing:-.9px}.brand-sub{display:block;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted2);margin-top:5px;font-weight:700}.nav-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#79758c;margin:47px 13px 12px;font-weight:800}
.sidebar nav{position:static;display:flex;flex-direction:column;gap:5px;padding:0;border:0;background:none;overflow:visible;backdrop-filter:none}.sidebar nav button{display:flex;align-items:center;gap:13px;text-align:left;border:1px solid transparent;color:#a7a2b8;background:transparent;border-radius:13px;padding:12px 14px;font-size:13px;font-weight:700}.sidebar nav button:hover{background:#211e30;color:#fff}.sidebar nav button.active{background:#302842;color:#e8d7ff;border-color:#4d3a67}.nav-icon{width:20px;display:inline-block;text-align:center;font-size:20px;line-height:1;color:var(--accent)}.side-spacer{flex:1}.side-note{font-size:11px;color:var(--muted2);padding:12px 7px}
header{max-width:1550px;padding:36px 36px 0;margin:0 auto 22px}.header-caption p{font-size:12px;color:var(--muted);margin:5px 0 0}.eyebrow{font-size:10px;font-weight:800;color:var(--accent);letter-spacing:.16em;text-transform:uppercase}
.wallet{display:flex;align-items:center;gap:9px;background:#252133;border:1px solid #514565;border-radius:30px;padding:8px 14px 8px 8px;color:#fce9ca;font-weight:800;font-variant-numeric:tabular-nums}.wallet strong{font-size:17px;color:#fce9ca}.wallet>span:last-child{font-size:10px;font-weight:600;color:#bcb0bd}
.coin{width:30px;height:30px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;border:2px solid #e5ad55;background:radial-gradient(circle at 30% 25%,#fff1b9,#ffd476 40%,#e6a648 78%);box-shadow:inset 0 0 0 2px #ffe6a4,0 4px 12px #f1ad4250;color:#93601d;font-size:16px;font-weight:900;font-family:Georgia,serif;text-shadow:0 1px #fff2c2}
.coin-lg{width:98px;height:98px;border-width:5px;font-size:54px;box-shadow:inset 0 0 0 5px #ffe9a6,0 19px 35px #0004,0 0 0 13px #ffc97d0b}
.coin.mini{width:23px;height:23px;font-size:12px;display:inline-grid;vertical-align:middle;border-width:1px;margin-right:5px}.reward-price .coin{width:29px;height:29px;font-size:16px}
main{padding:0 36px 55px;max-width:1550px}.page-title{margin:0 0 22px}h1{font-size:clamp(26px,3vw,38px);letter-spacing:-1.2px;font-weight:800}h2{font-weight:800;letter-spacing:-.45px}.page-title p{font-size:12px}.muted,small{color:var(--muted)}
.panel,.stat{background:var(--panel);border:1px solid #302c3e;border-radius:var(--radius);box-shadow:var(--shadow)}.panel{padding:23px}.stat{padding:20px}.stat strong{color:var(--accent-bright)}
.rhythm-hero{background:radial-gradient(circle at 86% 24%,#6b507a55,transparent 32%),linear-gradient(114deg,#31233f,#28243b 62%,#24213a);position:relative;border:1px solid #4b3c5a;border-radius:29px;min-height:210px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;padding:30px 38px;margin-bottom:24px}.rhythm-hero:after{content:'';position:absolute;right:7%;bottom:-85px;width:270px;height:270px;border:1px solid #c4addc23;border-radius:50%;box-shadow:0 0 0 37px #c7adda0b,0 0 0 80px #c7adda08;pointer-events:none}.hero-copy{z-index:1;max-width:590px}.hero-copy h1{margin-top:10px;font-size:clamp(28px,3vw,42px);line-height:1.2}.hero-copy p{color:#c8bfce;font-size:12.5px}.hero-copy .eyebrow{color:var(--peach)}.hero-orb{position:relative;flex-shrink:0;width:190px;height:150px;display:flex;align-items:center;justify-content:center;z-index:1}.orb-small{position:absolute;color:#fff2b8;font-size:19px}.orb-small.one{top:3px;right:10px}.orb-small.two{left:3px;bottom:4px;font-size:12px}.orb-small.three{right:1px;bottom:15px;font-size:10px}
button{background:#252232;color:#d5cce1;border-color:#383344;border-radius:11px;font-weight:650}button:hover{background:#363044;border-color:#645273}button.primary{background:var(--accent);color:#241a35;border-color:var(--accent);box-shadow:0 5px 17px #a47fd61a}button.primary:hover{background:var(--accent-bright)}button.link{color:var(--accent)}button.danger{color:#ffb4a5}
input,select,textarea{background:#151321;color:var(--ink);border-color:#423b54;border-radius:11px}input::placeholder,textarea::placeholder{color:#8d879f}input[type=checkbox]{accent-color:var(--accent)}label{color:#c4bdd3}details, .task,.zone,.ledger,.queue-row{border-color:var(--line)}summary{color:#d7c9ea}.focus{background:linear-gradient(145deg,#29233a,#211e32);border-color:#4c3b61}.clock{color:var(--gold)}.task h3{font-size:14px}.task-actions>strong{color:var(--gold);white-space:nowrap}.task.done h3{color:#817d98}.pill{background:#382b43;color:#e2c6e9;border:1px solid #51415b;border-radius:30px}.warn{background:#453726;color:#ffe0a1}.danger-note{background:#39282b;color:#ffd1c3;border-color:#bc7e6c}.reward-price{color:var(--gold);display:flex;align-items:center;gap:6px}.positive{color:var(--mint)}.negative{color:#f4b5a8}pre,code{background:#14121f;color:#c8b7e1}dialog{background:var(--panel);color:var(--ink);border-color:#554466;border-radius:23px;box-shadow:0 25px 90px #0007}dialog::backdrop{background:#0c0a14cc;backdrop-filter:blur(5px)}.calendar button.active{background:#302842;border-color:#7a5b9e;color:#e8d7ff}#toast{background:#332b44;border:1px solid #71558c;box-shadow:0 8px 30px #0005;color:#f7f4ff}#storage-error{background:#40292e;color:#ffd4c9;border-radius:14px}.source{color:var(--muted2)}
@media(max-width:1050px){.app-layout{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding-left:16px;padding-right:14px}.sidebar nav button{padding:11px 10px}header{padding:26px 25px 0}main{padding:0 25px 45px}.summary{grid-template-columns:1fr}.stat{padding:15px}.hero-orb{width:140px}.rhythm-hero{padding:25px}}
@media(max-width:760px){.app-layout{display:block}.sidebar{position:relative;height:auto;padding:17px 15px 10px;border-right:0;border-bottom:1px solid #2c2938}.sidebar .logo{padding-bottom:15px}.nav-label,.side-spacer,.side-note{display:none}.sidebar nav{flex-direction:row;overflow:auto;gap:5px}.sidebar nav button{padding:9px 10px;font-size:12px;white-space:nowrap}.nav-icon{font-size:17px;width:17px}.brand-title{font-size:20px}.brand-sub{font-size:9px}.brand-symbol{width:36px;height:36px}.sidebar nav button{gap:7px}header{padding:20px 16px 0;margin-bottom:20px}main{padding:0 15px 45px}.header-caption .eyebrow{font-size:9px}.header-caption p{font-size:10px}.wallet{padding:6px 11px 6px 6px}.wallet strong{font-size:16px}.panel{padding:19px}.grid{grid-template-columns:1fr}.rhythm-hero{padding:24px;border-radius:23px;min-height:190px}.hero-copy h1{font-size:29px;letter-spacing:-1px}.hero-orb{width:100px}.hero-orb .coin-lg{width:68px;height:68px;font-size:34px;border-width:4px;box-shadow:inset 0 0 0 3px #ffe9a6,0 15px 25px #0004,0 0 0 10px #ffc97d0b}.hero-copy{max-width:65%}.hero-copy p{font-size:11px}.orb-small.one{right:0;top:12px}.orb-small.two{bottom:15px}.rhythm-hero:after{right:-100px}}
@media(prefers-reduced-motion:no-preference){.wallet.coin-earned .coin{animation:coin-pop .55s ease}.wallet.coin-earned strong{animation:coin-number .55s ease}@keyframes coin-pop{0%,100%{transform:scale(1) rotate(0)}40%{transform:scale(1.2) rotate(-15deg)}}@keyframes coin-number{40%{color:#fff1b9;transform:translateY(-3px)}}}


#manager-launch{position:fixed;right:18px;bottom:18px;z-index:40;background:#c5a4ff;color:#241a35;border:0;border-radius:18px;padding:15px 20px;box-shadow:0 10px 40px #0008;font-weight:800}
#manager-pane{position:fixed;right:16px;bottom:76px;z-index:40;width:min(430px,calc(100vw - 32px));max-height:82vh;overflow:auto;background:#201c30;border:1px solid #685181;border-radius:23px;padding:20px;box-shadow:0 22px 90px #000a;color:#f7f4ff}
#manager-pane[hidden]{display:none!important}#manager-pane h2{font-size:23px;margin:0 0 5px}
#manager-pane .mg-muted{color:#b8b0c9;font-size:12px}#manager-pane .mg-card{background:#30283e;border:1px solid #59466e;border-radius:15px;padding:16px;margin:15px 0}
#manager-pane .mg-card strong{display:block;font-size:19px;margin:7px 0}
#manager-pane .mg-actions{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
#manager-pane .mg-actions button{flex:1;min-width:100px}#manager-pane textarea{min-height:65px}
#manager-pane .mg-list{max-height:150px;overflow:auto;font-size:12px;color:#d2c8df}


#cloud-toggle{position:fixed;bottom:18px;left:18px;z-index:45;border-radius:16px;padding:13px 17px;background:#3b3151;color:white;border:1px solid #8c73b3}
#cloud-panel{position:fixed;bottom:74px;left:16px;z-index:45;width:min(410px,calc(100vw - 32px));max-height:80vh;overflow:auto;padding:20px;border-radius:20px;background:#211c2e;color:#fff;border:1px solid #786093;box-shadow:0 18px 70px #0009}
#cloud-panel[hidden]{display:none!important}#cloud-panel input{display:block;width:100%;margin:8px 0;padding:12px;color:#fff;background:#302840;border:1px solid #655579;border-radius:10px}
#cloud-panel button{margin:5px 4px 5px 0;padding:10px;border-radius:10px}#cloud-status{font-size:13px;white-space:pre-wrap;color:#d8c9eb}
