/*
Theme Name: FinancePilot
Theme URI: https://financepilot.dk
Author: FinancePilot
Description: Private, responsive personal finance dashboard with loan planning, budgets and CSV import. Bank/AI integrations require separate approved services.
Version: 1.1.0
Requires at least: 6.2
Requires PHP: 8.0
Text Domain: financepilot
*/
:root{--bg:#091423;--panel:#101f32;--panel2:#172a40;--border:#263a50;--text:#f2f7fc;--muted:#9bb0c6;--mint:#54dfb3;--blue:#659bff;--amber:#f9c36b;--red:#ff7e8c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 system-ui,-apple-system,Segoe UI,Arial,sans-serif}a{color:var(--mint);text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}.shell{max-width:1300px;margin:auto;padding:30px 24px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:28px;border-bottom:1px solid var(--border)}.brand{display:flex;gap:12px;align-items:center;color:var(--text);font-weight:800;font-size:21px;letter-spacing:-.5px}.brandmark{display:grid;place-items:center;background:#1b4b4a;color:var(--mint);height:42px;width:42px;border-radius:14px}.nav{display:flex;gap:20px;align-items:center}.nav a{color:var(--muted)}.nav a:hover{color:var(--text)}.logout{padding:9px 15px;border:1px solid var(--border);border-radius:11px}.eyebrow{color:var(--mint);font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:750}.hero{padding:37px 0 25px;display:flex;align-items:end;justify-content:space-between;gap:20px}.hero h1{font-size:clamp(29px,4vw,45px);letter-spacing:-1.7px;margin:4px 0 6px;line-height:1.15}.muted{color:var(--muted)}.hero p{margin:0}.pill{border:1px solid var(--border);border-radius:99px;padding:9px 13px;color:var(--muted);font-size:12px}.grid{display:grid;gap:16px}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:linear-gradient(145deg,var(--panel),#0e1b2d);border:1px solid var(--border);border-radius:18px;padding:22px;min-width:0}.card h2{font-size:17px;margin:0 0 14px;letter-spacing:-.25px}.metric-label{font-size:13px;color:var(--muted)}.metric-value{font-size:clamp(21px,2.5vw,32px);letter-spacing:-1px;font-weight:750;margin:8px 0 4px;line-height:1.2}.metric-hint{font-size:12px;color:var(--muted)}.mint{color:var(--mint)}.amber{color:var(--amber)}.blue{color:var(--blue)}.section{margin-top:20px}.twocol{grid-template-columns:1.35fr 1fr}.bar{height:11px;background:#283a4d;border-radius:20px;overflow:hidden;margin:18px 0 10px}.bar>span{height:100%;background:linear-gradient(90deg,#2bba93,var(--mint));display:block}.statrow{display:flex;justify-content:space-between;gap:14px;margin:10px 0}.statrow span:first-child{color:var(--muted)}.statrow strong{text-align:right}.notice{padding:14px 16px;border:1px solid #375e5b;background:#143332;border-radius:12px;color:#c9f5e8;margin:15px 0}.warn{border-color:#6a4e2a;background:#302819;color:#ffe6ba}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:12px;font-weight:650;color:var(--muted);padding:12px 10px;border-bottom:1px solid var(--border)}td{padding:13px 10px;border-bottom:1px solid var(--border)}tr:last-child td{border-bottom:0}.btn{display:inline-block;background:var(--mint);color:#08211d;border:0;border-radius:11px;padding:10px 16px;font-weight:750}.btn.secondary{background:var(--panel2);border:1px solid var(--border);color:var(--text)}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.field{display:flex;flex-direction:column;gap:6px;margin:11px 0}.field label{font-size:13px;color:var(--muted)}.field input,.field select{background:#0b1727;border:1px solid #354b62;border-radius:10px;padding:10px 12px;color:var(--text);width:100%;min-width:0}.field input:focus{outline:2px solid var(--mint);outline-offset:1px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.foot{border-top:1px solid var(--border);margin-top:40px;padding:24px 0;color:var(--muted);font-size:12px}.locked{min-height:75vh;display:grid;place-items:center}.loginbox{width:min(100%,440px)}.loginbox h1{font-size:30px}.loginbox input{background:#0b1727!important;border:1px solid var(--border)!important;color:white!important;border-radius:9px;padding:11px!important;width:100%}.loginbox label{display:block;margin-top:14px;color:var(--muted)}.loginbox input[type=checkbox]{width:auto}.loginbox input[type=submit]{background:var(--mint)!important;color:#08211d!important;font-weight:800;margin-top:15px}.small{font-size:12px}.split{display:flex;justify-content:space-between;align-items:center;gap:10px}.site-content{max-width:850px;margin:40px auto}.site-content h1{font-size:36px}.site-content a{color:var(--mint)}@media(max-width:900px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.twocol{grid-template-columns:1fr}.nav{gap:10px}}@media(max-width:560px){.shell{padding:17px}.topbar{padding-bottom:16px}.nav a:not(.logout){display:none}.hero{padding-top:26px;display:block}.hero .pill{display:inline-block;margin-top:15px}.metrics{grid-template-columns:1fr 1fr;gap:9px}.card{padding:15px;border-radius:14px}.metric-value{font-size:23px}.formgrid{grid-template-columns:1fr}.statrow{font-size:13px}}

/* FinancePilot 1.1 private login landing */
body:not(.logged-in) .shell{max-width:none;padding:0}body:not(.logged-in) .foot{display:none}.fp-landing{min-height:100vh;padding:32px clamp(22px,5.5vw,100px) 24px;background:radial-gradient(ellipse at 22% 45%,rgba(24,93,100,.19),transparent 46%),radial-gradient(ellipse at 90% 5%,rgba(45,76,135,.13),transparent 40%),#091423;display:flex;flex-direction:column}.fp-landing-top,.fp-landing-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.fp-logo{color:#fff;font-size:23px;font-weight:800;letter-spacing:-1px;display:flex;align-items:center;gap:9px}.fp-logo span:not(.fp-logo-icon){color:#60e0b5}.fp-logo-icon{display:inline-grid;place-items:center;width:39px;height:39px;background:#1b514d;border:1px solid #287566;border-radius:12px;color:#6aebbf;font-size:24px}.fp-private{font-size:12px;color:#a9bdd0;border:1px solid #294056;border-radius:50px;padding:9px 14px}.fp-green-dot{display:inline-block;background:#57e6ac;width:7px;height:7px;border-radius:50%;margin-right:8px;box-shadow:0 0 9px #4de5ab}.fp-landing-grid{flex:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(350px,440px);align-items:center;gap:clamp(35px,7vw,130px);max-width:1200px;width:100%;margin:auto;padding:50px 0}.fp-kicker{color:#66e1bb;font-size:12px;font-weight:800;letter-spacing:2.4px}.fp-sparkle{font-size:20px;margin-right:8px}.fp-intro h1{font-size:clamp(44px,5.3vw,76px);line-height:1.1;letter-spacing:-3.5px;margin:22px 0}.fp-intro h1 span{background:linear-gradient(90deg,#5ee3b8,#7cafff);background-clip:text;-webkit-background-clip:text;color:transparent}.fp-intro>p{font-size:17px;color:#a9bed2;max-width:540px;line-height:1.85}.fp-features{display:grid;gap:23px;margin-top:40px}.fp-features>div{display:flex;gap:16px;align-items:center}.fp-feature-icon{height:45px;width:45px;border-radius:14px;background:#162e40;border:1px solid #294b58;display:grid;place-items:center;color:#62e1bb;font-size:24px;flex-shrink:0}.fp-features strong{display:block;font-size:14px;color:#e9f3fb}.fp-features small{display:block;color:#8fa7bc;font-size:13px;margin-top:2px}.fp-login-panel{border:1px solid #30475e;border-radius:24px;background:linear-gradient(145deg,#15283c,#101d30);padding:clamp(26px,3vw,40px);box-shadow:0 35px 90px #0005}.fp-panel-top{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:750;letter-spacing:1.8px;color:#6ce0bc}.fp-lock{width:36px;height:36px;background:#1c453f;border-radius:11px;display:grid;place-items:center;font-size:22px}.fp-login-panel h2{font-size:29px;letter-spacing:-1px;margin:24px 0 4px}.fp-login-panel p{color:#a5b8cb;margin:0 0 28px;font-size:14px}.fp-login-panel label{display:block;color:#cbd9e7;font-weight:650;font-size:13px;margin:17px 0 8px}.fp-login-panel input{width:100%;padding:14px 15px;background:#0b1829;border:1px solid #344b62;border-radius:11px;color:white;outline:none}.fp-login-panel input:focus{border-color:#61dcb5;box-shadow:0 0 0 3px #61dcb521}.fp-login-panel input::placeholder{color:#70869b}.fp-login-button{margin-top:27px;background:linear-gradient(90deg,#56ddb0,#73e7c1);color:#09251e;font-weight:800;width:100%;padding:14px 16px;border:0;border-radius:11px;display:flex;align-items:center;justify-content:center;gap:12px}.fp-login-button span{font-size:20px}.fp-forgot{display:block;text-align:center;color:#9eb8cf;font-size:12px;margin:19px 0 28px}.fp-panel-foot{border-top:1px solid #304458;padding-top:20px;color:#829db2;font-size:11px;text-align:center}.fp-panel-foot span{color:#60dfb6}.fp-login-error{border:1px solid #a35a63;background:#482b38;color:#ffe0e0;padding:10px 12px;border-radius:10px;font-size:13px}.fp-landing-bottom{font-size:12px;color:#7790a5;border-top:1px solid #22374b;padding-top:20px}@media(max-width:850px){.fp-landing-grid{grid-template-columns:1fr;max-width:520px;gap:32px}.fp-intro h1{font-size:48px}.fp-features{margin-top:22px;gap:13px}.fp-intro>p{font-size:15px}.fp-landing{padding:22px}.fp-landing-grid{padding:40px 0}.fp-private{font-size:10px}}@media(max-width:420px){.fp-intro h1{font-size:42px;letter-spacing:-2px}.fp-login-panel{padding:23px}.fp-landing-bottom{font-size:10px}}
