:root{--bg:#111513;--panel:#1a201d;--panel2:#202823;--line:#303a34;--text:#eef2ef;--muted:#98a49d;--accent:#88a88f;--accent2:#b9d0bf;--danger:#d98282;--shadow:0 20px 60px rgba(0,0,0,.22)}*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{margin:0;background:radial-gradient(circle at 80% 0%,rgba(136,168,143,.09),transparent 30%),var(--bg);min-height:100vh}button,input{font:inherit}.muted{color:var(--muted)}.eyebrow{margin:0 0 5px;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800;color:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.7rem,3vw,2.4rem);margin-bottom:0}h2{font-size:clamp(1.7rem,3vw,2.6rem);margin-bottom:0}h3{font-size:1.12rem}.app-shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:30px 18px 22px;border-right:1px solid var(--line);background:rgba(17,21,19,.88);backdrop-filter:blur(16px);display:flex;flex-direction:column}.brand{width:156px;margin:0 8px 36px}.sidebar nav{display:grid;gap:7px}.sidebar a{color:var(--muted);text-decoration:none;padding:12px 14px;border-radius:14px;display:flex;align-items:center;gap:13px;font-weight:650}.sidebar a span{width:25px;text-align:center;color:var(--accent2)}.sidebar a:hover,.sidebar a.active{background:var(--panel2);color:var(--text)}.sidebar .logout{margin-top:auto}.content{padding:28px clamp(24px,4vw,62px) 80px;max-width:1500px;width:100%;margin:0 auto}.topbar,.welcome,.section-head,.modal-head{display:flex;justify-content:space-between;align-items:center}.top-actions{display:flex;gap:9px;align-items:center}.top-actions button,.modal-head button{width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:1.2rem}.avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--accent);color:#111513;font-weight:900}.welcome{margin:56px 0 26px}.quick-add,.btn{border:0;border-radius:15px;padding:13px 18px;font-weight:800;cursor:pointer}.quick-add,.btn.primary{background:var(--accent);color:#111513}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric,.panel{border:1px solid var(--line);background:linear-gradient(160deg,rgba(32,40,35,.95),rgba(23,29,26,.97));border-radius:22px;box-shadow:var(--shadow)}.metric{padding:20px;display:grid;gap:7px}.metric span,.metric small{color:var(--muted)}.metric strong{font-size:clamp(1.5rem,2.5vw,2.25rem)}.panel{padding:24px;margin-top:18px}.action-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.action-card{min-height:115px;border:1px solid var(--line);border-radius:18px;background:#161c19;color:var(--text);display:grid;place-items:center;align-content:center;gap:9px;cursor:pointer}.action-card:hover{border-color:var(--accent);transform:translateY(-1px)}.action-card b{display:grid;place-items:center;width:45px;height:45px;border-radius:15px;background:rgba(136,168,143,.15);color:var(--accent2);font-size:1.1rem}.action-card span{font-weight:750}.two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}.finance-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.finance-row.total{border-bottom:0;padding-top:18px}.progress{height:8px;background:#111513;border-radius:999px;overflow:hidden;margin-top:14px}.progress i{height:100%;display:block;background:var(--accent);border-radius:999px}.empty-state{text-align:center;display:grid;place-items:center;align-content:center;min-height:260px}.empty-icon{width:60px;height:60px;border-radius:20px;background:rgba(136,168,143,.12);display:grid;place-items:center;color:var(--accent);font-size:1.5rem;margin-bottom:14px}.mobile-nav{display:none}.modal{display:none;position:fixed;inset:0;background:rgba(4,7,5,.74);z-index:50;align-items:flex-end;justify-content:center;padding:20px}.modal.show{display:flex}.modal-sheet{width:min(720px,100%);padding:24px;border:1px solid var(--line);border-radius:26px;background:#171d1a;box-shadow:var(--shadow)}.modal-head button{cursor:pointer}.action-grid.compact{grid-template-columns:repeat(3,1fr)}.tiny{font-size:.82rem;margin:15px 0 0}.auth-body{display:grid;place-items:center;padding:24px}.auth-card{width:min(470px,100%);padding:34px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(160deg,#1f2722,#171c19);box-shadow:var(--shadow)}.install-card{width:min(760px,100%)}.auth-logo{width:170px;margin-bottom:34px}.stack{display:grid;gap:16px;margin-top:26px}.stack label{font-size:.87rem;color:var(--muted);font-weight:700;display:grid;gap:7px}.stack input{width:100%;background:#111513;color:var(--text);border:1px solid var(--line);border-radius:13px;padding:13px 14px;outline:none}.stack input:focus{border-color:var(--accent)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.stack hr{width:100%;border:0;border-top:1px solid var(--line);margin:5px 0}.alert{padding:12px 14px;border-radius:13px;margin-top:18px}.alert.error{background:rgba(217,130,130,.12);border:1px solid rgba(217,130,130,.35);color:#efb3b3}.alert.success{background:rgba(136,168,143,.12);border:1px solid rgba(136,168,143,.35);color:var(--accent2)}@media(max-width:1050px){.metric-grid{grid-template-columns:repeat(2,1fr)}.action-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:780px){.app-shell{display:block}.sidebar{display:none}.content{padding:22px 16px 100px}.welcome{margin:32px 0 20px;align-items:flex-end}.quick-add span{display:none}.metric-grid{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:16px}.metric strong{font-size:1.45rem}.panel{padding:18px;border-radius:19px}.action-grid{grid-template-columns:repeat(3,1fr);gap:9px}.action-card{min-height:100px}.two-col{grid-template-columns:1fr}.mobile-nav{display:grid;grid-template-columns:1fr 1fr 72px 1fr 1fr;position:fixed;left:10px;right:10px;bottom:10px;z-index:30;border:1px solid var(--line);background:rgba(22,28,25,.95);backdrop-filter:blur(18px);border-radius:22px;padding:7px;box-shadow:var(--shadow)}.mobile-nav a{display:grid;gap:2px;place-items:center;text-decoration:none;color:var(--muted);font-size:.7rem}.mobile-nav a.active{color:var(--accent2)}.mobile-nav b{font-size:1rem}.mobile-nav button{width:52px;height:52px;border:0;border-radius:18px;background:var(--accent);color:#111513;font-size:1.7rem;font-weight:800;align-self:center;justify-self:center}.form-grid{grid-template-columns:1fr}.top-actions button:first-child{display:none}}@media(max-width:430px){.metric-grid{grid-template-columns:1fr 1fr}.metric span{font-size:.76rem}.metric small{font-size:.69rem}.action-card span{font-size:.78rem}.action-grid.compact{grid-template-columns:repeat(2,1fr)}}


/* NIVILO PHASE 2 */
a{color:inherit}.icon-btn{width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:1.2rem;display:grid;place-items:center;text-decoration:none}.page-tabs{display:flex;gap:8px;overflow:auto;padding:28px 0 4px;scrollbar-width:none}.page-tabs a{white-space:nowrap;text-decoration:none;color:var(--muted);border:1px solid var(--line);padding:10px 14px;border-radius:13px;font-weight:700}.page-tabs a.active,.page-tabs a:hover{background:var(--panel2);color:var(--text);border-color:#46534b}.text-link{color:var(--accent2);text-decoration:none;font-weight:750;font-size:.9rem}.positive{color:#b8d9bf!important}.negative{color:#efabab!important}.action-card{text-decoration:none}.action-card.disabled{opacity:.38;pointer-events:none}.finance-metrics{margin-top:28px}.finance-actions{grid-template-columns:repeat(6,1fr)}.form-panel{margin-top:24px}.finance-form{display:grid;gap:18px;margin-top:22px}.finance-form label,.stack label{font-size:.84rem;color:var(--muted);font-weight:750;display:grid;gap:7px}.finance-form input,.finance-form select,.finance-form textarea,.stack input,.stack select,.filter-grid input,.filter-grid select,.inline-filter input{width:100%;background:#111513;color:var(--text);border:1px solid var(--line);border-radius:13px;padding:13px 14px;outline:none}.finance-form input:focus,.finance-form select:focus,.finance-form textarea:focus,.stack input:focus,.stack select:focus{border-color:var(--accent)}.amount-field{max-width:420px}.amount-field>div{display:flex;align-items:center;background:#111513;border:1px solid var(--line);border-radius:18px;padding:0 16px}.amount-field input{font-size:2rem;font-weight:850;border:0;background:transparent;padding:16px 0}.amount-field b{font-size:1.5rem;color:var(--accent)}.finance-form details{border-top:1px solid var(--line);padding-top:14px}.finance-form summary{cursor:pointer;color:var(--accent2);font-weight:750}.details-grid{margin-top:15px}.wide{grid-column:1/-1}.save-btn{justify-self:start;min-width:180px}.inline-btn{display:inline-block;text-decoration:none;margin-top:15px}.small-btn{padding:10px 14px;text-decoration:none}.bar-row,.budget-row{margin:18px 0}.bar-row>div:first-child,.budget-row>div:first-child{display:flex;justify-content:space-between;gap:20px;margin-bottom:8px}.bar{height:9px;border-radius:999px;background:#111513;overflow:hidden}.bar i{height:100%;display:block;background:var(--accent);border-radius:999px}.bar.over i{background:var(--danger)}.budget-row small{display:block;color:var(--muted);margin-top:7px}.inline-filter{display:flex;gap:10px}.inline-filter input{max-width:220px}.compact-copy{margin:18px 0 0}.transaction-list{display:grid}.transaction-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.transaction-row:last-child{border-bottom:0}.tx-icon{width:42px;height:42px;border-radius:14px;background:rgba(136,168,143,.12);display:grid;place-items:center}.transaction-row small,.transaction-row em{display:block;color:var(--muted);font-size:.78rem;margin-top:3px;font-style:normal}.transaction-row strong{white-space:nowrap}.transaction-row small a{color:var(--accent2)}.empty-mini{padding:28px 0;color:var(--muted)}.filter-grid{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;margin:18px 0}.delete-btn{border:0;background:transparent;color:var(--muted);font-size:1.3rem;cursor:pointer}.delete-btn:hover{color:var(--danger)}.account-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px}.account-card{border:1px solid var(--line);background:#151b18;border-radius:17px;padding:17px;display:grid;gap:5px}.account-card strong{font-size:1.35rem}.account-card small{color:var(--muted)}.stack.tight{margin-top:18px}.chip-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.chip-list span{border:1px solid var(--line);background:#151b18;border-radius:999px;padding:9px 12px;font-size:.85rem}.month-chart{height:210px;display:flex;align-items:end;gap:14px;overflow-x:auto;padding:20px 4px 0}.month-column{min-width:42px;text-align:center}.bars{height:160px;display:flex;gap:4px;align-items:end;justify-content:center}.bars i{width:12px;border-radius:5px 5px 2px 2px;display:block}.income-bar{background:var(--accent2)}.expense-bar{background:#9f7777}.month-column small{color:var(--muted)}.legend{display:flex;gap:18px;margin-top:18px;color:var(--muted);font-size:.82rem}.legend span{display:flex;gap:7px;align-items:center}.legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.legend-income{background:var(--accent2)}.legend-expense{background:#9f7777}.alert.success{margin-top:18px}.alert.error{margin-top:18px}
@media(max-width:780px){.page-tabs{padding-top:20px}.finance-metrics{margin-top:18px}.finance-actions{grid-template-columns:repeat(3,1fr)}.form-panel h2{font-size:1.4rem}.amount-field{max-width:none}.filter-grid{grid-template-columns:1fr 1fr}.filter-grid input:first-of-type{grid-column:1/-1}.transaction-row{grid-template-columns:42px minmax(0,1fr) auto}.transaction-row form{grid-column:3}.transaction-row>strong{grid-column:3;grid-row:1}.transaction-row form{grid-row:2}.account-grid{grid-template-columns:1fr}.inline-filter{display:grid}.wide{grid-column:auto}}
@media(max-width:430px){.finance-actions{grid-template-columns:repeat(3,1fr)}.filter-grid{grid-template-columns:1fr}.filter-grid input:first-of-type{grid-column:auto}.transaction-row{gap:8px}.transaction-row strong{font-size:.88rem}}


/* NIVILO PHASE 3 */
.notify-btn{position:relative}.notify-btn i{position:absolute;right:-4px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--danger);color:white;font-size:.65rem;font-style:normal;display:grid;place-items:center}.standalone{margin:34px 0 14px}.calendar-toolbar{display:flex;gap:14px;align-items:center;justify-content:space-between;margin:30px 0 14px}.calendar-toolbar>div:last-child{display:flex;gap:8px;align-items:center}.calendar-month{display:grid;grid-template-columns:repeat(7,1fr);padding:0;overflow:hidden}.weekday{padding:12px;text-align:center;color:var(--muted);font-size:.75rem;font-weight:800;border-bottom:1px solid var(--line)}.day-cell{min-height:128px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none;color:var(--text);overflow:hidden}.day-cell:nth-child(7n){border-right:0}.day-cell.today{background:rgba(136,168,143,.08);box-shadow:inset 0 0 0 1px var(--accent)}.muted-cell{opacity:.25}.event-pill{display:block;margin-top:7px;padding:5px 7px;border-radius:8px;background:rgba(136,168,143,.13);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-list{display:grid}.agenda-row{display:flex;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}.agenda-row:last-child{border-bottom:0}.agenda-row .grow,.grow{flex:1}.agenda-row small,.agenda-row em,.task-row small,.task-row em,.task-mini small{display:block;color:var(--muted);font-style:normal;margin-top:4px}.agenda-date{width:46px;height:52px;border-radius:13px;background:rgba(136,168,143,.12);display:grid;place-items:center;align-content:center}.agenda-date b{font-size:1.1rem}.agenda-date small{margin:0}.time-badge{min-width:62px;font-weight:850;color:var(--accent2)}.week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.week-day{margin-top:0;padding:16px;min-height:250px}.today-panel{border-color:var(--accent)}.week-event{display:grid;gap:3px;padding:8px;margin-top:8px;border-radius:10px;background:#151b18;text-decoration:none}.week-event b{color:var(--accent2);font-size:.75rem}.week-event span{font-size:.8rem}.reminder-box{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px;border:1px solid var(--line);border-radius:15px;background:#151a17}.reminder-box label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.82rem}.reminder-box input[type=checkbox],.check-label input{width:auto}.reminder-box select{min-width:150px}.task-list,.task-list-mini{display:grid}.task-row{display:flex;align-items:flex-start;gap:13px;padding:15px 0;border-bottom:1px solid var(--line)}.task-row:last-child{border-bottom:0}.task-row.high{border-left:3px solid var(--danger);padding-left:12px}.task-row.done{opacity:.55}.task-row.done b{text-decoration:line-through}.check-btn{width:36px;height:36px;border-radius:12px;border:1px solid var(--line);background:#151a17;color:var(--accent2);cursor:pointer;font-size:1.15rem}.task-mini{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.task-mini.high>span{color:var(--danger)}.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}.note-card{padding:20px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(160deg,rgba(32,40,35,.95),rgba(23,29,26,.97));box-shadow:var(--shadow)}.note-card.pinned{border-color:var(--accent)}.note-card p{white-space:normal;line-height:1.55;color:#dce4df}.note-card footer,.tagline{display:block;color:var(--muted);font-size:.75rem;margin-top:16px}.note-pin{color:var(--accent)}.search-bar{display:flex;gap:10px}.search-bar input{flex:1}.reminder-list{display:grid}.reminder-row{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--line)}.reminder-row.due{background:rgba(136,168,143,.06);margin:0 -10px;padding:15px 10px;border-radius:12px}.reminder-icon{width:42px;height:42px;border-radius:13px;background:rgba(136,168,143,.13);display:grid;place-items:center;color:var(--accent2)}.channel-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.channel-tags span{font-size:.68rem;padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}
@media(max-width:1100px){.week-grid{grid-template-columns:repeat(2,1fr)}.notes-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.calendar-toolbar{align-items:flex-end}.calendar-toolbar>div:last-child{flex-wrap:wrap;justify-content:flex-end}.calendar-month{overflow-x:auto;grid-template-columns:repeat(7,minmax(105px,1fr))}.day-cell{min-height:105px}.weekday{min-width:105px}.week-grid{grid-template-columns:1fr}.notes-grid{grid-template-columns:1fr}.reminder-box{align-items:flex-start}.search-bar{flex-direction:column}.agenda-row{align-items:flex-start}}

/* NIVILO PHASE 3.1 - KALENDER KOMFORT */
.event-pill{position:relative;background:color-mix(in srgb,var(--event-color,#88A88F) 18%,transparent);border-left:3px solid var(--event-color,#88A88F);padding-left:9px}.event-pill i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--event-color,#88A88F);margin-right:5px}.week-event{border-left:4px solid var(--event-color,#88A88F);background:color-mix(in srgb,var(--event-color,#88A88F) 11%,#151b18)}.week-event small{color:var(--muted);font-size:.68rem}.colored-event{border-left:4px solid var(--event-color,#88A88F);padding-left:12px}.category-dot{width:11px;height:11px;border-radius:50%;display:inline-block;flex:0 0 11px}.date-time-grid{display:grid;grid-template-columns:1.35fr 1fr 1.35fr 1fr;gap:12px}.date-time-grid input[type=date],.date-time-grid input[type=time]{min-height:48px}.repeat-box{border:1px solid var(--line)!important;border-radius:16px;padding:0!important;background:#151a17}.repeat-box summary{padding:15px 16px!important;border:0!important}.repeat-content{display:grid;gap:14px;padding:0 16px 16px}.weekday-checks{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.weekday-checks label{display:block!important}.weekday-checks input{position:absolute;opacity:0;pointer-events:none}.weekday-checks span{display:grid;place-items:center;height:42px;border:1px solid var(--line);border-radius:12px;background:#111513;color:var(--muted);cursor:pointer;font-weight:800}.weekday-checks input:checked+span{background:var(--accent);border-color:var(--accent);color:#111513}.tiny-copy{font-size:.78rem;margin:0}.category-form-row{display:grid;grid-template-columns:minmax(180px,1fr) 100px auto;gap:12px;align-items:end}.color-picker{min-height:48px!important;padding:5px!important;cursor:pointer}.color-picker.mini{width:48px!important;height:36px!important;min-height:36px!important;border-radius:10px!important}.category-manager{display:grid;gap:8px;margin-top:22px}.category-row{display:grid;grid-template-columns:18px 1fr 54px 38px;gap:10px;align-items:center;border:1px solid var(--line);background:#151b18;padding:10px 12px;border-radius:14px}.category-row form{margin:0}.agenda-date{border:1px solid var(--line)}
@media(max-width:900px){.date-time-grid{grid-template-columns:1fr 1fr}.weekday-checks{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.date-time-grid{grid-template-columns:1fr 1fr}.category-form-row{grid-template-columns:1fr 90px}.category-form-row .btn{grid-column:1/-1}.weekday-checks{grid-template-columns:repeat(4,1fr)}}
