/* STUDIO.27 — airy daylight and quiet midnight */
:root{--ink:#24304b;--muted:#7a859c;--accent:#586ce5;--accent-dark:#4055c8;--accent-soft:#eff1ff;--ground:#f6f8fd;--paper:#fff;--line:#e8ecf5;--blue:#4387df;--blue-soft:#edf5ff;--sale:#538fea;--purchase:#e79a50;--expense:#c87a97;--profit:#8470ce;--radius:20px;--control-radius:11px;--title:28px;--number:30px;color-scheme:light}
body{background:radial-gradient(ellipse at 80% 0,#f0f3ff 0,transparent 48%),var(--ground);letter-spacing:-.15px}.sidebar{border-right:1px solid var(--line);padding-top:34px}.brand{font-size:26px;letter-spacing:-1.5px}.brand-symbol i{border-radius:3px}.brand-symbol i:last-child{background:#aab5f2}.nav-item{min-height:50px;border-radius:13px;transition:background .18s,color .18s}.nav-item.active{background:linear-gradient(100deg,#edf0ff,#f5f6ff);color:var(--accent)}.nav-item:hover{background:var(--accent-soft)}.brand-sub{letter-spacing:.2px}.topbar{background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.content{max-width:1620px;padding-top:34px}.page-heading{margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--accent);font-weight:750;margin-bottom:8px}.panel{border:1px solid var(--line);box-shadow:0 6px 28px #2e467204;border-radius:var(--radius);overflow:hidden}.panel-header{padding:22px 24px;border-bottom-color:var(--line)}.btn{box-shadow:none;font-size:13px;min-height:42px;padding-inline:16px}.btn.primary{background:var(--accent);border-color:var(--accent);box-shadow:0 5px 12px #586ce51a}.btn.primary:hover{background:var(--accent-dark)}.btn:hover:not(.primary){border-color:#c6cfee;background:var(--accent-soft)}.icon-btn:hover{background:var(--accent-soft)}.theme-toggle{font-size:22px;color:var(--ink);border:1px solid var(--line);background:var(--paper)}.dashboard-tools{display:flex;justify-content:space-between;align-items:center;margin:-4px 0 20px;gap:12px}.premium-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.premium-metrics .metric{position:relative;padding:22px;border:1px solid transparent;border-radius:20px;box-shadow:none;overflow:hidden}.metric-sale{background:linear-gradient(140deg,#eff6ff,#f4f8ff)!important;border-color:#dfeaff!important}.metric-purchase{background:linear-gradient(140deg,#fff6e9,#fffaf3)!important;border-color:#f9e9d2!important}.metric-expense{background:linear-gradient(140deg,#fff0f5,#fff7fa)!important;border-color:#f7e1eb!important}.metric-profit{background:linear-gradient(140deg,#f1efff,#f9f7ff)!important;border-color:#e7e2fc!important}.premium-metrics .metric-label{font-size:13px;font-weight:600}.metric-top{margin-bottom:12px}.premium-metrics .big-money{font-size:clamp(22px,2.05vw,32px);letter-spacing:-1.2px;white-space:nowrap;font-weight:780}.premium-metrics .unit{font-size:13px;font-weight:500;margin-left:3px}.metric-sale .metric-glyph{color:var(--sale);background:#e1edff}.metric-purchase .metric-glyph{color:#b67b39;background:#fcebd4}.metric-expense .metric-glyph{color:var(--expense);background:#f9e1eb}.metric-profit .metric-glyph{color:var(--profit);background:#e9e3fd}.metric-foot{font-size:11px;margin-top:8px;color:var(--muted)}.metric-next{display:flex;justify-content:space-between;align-items:center;gap:6px;border-top:1px solid #2839540b;padding-top:14px;margin-top:18px;font-size:11px}.metric-next strong{font-size:13px;font-variant-numeric:tabular-nums}.forecast-panel{margin-bottom:24px}.forecast-panel .panel-header{border-bottom:0;padding-bottom:8px}.forecast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:12px 24px 22px}.forecast-grid>div{display:grid;align-content:start;gap:6px}.forecast-grid span{font-size:12px;color:var(--muted)}.forecast-grid strong{font-size:21px;letter-spacing:-.8px;font-weight:750}.forecast-grid small{font-size:10px;color:var(--muted)}.forecast-profit b{color:var(--profit);font-size:14px}.forecast-foot{border-top:1px solid var(--line);padding:13px 24px;display:flex;justify-content:space-between;align-items:start;gap:20px;font-size:11px;color:var(--muted);background:color-mix(in srgb,var(--ground) 55%,var(--paper))}.forecast-foot details{max-width:430px;text-align:right}.forecast-foot summary{font-size:11px;color:var(--accent);cursor:pointer}.forecast-foot p{padding-top:10px;text-align:left;font-size:11px;line-height:1.8}.trend-panel{margin-bottom:24px}.trend-panel .panel-header{border-bottom:0;padding-bottom:2px}.chart-legend{display:flex;gap:15px;font-size:11px;color:var(--muted);flex-wrap:wrap}.chart-legend span{display:flex;align-items:center;gap:6px}.chart-legend span::before{content:'';width:7px;height:7px;border-radius:3px;background:var(--sale)}.chart-legend .legend-purchase::before{background:var(--purchase)}.chart-legend .legend-expense::before{background:var(--expense)}.chart-legend .legend-profit::before{background:var(--profit)}.chart-area{padding:12px 24px 0}.chart-area svg{width:100%;height:auto;display:block;max-height:260px;overflow:visible}.chart-grid{stroke:var(--line);stroke-dasharray:3 5}.chart-sale{fill:var(--sale);opacity:.85}.chart-purchase{fill:var(--purchase);opacity:.75}.chart-expense{fill:var(--expense);opacity:.75}.chart-profit{fill:none;stroke:var(--profit);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:var(--paper);stroke:var(--profit);stroke-width:2}.chart-label{font-size:12px;fill:var(--muted);font-family:var(--font)}.chart-data{padding:0 24px 16px}.chart-data summary{font-size:11px;color:var(--muted);cursor:pointer}.chart-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.chart-data-grid button{display:grid;text-align:left;padding:14px;gap:5px;border:1px solid var(--line);background:var(--ground);border-radius:12px;font-size:11px}.chart-data-grid strong{margin-bottom:3px}.chart-data-grid span{color:var(--muted)}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.directory-card{padding:22px}.company-card-head{display:flex;align-items:center;gap:12px}.company-card-head h2{font-size:16px;overflow-wrap:anywhere}.company-monogram{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-size:18px;font-weight:700;flex:none}.contact-lines{margin:24px 0 16px;display:grid;gap:12px}.contact-lines>div{display:flex;justify-content:space-between;gap:8px;font-size:12px}.contact-lines dt{color:var(--muted)}.contact-lines dd{margin:0;overflow-wrap:anywhere;text-align:right}.company-card-footer{padding-top:12px;border-top:1px solid var(--line)}.company-card-footer .btn{padding-left:0;font-size:12px}.company-contact-strip{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:18px 22px;margin:16px 0 24px}.company-contact-strip>div{display:grid;gap:5px}.company-contact-strip span{font-size:10px;color:var(--muted)}.company-contact-strip strong{font-size:13px;font-weight:600}.company-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.company-stat{border-radius:16px}.company-stat>strong{font-size:22px}.company-balances{border-radius:14px;background:var(--accent-soft)}.company-table th:first-child{width:25%}.company-table th,.company-table td{font-size:12px;padding:16px 12px}.company-name-button{color:var(--accent)}.company-month-table{font-size:12px}.company-month-table th,.company-month-table td{padding:14px 12px}.company-month-table th:first-child{width:22%}.company-month-table .selected-month{background:var(--accent-soft)}.ledger-mode-tabs{border-bottom-color:var(--line)}.tab{border-radius:10px;color:var(--muted);font-size:13px}.tab.active{background:var(--accent);color:#fff}.recent-table th,.ledger-table th,.company-table th,.company-month-table th{background:var(--ground);color:var(--muted)}.table-foot{color:var(--muted);background:var(--paper);font-size:11px}.badge{border-radius:7px;font-size:10px}.badge.green{background:#eaf2ff;color:#417bc5}.badge.blue{background:#fff3e2;color:#a67537}.badge.amber{background:#fff4dd;color:#9a722f}.badge.red{background:#fbecef;color:#bd6074}.tax-panel{background:linear-gradient(145deg,#eff2ff,#f8f9ff);color:var(--ink);border:1px solid #e3e8fa;border-radius:20px}.tax-panel .badge{background:var(--paper);color:var(--accent)}.tax-panel p{color:var(--muted)}.tax-panel .btn{color:var(--accent);background:var(--paper);border-color:var(--line)}.notice{border-radius:13px;background:var(--accent-soft);border-color:var(--line);font-size:12px;color:var(--muted)}.period-picker{background:var(--paper);border-radius:13px;border-color:var(--line)}.search-input .input{background:var(--paper);border-color:var(--line);border-radius:12px;font-size:13px}.input,input,select,textarea{background:var(--paper);color:var(--ink);border-color:var(--line)}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 100px #13234526}dialog::backdrop{background:#101b3444;backdrop-filter:blur(3px)}.dialog-header,.dialog-footer{background:var(--paper);border-color:var(--line)}.form-summary{background:var(--ground);border-color:var(--line)}details{border-color:var(--line)}.segmented{background:var(--ground);border-color:var(--line)}.segmented button{background:transparent;color:var(--muted);font-size:13px}.segmented button.selected{background:var(--paper);color:var(--accent);box-shadow:0 2px 6px #1c315f0a}.small-note{margin-top:18px}.page-footer{color:var(--muted)}#auth-overlay{position:fixed;inset:0;z-index:2000;background:radial-gradient(ellipse at 20% 0,#eaf0ff,transparent 65%),var(--ground);display:grid;place-items:center;padding:24px}.auth-locked>.sidebar,.auth-locked>.workspace,.auth-locked>.mobile-nav{visibility:hidden}.auth-card{background:var(--paper);padding:40px;border:1px solid var(--line);border-radius:26px;box-shadow:0 30px 100px #273d6f0a;width:min(100%,410px);display:grid;gap:22px}.auth-brand{font-size:25px;font-weight:850;letter-spacing:-1px;color:var(--accent)}.auth-brand span{display:block;font-size:9px;letter-spacing:2px;color:var(--muted);font-weight:500;margin-top:3px}.auth-card h1{font-size:23px}.auth-card small{font-size:10px}.auth-card input{width:100%}
[data-theme=dark]{color-scheme:dark;--ink:#e6eaf6;--muted:#929db6;--accent:#9caaff;--accent-dark:#b8c2ff;--accent-soft:#2a3153;--ground:#141a29;--paper:#1d2538;--line:#303a50;--blue-soft:#28374e;--sale:#7eafff;--purchase:#e3ad74;--expense:#d48fa9;--profit:#ad9ced}
[data-theme=dark] body{background:radial-gradient(ellipse at 80% 0,#202b48 0,transparent 55%),var(--ground)}[data-theme=dark] .nav-item.active{background:linear-gradient(100deg,#30395f,#252f49)}[data-theme=dark] .metric-sale{background:linear-gradient(140deg,#243655,#233149)!important;border-color:#354966!important}[data-theme=dark] .metric-purchase{background:linear-gradient(140deg,#40362b,#332f2c)!important;border-color:#544435!important}[data-theme=dark] .metric-expense{background:linear-gradient(140deg,#402d3b,#342b37)!important;border-color:#51394b!important}[data-theme=dark] .metric-profit{background:linear-gradient(140deg,#34304f,#2d2c46)!important;border-color:#453e63!important}[data-theme=dark] .metric-glyph{background:#ffffff0a;color:inherit}[data-theme=dark] .metric-next{border-top-color:#ffffff0e}[data-theme=dark] .btn.primary{color:#171e35;background:#a5b2ff;border-color:#a5b2ff}[data-theme=dark] .tax-panel{background:linear-gradient(145deg,#2b3150,#242b42);border-color:var(--line)}[data-theme=dark] .badge.green{background:#293b57;color:#9fc2ff}[data-theme=dark] .badge.blue{background:#443a2a;color:#dfbc8b}[data-theme=dark] .badge.amber{background:#443b2b;color:#d8bc82}[data-theme=dark] .badge.red{background:#492e3c;color:#e7a1b6}[data-theme=dark] .btn:disabled{background:var(--ground);color:var(--muted)}[data-theme=dark] .error-summary,[data-theme=dark] .error-message{background:#422c38;color:#eca6bc}[data-theme=dark] .task-check,[data-theme=dark] .shop-mark,[data-theme=dark] .summary-box{background:var(--ground);border-color:var(--line)}[data-theme=dark] .debt-row,[data-theme=dark] .fixed-row{background:var(--paper);border-color:var(--line)}[data-theme=dark] .shop-menu{background:var(--paper);border-color:var(--line)}[data-theme=dark] .transaction-avatar{background:var(--accent-soft);color:var(--accent)}[data-theme=dark] .transaction-avatar.purchase,[data-theme=dark] .transaction-avatar.expense{background:#43372e;color:var(--purchase)}
[data-theme=dark] .btn:not(.primary){background:var(--paper);color:var(--ink);border-color:var(--line)}[data-theme=dark] .btn:hover:not(.primary){background:var(--accent-soft);border-color:#58688c}[data-theme=dark] .btn:disabled{background:var(--ground);color:var(--muted)}
@media(min-width:1450px){.content{padding-inline:48px}.premium-metrics .big-money{font-size:32px}}
@media(max-width:1200px){.premium-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-metrics .big-money{font-size:29px}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.forecast-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.company-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.content{padding-top:24px}.topbar{padding-inline:20px;gap:8px}.top-actions{gap:7px}.theme-toggle{min-width:36px;min-height:36px}.topbar #main-add{padding-inline:12px;font-size:12px}.shop-mark{display:none}.dashboard-tools{margin-top:0}.dashboard-tools>span{font-size:10px;max-width:170px}.export-button{font-size:11px;padding-inline:10px;gap:5px}.premium-metrics{gap:12px}.premium-metrics .metric{padding:16px;border-radius:17px}.premium-metrics .big-money{font-size:23px}.premium-metrics .metric-label{font-size:12px}.metric-foot{font-size:9px}.metric-next{display:grid;gap:4px;margin-top:14px;padding-top:11px;font-size:10px}.metric-next strong{font-size:12px}.metric-glyph{width:28px;height:28px}.forecast-grid{padding:14px 20px 20px;gap:22px 12px}.forecast-grid strong{font-size:18px}.forecast-grid small{font-size:9px}.forecast-foot{padding:12px 20px;display:grid;gap:10px;font-size:10px}.forecast-foot details{text-align:left}.panel-header{padding:20px;gap:12px}.panel-header h2{font-size:17px}.trend-panel .panel-header{align-items:start;flex-direction:column;gap:12px}.chart-legend{font-size:10px;gap:12px}.chart-area{padding:6px 12px 0}.chart-data{padding-inline:20px}.chart-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-grid{grid-template-columns:1fr;gap:14px}.directory-card{padding:20px}.company-contact-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:18px}.company-contact-strip .btn{font-size:11px;padding:8px}.company-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.company-stats .company-stat:last-child{grid-column:1/-1}.company-stat>strong{font-size:22px}.company-table td,.company-month-table td{font-size:11px}.mobile-nav{background:color-mix(in srgb,var(--paper) 96%,transparent);border-color:var(--line)}.mobile-nav button.active{background:var(--accent-soft);color:var(--accent)}.mobile-nav button{font-size:10px}.mobile-nav button span{font-size:10px}.ledger-table .ledger-company{font-size:14px}.auth-card{padding:30px}.forecast-panel .eyebrow{font-size:9px}.page-heading h1{font-size:26px}.company-balances{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
