:root{
  --bg:#fbfaf7;--bg-2:#ffffff;--surface:rgba(255,255,255,.82);--solid:#fff;--text:#181612;--muted:#7b756a;--line:rgba(124,97,31,.12);
  --gold:#c6a15b;--gold-deep:#9d762e;--gold-pale:#efe3c4;--gold-wash:#faf4e6;--red:#c83b32;--green:#4c8760;
  --shadow:0 24px 70px rgba(80,58,12,.10);--shadow-soft:0 10px 34px rgba(90,69,24,.07);
  --ease:cubic-bezier(.22,.61,.36,1);--spring:cubic-bezier(.2,.9,.25,1.08);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,system-ui,sans-serif;color-scheme:light;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;min-height:100%;background:linear-gradient(180deg,#fffdf8 0%,var(--bg) 36%,#f8f5ee 100%);color:var(--text)}
html{scroll-behavior:smooth}body{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);overscroll-behavior-y:none;overflow-x:hidden}
button,input,textarea,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}
::selection{background:rgba(198,161,91,.25)}

.ambient{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:-1}
.ambient span{position:absolute;border-radius:999px;filter:blur(60px);opacity:.22;animation:floatGlow 15s ease-in-out infinite alternate}
.ambient span:nth-child(1){width:420px;height:420px;background:#e8cc88;right:-170px;top:-150px}
.ambient span:nth-child(2){width:300px;height:300px;background:#f6e8c3;left:-130px;top:36%;animation-delay:-4s}
.ambient span:nth-child(3){width:360px;height:360px;background:#d7b86c;right:-190px;bottom:-170px;animation-delay:-8s;opacity:.12}
@keyframes floatGlow{from{transform:translate3d(-16px,-8px,0) scale(.96)}to{transform:translate3d(24px,18px,0) scale(1.07)}}

.app{max-width:860px;margin:auto;min-height:100vh;padding-bottom:112px;position:relative}
.topbar{position:sticky;top:0;z-index:15;padding:17px 20px 12px;display:flex;align-items:center;justify-content:space-between;background:rgba(255,253,248,.74);backdrop-filter:blur(24px) saturate(1.3);-webkit-backdrop-filter:blur(24px) saturate(1.3);border-bottom:1px solid rgba(198,161,91,.06)}
.topbar-brand{display:flex;align-items:center;gap:12px;min-width:0}.topbar-logo{width:34px;height:37px;object-fit:contain;object-position:center top;filter:drop-shadow(0 5px 10px rgba(130,90,13,.15))}.topbar h1{margin:2px 0 0;font-size:30px;letter-spacing:-.045em;line-height:1}.eyebrow{margin:0;color:var(--muted);font-size:10.5px;font-weight:800;letter-spacing:.155em}.eyebrow.gold{color:var(--gold-deep)}
.avatar-btn{width:43px;height:43px;border-radius:50%;border:1px solid rgba(198,161,91,.36);background:linear-gradient(145deg,#d9b86f,#a6782f);color:white;display:grid;place-items:center;font-weight:800;overflow:hidden;box-shadow:0 7px 20px rgba(149,104,28,.18);transition:transform .25s var(--spring),box-shadow .25s ease}.avatar-btn:active{transform:scale(.93)}.avatar-btn img{width:100%;height:100%;object-fit:cover}
.content{padding:6px 16px 30px}.panel{display:none;transform-origin:50% 10%}.panel.active{display:block}.panel.panel-enter{animation:panelIn .52s var(--ease) both}.panel.panel-exit{animation:panelOut .2s ease both}
@keyframes panelIn{0%{opacity:0;transform:translate3d(22px,10px,0) scale(.985);filter:blur(5px)}100%{opacity:1;transform:none;filter:blur(0)}}
@keyframes panelOut{to{opacity:0;transform:translate3d(-12px,0,0) scale(.99);filter:blur(3px)}}

.segmented{padding:4px;background:rgba(233,225,204,.68);border:1px solid rgba(198,161,91,.10);border-radius:16px;display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:8px 0 18px;box-shadow:inset 0 1px 4px rgba(102,76,22,.04)}
.segment{border:0;background:transparent;padding:10px;border-radius:12px;font-weight:700;color:var(--muted);transition:all .28s var(--ease)}.segment.active{background:white;color:var(--gold-deep);box-shadow:0 4px 16px rgba(100,74,20,.09),inset 0 0 0 1px rgba(198,161,91,.08)}

.hero-card,.focus-card,.timer-card,.metric-card,.card{background:var(--surface);border:1px solid rgba(255,255,255,.85);box-shadow:var(--shadow-soft);border-radius:26px;padding:20px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.hero-card{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:14px;background:linear-gradient(145deg,#fff 0%,#fffaf0 58%,#f2e2bd 100%);border:1px solid rgba(198,161,91,.20);box-shadow:0 24px 58px rgba(115,82,20,.12);color:var(--text)}
.hero-card:before{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-85px;top:-120px;background:radial-gradient(circle,rgba(198,161,91,.28),rgba(198,161,91,0) 68%)}
.hero-card .label{color:var(--gold-deep)}.hero-card .muted{color:var(--muted)}.hero-number{font-size:36px;font-weight:760;letter-spacing:-.045em;margin-top:4px}.round-add{position:relative;z-index:1;border:0;width:48px;height:48px;border-radius:50%;font-size:30px;line-height:1;background:linear-gradient(145deg,#d8b668,#aa7d34);color:#fff;box-shadow:0 8px 24px rgba(151,107,31,.24);transition:transform .25s var(--spring),box-shadow .25s ease}.round-add:active{transform:scale(.91)}
.article-hero{grid-template-columns:1fr auto;align-items:center}.article-hero h2{margin:4px 0;font-size:25px}.section-head{display:flex;align-items:center;justify-content:space-between;margin:27px 4px 12px}.section-head h2{font-size:22px;margin:0;letter-spacing:-.028em}
.text-btn,.ghost-btn{border:0;background:transparent;color:var(--gold-deep);font-weight:700}.primary-small,.primary-btn{border:0;background:linear-gradient(145deg,#d4b066,#a77a31);color:#fff;border-radius:15px;font-weight:750;box-shadow:0 9px 24px rgba(150,108,31,.18);transition:transform .22s var(--spring),box-shadow .22s ease,filter .22s ease}.primary-small:active,.primary-btn:active{transform:scale(.975);filter:brightness(.98)}.primary-small{padding:10px 15px}.primary-btn{padding:14px 18px}

.stack{display:grid;gap:11px}.project-card,.invoice-card,.article-card{appearance:none;width:100%;color:inherit;background:rgba(255,255,255,.9);border:1px solid rgba(198,161,91,.12);border-radius:21px;padding:16px;display:grid;gap:10px;box-shadow:0 8px 28px rgba(92,68,18,.055);transition:transform .28s var(--spring),box-shadow .28s ease,border-color .28s ease;animation:cardReveal .55s var(--ease) both;animation-delay:calc(var(--i,0) * 45ms)}
.project-card:active,.invoice-card:active,.article-card:active{transform:scale(.982)}
@media(hover:hover){.project-card:hover,.invoice-card:hover,.article-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(95,66,12,.09);border-color:rgba(198,161,91,.26)}}
@keyframes cardReveal{0%{opacity:0;transform:translateY(10px) scale(.99)}100%{opacity:1;transform:none}}
.project-top,.row-between{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.project-card h3,.article-card h3{margin:0;font-size:18px;letter-spacing:-.022em}.muted{color:var(--muted)}.micro{color:var(--muted);font-size:12px}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:var(--gold-wash);color:#73551e;font-size:11px;font-weight:750;text-transform:capitalize;border:1px solid rgba(198,161,91,.10)}.badge.high,.badge.critical{background:#fff0ec;color:#a93831;border-color:rgba(169,56,49,.09)}.project-meta{display:flex;flex-wrap:wrap;gap:6px}.next-action{padding:11px 12px;background:linear-gradient(180deg,#fcf8ef,#faf4e8);border:1px solid rgba(198,161,91,.10);border-radius:14px;font-size:13px}

.tabbar{position:fixed;left:50%;bottom:max(10px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:25;width:min(calc(100% - 24px),620px);display:grid;grid-template-columns:repeat(3,1fr);padding:8px;background:rgba(255,255,255,.84);backdrop-filter:blur(28px) saturate(1.45);-webkit-backdrop-filter:blur(28px) saturate(1.45);border:1px solid rgba(198,161,91,.14);box-shadow:0 18px 48px rgba(75,54,14,.16);border-radius:26px}
.tab{position:relative;border:0;background:transparent;color:#8c8578;display:grid;gap:2px;place-items:center;padding:7px 2px;border-radius:18px;transition:color .25s ease,background .25s ease,transform .2s var(--spring)}.tab:active{transform:scale(.94)}.tab-icon{font-size:19px;transition:transform .28s var(--spring)}.tab small{font-size:10px;font-weight:700}.tab.active{color:var(--gold-deep);background:linear-gradient(180deg,rgba(245,235,211,.68),rgba(250,247,239,.40))}.tab.active .tab-icon{transform:translateY(-1px) scale(1.08)}

.money-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.metric-card{background:linear-gradient(155deg,#fff,#fffaf0);border-color:rgba(198,161,91,.13)}.metric-card span,.metric-card small{display:block;color:var(--muted);font-size:12px}.metric-card strong{display:block;font-size:22px;letter-spacing:-.035em;margin:7px 0;color:#76571f}.invoice-card .amount{font-size:20px;font-weight:760}.invoice-progress{height:6px;background:#efe8d9;border-radius:999px;overflow:hidden}.invoice-progress span{display:block;height:100%;background:linear-gradient(90deg,#c6a15b,#e2c67f);border-radius:inherit}
.focus-date{font-size:13px;color:var(--muted);padding:3px 4px 12px}.focus-card,.timer-card{margin-bottom:12px}.label{font-size:11px;font-weight:820;letter-spacing:.115em;color:var(--muted)}.focus-items{display:grid;gap:8px;margin:14px 0}.focus-item{display:flex;align-items:center;gap:10px;padding:12px;background:#fbf7ee;border:1px solid rgba(198,161,91,.08);border-radius:15px}.focus-item input{width:20px;height:20px;accent-color:var(--gold-deep)}.timer-card{text-align:center;background:linear-gradient(155deg,#fff,#fff9ec)}.timer{font-variant-numeric:tabular-nums;font-size:64px;font-weight:720;letter-spacing:-.065em;margin:18px 0;color:#6f5220;text-shadow:0 10px 35px rgba(174,125,40,.12)}.timer-controls{display:flex;justify-content:center;gap:8px}.chips{display:flex;justify-content:center;gap:8px;margin:14px 0}.chip{border:1px solid rgba(198,161,91,.09);background:#f7f0e2;color:#6e6251;padding:8px 12px;border-radius:999px;font-size:12px}.chip.active{background:linear-gradient(145deg,#d3af66,#a77930);color:#fff}

textarea,input,select,.editor{width:100%;border:1px solid rgba(198,161,91,.16);background:#fffdfa;border-radius:15px;padding:12px 13px;outline:none;color:var(--text);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}textarea:focus,input:focus,select:focus,.editor:focus{border-color:rgba(171,127,47,.56);box-shadow:0 0 0 4px rgba(198,161,91,.12);background:white}

.login-view{min-height:100vh;display:grid;place-items:center;padding:28px 20px;background:radial-gradient(circle at 74% 12%,rgba(216,183,109,.28),transparent 31%),radial-gradient(circle at 9% 74%,rgba(237,217,168,.27),transparent 28%),linear-gradient(180deg,#fff 0%,#fcfaf4 62%,#f5eedf 100%);position:relative;overflow:hidden}.login-view:before{content:"";position:absolute;width:540px;height:540px;border:1px solid rgba(198,161,91,.10);border-radius:50%;right:-260px;top:-270px;box-shadow:0 0 0 64px rgba(198,161,91,.025),0 0 0 128px rgba(198,161,91,.018);animation:cinemaOrbit 13s ease-in-out infinite alternate}.login-shell{width:min(100%,440px);perspective:1200px}.login-card{width:100%;padding:35px 32px 28px;border-radius:32px;text-align:center;position:relative;overflow:hidden}.login-card:after{content:"";position:absolute;left:13%;right:13%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(198,161,91,.7),transparent)}.glass{background:rgba(255,255,255,.80);backdrop-filter:blur(28px) saturate(1.3);-webkit-backdrop-filter:blur(28px) saturate(1.3);box-shadow:0 34px 90px rgba(85,61,15,.14);border:1px solid rgba(255,255,255,.94)}.cinematic-in{animation:cinematicIn .85s var(--ease) both}.login-logo{display:block;width:min(235px,72%);height:auto;margin:0 auto 12px;filter:drop-shadow(0 12px 22px rgba(155,108,26,.13));animation:logoFloat 5s ease-in-out infinite}.login-card h1{font-size:38px;line-height:1.02;letter-spacing:-.052em;margin:9px 0 12px}.login-copy{max-width:330px;margin:0 auto;line-height:1.5}.login-btn{width:100%;margin-top:22px;min-height:52px;display:flex;align-items:center;justify-content:center;gap:10px;position:relative}.google-dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:white;color:#9a742e;font-weight:850;font-size:13px;box-shadow:0 2px 8px rgba(0,0,0,.08)}.login-message{min-height:19px;margin:12px 0 0;color:#8a5d26;font-size:12px;line-height:1.45}.login-message.error{color:var(--red)}.login-foot{margin-top:14px}.spinner{width:17px;height:17px;border-radius:50%;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;animation:spin .72s linear infinite}.login-btn.loading{pointer-events:none;filter:saturate(.72)}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes cinematicIn{0%{opacity:0;transform:translateY(26px) scale(.97) rotateX(4deg);filter:blur(8px)}100%{opacity:1;transform:none;filter:none}}@keyframes logoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes cinemaOrbit{from{transform:translate(-10px,-5px) scale(.98)}to{transform:translate(24px,18px) scale(1.06)}}

.sheet-backdrop{position:fixed;inset:0;z-index:39;background:rgba(52,43,26,.28);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);animation:fadeIn .2s ease both}.sheet{position:fixed;left:50%;bottom:0;transform:translateX(-50%);z-index:40;width:min(100%,720px);max-height:92vh;overflow:auto;background:rgba(255,255,255,.97);border:1px solid rgba(198,161,91,.14);border-bottom:0;border-radius:30px 30px 0 0;padding:9px 18px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -24px 70px rgba(82,60,18,.17);animation:sheetIn .4s var(--spring) both}.sheet-handle{width:38px;height:5px;background:#d9c9a5;border-radius:999px;margin:2px auto 14px}.sheet h2{font-size:26px;margin:4px 0 18px;letter-spacing:-.04em}.form-grid{display:grid;gap:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field label{display:block;font-size:11px;font-weight:760;color:var(--muted);letter-spacing:.05em;margin:0 0 6px}.sheet-actions{display:flex;gap:9px;margin-top:18px}.sheet-actions>*{flex:1}.editor{min-height:240px;overflow:auto;line-height:1.55}.toast{position:fixed;z-index:70;left:50%;bottom:108px;transform:translateX(-50%);background:rgba(47,38,21,.92);backdrop-filter:blur(14px);color:#fff;padding:11px 15px;border-radius:999px;font-size:13px;box-shadow:0 12px 34px rgba(0,0,0,.18);max-width:calc(100% - 32px);text-align:center;animation:toastIn .32s var(--spring) both}.danger{color:#b8322b}.user-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.link-row{display:flex;gap:8px;flex-wrap:wrap}.link-row a{color:#8d6629;text-decoration:none;font-size:12px;font-weight:700}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes sheetIn{0%{opacity:0;transform:translate(-50%,36px) scale(.985)}100%{opacity:1;transform:translate(-50%,0) scale(1)}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,10px) scale(.96)}100%{opacity:1;transform:translate(-50%,0) scale(1)}}

@media(max-width:520px){.content{padding-inline:12px}.topbar{padding-inline:15px}.topbar h1{font-size:28px}.topbar-logo{width:31px;height:34px}.hero-card{padding:18px}.hero-number{font-size:31px}.money-grid{grid-template-columns:1fr}.timer{font-size:58px}.form-row{grid-template-columns:1fr}.sheet{padding-inline:14px}.login-card{padding:31px 22px 25px}.login-card h1{font-size:35px}.login-logo{width:min(235px,78%)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
