:root{--bg:#f5f3fb;--ink:#14162b;--muted:#757991;--pink:#ff5d98;--pink2:#ff8eb7;--rose:#c7859d;--violet:#8b63ff;--blue:#4e91ff;--green:#39b86a;--amber:#f5a623;--line:rgba(255,255,255,.72);--glass:rgba(255,255,255,.58);--glass-strong:rgba(255,255,255,.76);--shadow:0 22px 60px rgba(66,52,99,.10);--radius:24px}
*{box-sizing:border-box}html{min-height:100%;background:#eeeaf6}body{margin:0;color:var(--ink);font:14px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;min-height:100vh}.admin-body{display:grid;grid-template-columns:220px 1fr;gap:18px;padding:16px;background:radial-gradient(circle at 15% 5%,#ffe7f2 0,transparent 28%),radial-gradient(circle at 88% 14%,#e6e7ff 0,transparent 26%),linear-gradient(145deg,#fbf7fa 0%,#f2f2fb 55%,#f8eef7 100%);overflow-x:hidden}.admin-aurora{position:fixed;pointer-events:none;border-radius:50%;filter:blur(80px);opacity:.42;z-index:0}.aurora-one{width:420px;height:420px;background:#ffc8dc;left:30%;top:-230px}.aurora-two{width:380px;height:380px;background:#cdd6ff;right:-130px;top:28%}.aurora-three{width:300px;height:300px;background:#ead8ff;left:38%;bottom:-180px}.glass-panel,.glass-card{background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.48));border:1px solid rgba(255,255,255,.86);box-shadow:var(--shadow);backdrop-filter:blur(28px) saturate(140%);-webkit-backdrop-filter:blur(28px) saturate(140%)}
.sidebar{position:sticky;z-index:10;top:16px;height:calc(100vh - 32px);border-radius:28px;padding:25px 16px 18px;display:flex;flex-direction:column;overflow:hidden}.brand{text-decoration:none;color:var(--ink);padding:6px 15px 22px;display:block}.brand-script{display:block;font:italic 31px Georgia,serif;color:#ff4f91;letter-spacing:-1.2px}.brand small{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#85859a;margin-top:2px}.side-nav{display:grid;gap:6px;margin-top:12px}.side-nav a{display:flex;align-items:center;gap:12px;color:#50556f;text-decoration:none;padding:12px 14px;border-radius:14px;font-weight:500;position:relative;transition:.25s}.side-nav a:hover{background:rgba(255,255,255,.65);color:#24263d;transform:translateX(2px)}.side-nav a.active{background:linear-gradient(135deg,#ff72a8,#f68cb7);color:#fff;box-shadow:0 11px 27px rgba(245,89,147,.28)}.nav-icon{width:20px;text-align:center;font-size:17px}.side-nav i{margin-left:auto;background:#fff;color:#ff5d98;font-style:normal;font-size:9px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%}.sidebar-profile{margin-top:auto;border:1px solid rgba(255,255,255,.8);background:rgba(255,255,255,.47);padding:10px;border-radius:17px;display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:9px}.avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#ff8fb6,#d99bb8);color:#fff;font-weight:700}.sidebar-profile b{font-size:11px;display:block}.sidebar-profile small{font-size:8px;color:#83879d}.chev{color:#979aad}.logout{text-decoration:none;color:#74798f;margin-top:12px;padding:10px 14px;font-size:11px}.mobile-nav{display:none}
.admin-main{position:relative;z-index:1;min-width:0;padding:10px 10px 38px}.topbar{height:66px;display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.page-heading small{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:#989aae}.page-heading h1{font-size:24px;margin:4px 0 0;letter-spacing:-.5px}.top-actions{display:flex;align-items:center;gap:10px}.top-search{width:290px;height:42px;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.48);display:flex;align-items:center;gap:8px;border-radius:999px;padding:0 14px;backdrop-filter:blur(18px)}.top-search input{border:0;background:transparent;outline:0;width:100%;color:#4c5068}.round-action{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.58);border:1px solid rgba(255,255,255,.8);display:grid;place-items:center;text-decoration:none;color:#646881;font-size:16px;transition:.2s}.round-action:hover{transform:translateY(-2px);background:#fff}
.welcome-row{display:flex;justify-content:space-between;align-items:flex-end;padding:10px 4px 18px}.welcome-row h2{font-size:24px;margin:0 0 5px}.welcome-row p{margin:0;color:var(--muted);font-size:12px}.soft-button,.secondary{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#5f6279;background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.85);padding:10px 14px;border-radius:999px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.kpi-card{border-radius:20px;padding:18px;display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;min-height:112px;transition:.25s}.kpi-card:hover{transform:translateY(-4px);box-shadow:0 28px 65px rgba(71,54,99,.14)}.kpi-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;font-size:20px;background:rgba(255,255,255,.55);box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}.kpi-card.pink .kpi-icon{color:#ff4386;background:radial-gradient(circle,#fff 0,#ffe2ee 72%)}.kpi-card.blue .kpi-icon{color:#327eea;background:radial-gradient(circle,#fff 0,#e1efff 72%)}.kpi-card.green .kpi-icon{color:#2ca45b;background:radial-gradient(circle,#fff 0,#e0f5e7 72%)}.kpi-card.violet .kpi-icon{color:#8557ed;background:radial-gradient(circle,#fff 0,#ede7ff 72%)}.kpi-card small{display:block;color:#777b91;font-size:10px}.kpi-card strong{display:block;font-size:25px;margin:4px 0 5px}.kpi-card strong.money{font-size:21px}.kpi-card em{font-style:normal;font-size:9px;color:#9b9eaf}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:14px}.dash-left{display:grid;gap:14px;min-width:0}.dash-right{display:grid;gap:14px;align-content:start}.glass-card{border-radius:var(--radius);padding:18px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.card-head>div>small,.card-head>small{font-size:8px;text-transform:uppercase;letter-spacing:.16em;color:#9b9daf}.card-head h3{font-size:15px;margin:3px 0 0}.card-head a{font-size:10px;text-decoration:none;color:#6b6f86}.select-pill,.today-pill,.date-chip,.count-pill{font-size:9px;color:#777b91;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.5);padding:7px 10px;border-radius:999px;text-decoration:none}.chart-card{min-height:340px}.chart-wrap{position:relative;padding-left:35px;padding-top:5px}.line-chart{width:100%;height:230px;overflow:visible}.line-chart line{stroke:rgba(121,125,151,.13);stroke-width:1}.chart-line{fill:none;stroke:#ff6b9f;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 7px 8px rgba(255,86,145,.18))}.chart-area{fill:url(#chartFill)}.line-chart circle{fill:#ff6b9f;stroke:#fff;stroke-width:3}.y-axis{position:absolute;left:0;top:15px;height:186px;display:flex;flex-direction:column;justify-content:space-between;color:#9b9eaf;font-size:8px}.x-axis{display:flex;justify-content:space-between;color:#9b9eaf;font-size:8px;padding:0 6px}.recent-list{display:grid}.recent-order{display:grid;grid-template-columns:42px minmax(0,1fr) 62px auto;align-items:center;gap:10px;text-decoration:none;color:inherit;padding:10px 0;border-top:1px solid rgba(141,132,158,.10)}.recent-order:first-child{border-top:0}.order-thumb{width:38px;height:38px;border-radius:11px;background:linear-gradient(145deg,#fff1f6,#efeaff);display:grid;place-items:center;color:#c86e95;font:17px Georgia}.order-copy b{display:block;font-size:11px}.order-copy small{display:block;color:#9699aa;font-size:9px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-date{font-size:9px;color:#9396a8}.status{display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border-radius:999px;font-style:normal;font-size:8px;white-space:nowrap}.status.new{background:#ffe7f0;color:#de4d7d}.status.in_work{background:#eee9ff;color:#7650d0}.status.confirmed{background:#e4f4e9;color:#338054}.status.done{background:#dff3e6;color:#2f7950}.status.cancelled{background:#ececf1;color:#7b7d89}.bottom-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:14px}.category-chart{display:grid;grid-template-columns:125px 1fr;align-items:center;gap:18px}.donut{width:120px;height:120px;border-radius:50%;background:conic-gradient(#ff69a0 0 var(--a),#c391ff var(--a) calc(var(--a) + var(--b)),#70b9ff calc(var(--a) + var(--b)) calc(var(--a) + var(--b) + var(--c)),#f4dbe5 0);display:grid;place-items:center;position:relative}.donut:after{content:"";position:absolute;inset:23px;border-radius:50%;background:rgba(255,255,255,.88);box-shadow:inset 0 0 15px rgba(89,67,100,.04)}.donut span,.donut small{position:absolute;z-index:1}.donut span{font-size:20px;font-weight:700;transform:translateY(-6px)}.donut small{font-size:7px;color:#9699a7;transform:translateY(12px)}.legend{display:grid;gap:9px}.legend>div{display:grid;grid-template-columns:8px 1fr auto;gap:7px;align-items:center;font-size:9px}.legend-dot{width:7px;height:7px;border-radius:50%;background:#ff69a0}.dot-2{background:#c391ff}.dot-3{background:#70b9ff}.dot-4{background:#f4b66e}.dot-5{background:#9adcc3}.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.preview-grid a{position:relative;border-radius:14px;overflow:hidden;min-height:100px}.preview-grid img{width:100%;height:100%;min-height:100px;object-fit:cover;display:block;transition:.4s}.preview-grid a:hover img{transform:scale(1.06)}.preview-grid span{position:absolute;left:7px;right:7px;bottom:7px;color:#fff;font-size:8px;text-shadow:0 1px 8px rgba(0,0,0,.45);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini-calendar .card-head{margin-bottom:12px}.mini-week,.mini-days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.mini-week span{font-size:8px;color:#999cab;padding:5px 0}.mini-days span{font-size:9px;padding:7px 0;border-radius:50%;position:relative}.mini-days .muted-day{opacity:.32}.mini-days .today{background:linear-gradient(145deg,#ff75a8,#fb8db6);color:#fff;box-shadow:0 7px 18px rgba(251,100,158,.3)}.mini-days .busy:not(.today):after{content:"";position:absolute;bottom:2px;left:50%;width:3px;height:3px;border-radius:50%;background:#ff6f9e;transform:translateX(-50%)}.today-list{display:grid}.today-list a{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:start;text-decoration:none;color:inherit;padding:10px 0;border-bottom:1px solid rgba(125,119,145,.1)}.event-dot{width:7px;height:7px;border-radius:50%;margin-top:5px;background:#ff6b9f}.today-list b{display:block;font-size:10px}.today-list small{display:block;color:#999cab;font-size:8px;margin-top:2px}.today-list time{font-size:9px;color:#676b82}.empty-today{text-align:center;padding:25px 5px 16px;color:#8e91a4}.empty-today>span{font-size:23px;color:#ff77a7;display:block}.empty-today b{display:block;font-size:11px;margin:4px}.empty-today small{font-size:8px}.card-link{display:block;text-align:right;text-decoration:none;color:#6c7085;font-size:9px;margin-top:10px}.magic-card{min-height:190px;border-radius:24px;padding:21px;position:relative;overflow:hidden;background:linear-gradient(135deg,#ffe4ef 0%,#ffd4e6 55%,#f8bfd7 100%);box-shadow:0 20px 45px rgba(215,103,148,.15)}.magic-card small{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#bd6688}.magic-card h3{font-size:17px;line-height:1.35;color:#9d2f59;margin:9px 0}.magic-card p{font-size:9px;color:#9f7182;width:68%;line-height:1.5}.magic-card a{font-size:9px;color:#a63962;text-decoration:none;font-weight:600}.magic-cake{position:absolute;right:-3px;bottom:-6px;font-size:74px;filter:drop-shadow(0 12px 12px rgba(174,91,120,.18))}
.page-intro{display:flex;justify-content:space-between;align-items:center;margin:5px 4px 18px}.page-intro h2{font-size:21px;margin:0 0 4px}.page-intro p{font-size:10px;color:#8e91a5;margin:0}.filters{display:flex;align-items:center;gap:9px;margin-bottom:14px;padding:10px;border-radius:18px}.filter-search{display:flex;align-items:center;gap:7px;flex:1}.filters input,.filters select,.form-card input,.form-card select,.form-card textarea,.portfolio-add input,.portfolio-add select,.portfolio-admin-card input,.portfolio-admin-card select{border:1px solid rgba(196,190,207,.42);background:rgba(255,255,255,.64);border-radius:11px;padding:10px 11px;font:inherit;outline:none;color:#4c5066}.filters input{border:0;background:transparent;width:100%}.filters select{min-width:145px}.filters button,.primary{border:0;background:linear-gradient(135deg,#ff6fa4,#ef89b2);color:#fff;border-radius:11px;padding:10px 16px;cursor:pointer;box-shadow:0 9px 22px rgba(244,97,154,.18)}.table-card{padding:0;overflow:hidden}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px;border-bottom:1px solid rgba(129,125,145,.09)}th{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#9a9dae}td{font-size:10px}td small{display:block;color:#9da0af;font-size:8px;margin-top:3px}tbody tr{cursor:pointer;transition:.2s}tbody tr:hover{background:rgba(255,255,255,.5)}.empty-cell{text-align:center!important;padding:35px!important;color:#999caf}.edit-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:14px}.order-topline{display:flex;justify-content:space-between;margin:0 3px 12px}.order-topline>a{font-size:10px;color:#6d7188;text-decoration:none}.form-card label,.portfolio-add label,.portfolio-admin-card label{display:grid;gap:5px;margin-bottom:11px;color:#85899e;font-size:9px}.form-card input,.form-card select,.form-card textarea{width:100%}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.actions{display:flex;gap:9px;flex-wrap:wrap}.primary{font-weight:600}.details dl{display:grid;grid-template-columns:130px 1fr;gap:0}.details dt,.details dd{padding:10px 0;border-bottom:1px solid rgba(130,125,145,.09);font-size:9px}.details dt{color:#989bad}.details dd{margin:0;color:#4d5168}.comment-box{line-height:1.6}.order-number{font-size:11px;color:#9b9eae}.cal-head{display:flex;justify-content:center;align-items:center;gap:24px;margin-bottom:12px;padding:12px}.cal-head a{text-decoration:none;color:#666a83}.calendar{display:grid;grid-template-columns:repeat(7,1fr);padding:0;overflow:hidden}.dow{text-align:center;padding:10px;font-size:8px;color:#999cab;background:rgba(255,255,255,.25)}.day{min-height:115px;padding:8px;border-top:1px solid rgba(130,125,145,.09);border-right:1px solid rgba(130,125,145,.09);font-size:9px}.day.other{opacity:.35}.cal-order{display:block;text-decoration:none;margin-top:5px;padding:6px;border-radius:8px;background:#ffe6ef;color:#a14568;font-size:8px}.cal-order.in_work{background:#eee9ff;color:#6e55bb}.cal-order.confirmed,.cal-order.done{background:#e3f3e8;color:#377653}.report-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px}.report-kpis>div{display:flex;flex-direction:column;gap:5px}.report-kpis small{color:#999caf;font-size:9px}.report-kpis strong{font-size:25px}.cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.report-row{display:grid;grid-template-columns:1fr auto;gap:7px;padding:11px 0;border-bottom:1px solid rgba(130,125,145,.1);font-size:10px}.report-row i{grid-column:1/-1;height:4px;background:linear-gradient(90deg,#ff72a5,#c99bff);border-radius:10px}.portfolio-form{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 90px auto;gap:8px;align-items:end}.portfolio-form label{margin:0}.portfolio-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.portfolio-admin-card>img{width:100%;height:190px;object-fit:cover;border-radius:16px;margin-bottom:12px}.portfolio-admin-card form{display:grid;gap:7px}.portfolio-admin-card .check{display:flex;align-items:center;gap:7px}.portfolio-admin-card .check input{width:auto}.danger{border:1px solid #f1c9d6;background:rgba(255,255,255,.55);color:#bc5578;padding:9px;border-radius:10px;cursor:pointer}.empty-state{font-size:9px;color:#9a9dae}.muted{color:#999caf}
.login-body{display:grid;place-items:center;min-height:100vh;background:linear-gradient(145deg,#faf3f8,#eff0fb);overflow:hidden;position:relative}.login-orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55}.orb-a{width:420px;height:420px;background:#ffc8df;left:-140px;top:-100px}.orb-b{width:400px;height:400px;background:#c9d2ff;right:-120px;bottom:-150px}.login-card{position:relative;z-index:1;width:min(390px,calc(100% - 32px));padding:35px;border-radius:30px;text-align:center}.login-logo{width:58px;height:58px;display:grid;place-items:center;border-radius:19px;margin:0 auto 7px;background:linear-gradient(145deg,#ff83ae,#e99bc0);color:#fff;font:22px Georgia;box-shadow:0 13px 35px rgba(223,91,144,.23)}.login-card .brand-script{font-size:27px}.login-card h1{font-size:23px;margin:18px 0 4px}.login-card>p{font-size:10px;color:#8d91a5;margin:0 0 19px}.login-card label{text-align:left;display:grid;gap:5px;margin-top:10px}.login-card label span{font-size:8px;color:#9093a6;text-transform:uppercase;letter-spacing:.1em}.login-card input{width:100%;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.57);padding:12px 13px;border-radius:12px;outline:none}.login-card button{width:100%;border:0;margin-top:17px;padding:13px;border-radius:13px;background:linear-gradient(135deg,#ff6ba2,#ec8ab3);color:#fff;font-weight:600;cursor:pointer}.login-note{display:block;margin-top:15px;color:#a0a2b1;font-size:8px}.error{padding:9px;border-radius:10px;background:#ffe8ed;color:#b34c6d;font-size:9px;margin-bottom:10px}
@media(max-width:1180px){.admin-body{grid-template-columns:190px 1fr}.dashboard-grid{grid-template-columns:1fr}.dash-right{grid-template-columns:1fr 1fr 1fr}.magic-card{min-height:230px}.portfolio-form{grid-template-columns:1fr 1fr 1fr}.portfolio-admin-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){body.admin-body{display:block;padding:10px 10px 86px}.sidebar{display:none}.admin-main{padding:0}.topbar{height:58px;margin-bottom:7px}.page-heading small{display:none}.page-heading h1{font-size:21px}.top-search{display:none}.round-action{width:38px;height:38px}.mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;z-index:50;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));padding:7px;border-radius:22px}.mobile-nav a{text-decoration:none;color:#7e8297;display:grid;place-items:center;gap:2px;padding:7px;border-radius:14px}.mobile-nav a span{font-size:16px}.mobile-nav a small{font-size:7px}.mobile-nav a.active{color:#fff;background:linear-gradient(135deg,#ff72a8,#ed8db6)}.welcome-row{align-items:center}.welcome-row h2{font-size:20px}.soft-button{display:none}.kpi-grid{grid-template-columns:1fr 1fr}.kpi-card{min-height:104px;padding:14px}.kpi-icon{width:42px;height:42px}.dashboard-grid{display:block}.dash-left,.dash-right{display:grid;gap:10px}.dash-right{grid-template-columns:1fr 1fr;margin-top:10px}.magic-card{grid-column:1/-1}.bottom-grid{grid-template-columns:1fr}.edit-grid,.cols{grid-template-columns:1fr}.portfolio-form{grid-template-columns:1fr 1fr}.portfolio-admin-grid{grid-template-columns:1fr 1fr}.calendar{overflow:auto}.day{min-height:90px}.table-card{overflow:auto}table{min-width:680px}}
@media(max-width:520px){.admin-body{background:linear-gradient(155deg,#fbf6fa,#f1f1fa)}.top-actions .round-action:first-of-type{display:none}.welcome-row{padding:8px 3px 13px}.welcome-row h2{font-size:18px}.welcome-row p{font-size:10px}.kpi-grid{gap:8px}.kpi-card{display:block;padding:13px;min-height:126px}.kpi-icon{width:39px;height:39px;margin-bottom:9px}.kpi-card strong{font-size:22px}.kpi-card strong.money{font-size:17px}.glass-card{border-radius:20px;padding:14px}.chart-card{min-height:300px}.line-chart{height:195px}.recent-order{grid-template-columns:37px minmax(0,1fr) auto}.recent-order .order-date{display:none}.status{font-size:7px;padding:5px 7px}.dash-right{grid-template-columns:1fr}.category-chart{grid-template-columns:110px 1fr}.donut{width:105px;height:105px}.preview-grid{grid-template-columns:repeat(3,1fr)}.page-intro{align-items:flex-start}.filters{flex-wrap:wrap}.filter-search{flex-basis:100%}.filters select{flex:1}.edit-grid{display:block}.details{margin-top:10px}.form-pair{grid-template-columns:1fr}.details dl{grid-template-columns:100px 1fr}.portfolio-form,.portfolio-admin-grid{grid-template-columns:1fr}.portfolio-admin-card>img{height:250px}.report-kpis{grid-template-columns:1fr 1fr}.report-kpis>div:last-child{grid-column:1/-1}.calendar{font-size:8px}.day{min-height:76px;padding:4px}.cal-order{font-size:7px;padding:4px}.mini-calendar{padding-bottom:12px}.magic-card{min-height:170px}.magic-cake{font-size:62px}.login-card{padding:28px 22px}}

/* =========================================================
   Dolce Viki — Dashboard readability / proportions patch
   ========================================================= */

/* General dashboard typography */
.welcome-row h2{
  font-size:26px;
  line-height:1.15;
}

.welcome-row p{
  font-size:13px;
  line-height:1.55;
  color:#85899b;
}

.card-head>div>small,
.card-head>small{
  font-size:10px;
  line-height:1.2;
  letter-spacing:.14em;
}

.card-head h3{
  font-size:18px;
  line-height:1.25;
  margin-top:5px;
}

.card-head a{
  font-size:12px;
}

.select-pill,
.today-pill,
.date-chip,
.count-pill{
  font-size:11px;
  padding:7px 11px;
}

/* Chart — compact and readable */
.chart-card{
  min-height:0;
  height:auto;
}

.chart-wrap{
  position:relative;
  height:285px;
  padding:8px 8px 28px 42px;
  box-sizing:border-box;
}

.line-chart{
  display:block;
  width:100%;
  height:225px;
}

.y-axis{
  left:2px;
  top:15px;
  height:184px;
  font-size:10px;
}

.x-axis{
  font-size:10px;
  padding:7px 4px 0;
}

/* Recent orders */
.recent-order{
  grid-template-columns:48px minmax(0,1fr) 70px auto;
  gap:13px;
  padding:13px 0;
}

.order-thumb{
  width:44px;
  height:44px;
  border-radius:13px;
  font-size:19px;
}

.order-copy b{
  font-size:13px;
  line-height:1.35;
}

.order-copy small{
  font-size:11px;
  line-height:1.4;
  margin-top:4px;
}

.order-date{
  font-size:11px;
}

.status{
  font-size:10px;
  padding:7px 10px;
}

/* Categories */
.category-chart{
  grid-template-columns:135px minmax(0,1fr);
  gap:22px;
}

.donut{
  width:128px;
  height:128px;
}

.donut span{
  font-size:23px;
}

.donut small{
  font-size:9px;
}

.legend{
  gap:11px;
}

.legend>div{
  grid-template-columns:9px minmax(0,1fr) auto;
  gap:9px;
  font-size:11px;
}

.legend-dot{
  width:8px;
  height:8px;
}

/* Portfolio */
.preview-grid{
  gap:10px;
}

.preview-grid a{
  min-height:125px;
}

.preview-grid img{
  min-height:125px;
}

.preview-grid span{
  font-size:10px;
  left:9px;
  right:9px;
  bottom:9px;
}

/* Empty states */
.empty-state{
  font-size:11px;
  line-height:1.5;
}

/* Dashboard cards get a little more breathing room */
.dashboard-grid{
  gap:18px;
}

.dash-left,
.dash-right{
  gap:18px;
}

.glass-card{
  padding:21px;
}

.card-head{
  margin-bottom:18px;
}

/* Keep right column useful, not tiny */
@media (min-width:1181px){
  .dashboard-grid{
    grid-template-columns:minmax(0,1fr) 320px;
  }
}

/* Tablet */
@media (max-width:1180px){
  .chart-wrap{
    height:270px;
  }

  .line-chart{
    height:210px;
  }
}

/* Mobile */
@media (max-width:820px){
  .welcome-row h2{
    font-size:22px;
  }

  .welcome-row p{
    font-size:12px;
  }

  .card-head h3{
    font-size:17px;
  }

  .card-head>div>small,
  .card-head>small{
    font-size:9px;
  }

  .chart-wrap{
    height:245px;
    padding-left:35px;
  }

  .line-chart{
    height:185px;
  }

  .y-axis{
    font-size:9px;
    height:151px;
  }

  .x-axis{
    font-size:9px;
  }

  .glass-card{
    padding:17px;
  }
}

@media (max-width:520px){
  .chart-card{
    min-height:0;
  }

  .chart-wrap{
    height:225px;
    padding:4px 2px 26px 31px;
  }

  .line-chart{
    height:170px;
  }

  .y-axis{
    top:11px;
    height:139px;
  }

  .recent-order{
    grid-template-columns:42px minmax(0,1fr) auto;
    gap:10px;
  }

  .order-thumb{
    width:40px;
    height:40px;
  }

  .order-copy b{
    font-size:12px;
  }

  .order-copy small{
    font-size:10px;
  }

  .status{
    font-size:9px;
  }

  .category-chart{
    grid-template-columns:115px minmax(0,1fr);
    gap:15px;
  }

  .donut{
    width:108px;
    height:108px;
  }

  .legend>div{
    font-size:10px;
  }

  .preview-grid a,
  .preview-grid img{
    min-height:110px;
  }
}


/* ===== Dolce Viki Dashboard Chart v6.2 ===== */
/* append to /opt/dolce-viki-api/app/static/admin.css */
.chart-canvas-wrap{height:auto!important;min-height:300px!important;padding:4px 4px 0!important;position:relative}.chart-canvas-wrap canvas{display:block;width:100%;height:260px}.chart-canvas-wrap .chart-caption{font-size:11px;color:#9397aa;margin:5px 0 0 44px}.chart-canvas-wrap .chart-empty{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.chart-canvas-wrap .chart-empty[hidden]{display:none!important}.chart-canvas-wrap .chart-empty-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,#fff0f6,#efebff);color:#cd7598;font-size:21px;margin-bottom:13px}.chart-canvas-wrap .chart-empty strong{font-size:15px;color:#555a70}.chart-canvas-wrap .chart-empty span{font-size:11px;color:#979aab;margin-top:6px}@media(max-width:600px){.chart-canvas-wrap{min-height:265px!important}.chart-canvas-wrap canvas{height:225px}.chart-canvas-wrap .chart-caption{margin-left:10px;font-size:10px}}
