
:root{--navy:#08306b;--navy2:#0a2856;--orange:#f58220;--bg:#f4f7fb;--text:#172338;--muted:#718096;--green:#0c9b63;--red:#c43d4d;--line:#e3e9f2}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:inherit}.sidebar{position:fixed;left:0;top:0;bottom:0;width:250px;background:linear-gradient(180deg,var(--navy2),var(--navy));padding:22px 16px;color:#fff;display:flex;flex-direction:column}
.brand{display:block;margin-bottom:28px}.brand img{width:100%;max-height:85px;object-fit:contain}
.sidebar nav{display:grid;gap:7px}.sidebar nav a{padding:11px 12px;border-radius:10px;text-decoration:none;color:#dfeaff;font-weight:650}.sidebar nav a:hover,.sidebar nav a.on{background:rgba(255,255,255,.13);color:#fff}
.userbox{margin-top:auto;border-top:1px solid rgba(255,255,255,.16);padding-top:15px;display:grid;gap:5px}.userbox small{color:#bcd0eb}.userbox a{color:#fff;text-decoration:none}
.main{margin-left:250px;padding:24px 30px 50px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.topbar h1{margin:0;font-size:26px}.topbar p{margin:4px 0 0;color:var(--muted)}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 5px 18px rgba(17,42,78,.04)}
.grid{display:grid;gap:14px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi small{color:var(--muted);display:block}.kpi strong{display:block;font-size:24px;margin-top:6px}.kpi.orange strong{color:var(--orange)}
.row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:13px;width:100%;align-items:start}.c12{grid-column:span 12;min-width:0}.c11{grid-column:span 11;min-width:0}.c10{grid-column:span 10;min-width:0}.c9{grid-column:span 9;min-width:0}.c8{grid-column:span 8;min-width:0}.c7{grid-column:span 7;min-width:0}.c6{grid-column:span 6;min-width:0}.c5{grid-column:span 5;min-width:0}.c4{grid-column:span 4;min-width:0}.c3{grid-column:span 3;min-width:0}.c2{grid-column:span 2;min-width:0}.c1{grid-column:span 1;min-width:0}
label{font-size:13px;font-weight:700;display:block;margin-bottom:6px}input,select,textarea{width:100%;padding:10px 11px;border:1px solid #ccd6e5;border-radius:9px;background:#fff;color:var(--text)}textarea{min-height:90px;resize:vertical}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:0;border-radius:9px;text-decoration:none;font-weight:750;cursor:pointer}.btn.primary{background:var(--orange);color:#fff}.btn.navy{background:var(--navy);color:#fff}.btn.ghost{border:1px solid #cbd5e3;background:#fff}.btn.danger{background:#fff0f1;color:var(--red);border:1px solid #f1bdc4}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;color:#6e7b8e;text-transform:uppercase;letter-spacing:.04em}
.badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#eaf0f9}.badge.green{background:#e7f8f0;color:#08784b}.badge.orange{background:#fff2e7;color:#b85f0f}
.alert{padding:12px 14px;border-radius:10px;margin-bottom:15px}.success{background:#e8f8f0;color:#08784b}.error{background:#fff0f1;color:#aa2334}
.month-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.month-tabs a{padding:8px 11px;border-radius:9px;background:#fff;border:1px solid var(--line);text-decoration:none}.month-tabs a.on{background:var(--navy);color:#fff}
.calc{border-left:5px solid var(--orange)}.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}.calc-grid div{display:flex;justify-content:space-between;border-bottom:1px dashed #e1e6ee;padding:7px 0}.calc-grid b{color:var(--navy)}
.tip{background:#fff8ef;border:1px solid #ffe0bc;border-radius:10px;padding:10px;margin-top:8px}
.login-wrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#062857,#0b427f)}.login-card{width:min(430px,92vw);background:#fff;border-radius:18px;padding:26px;box-shadow:0 25px 70px rgba(0,0,0,.25)}.login-card img{width:100%;height:115px;object-fit:contain;background:#08306b;border-radius:12px;margin-bottom:20px}
.quote-public{max-width:980px;margin:30px auto;padding:0 18px}.quote-head{background:#08306b;color:#fff;padding:24px;border-radius:16px 16px 0 0}.quote-head img{height:80px;max-width:320px}.quote-body{background:#fff;padding:24px;border:1px solid var(--line);border-radius:0 0 16px 16px}
@media(max-width:900px){.sidebar{position:relative;width:100%;height:auto}.main{margin-left:0}.kpis{grid-template-columns:1fr 1fr}.c8,.c6,.c4,.c3{grid-column:span 12}}


/* v2.2.1 responsive hotfix */
.card{min-width:0;max-width:100%;overflow:hidden}
.card pre{max-width:100%;overflow:auto;white-space:pre;word-break:normal}
.card code{overflow-wrap:anywhere}
input[type=file]{max-width:100%;overflow:hidden}
table{min-width:100%}
.table-wrap,.card>div[style*="overflow:auto"]{max-width:100%;overflow-x:auto}
.main{min-width:0}
.topbar{min-width:0}
.row>*{min-width:0}
@media(max-width:1200px){
  .c7,.c5{grid-column:span 12}
}
@media(max-width:900px){
  .sidebar{position:relative;width:100%;height:auto}
  .main{margin-left:0;padding:18px}
  .kpis{grid-template-columns:1fr 1fr}
  .c11,.c10,.c9,.c8,.c7,.c6,.c5,.c4,.c3,.c2,.c1{grid-column:span 12}
  .card{padding:16px}
  .topbar{align-items:flex-start}
}
@media(max-width:560px){
  .main{padding:12px}
  .kpis{grid-template-columns:1fr}
  .card{border-radius:12px;padding:14px}
  .btn{width:100%}
  .month-tabs a{flex:1 1 auto;text-align:center}
}


/* v2.3.0 ixirhost UI refresh */
:root{
 --navy:#17191d;--navy2:#111317;--orange:#ff7a18;--orange2:#ff9a3d;
 --bg:#f3f4f6;--text:#191f2a;--muted:#768091;--green:#138a5b;--red:#c53d4b;--line:#e1e4e9
}
body{background:#f4f5f7;color:#191f2a}
.sidebar{
 background:linear-gradient(180deg,#17191d 0%,#0f1114 100%);
 border-right:1px solid #292d33;
 box-shadow:8px 0 30px rgba(0,0,0,.08)
}
.brand{background:#fff;border-radius:14px;padding:10px;margin:0 4px 26px}
.brand img{height:60px;max-height:60px;width:100%;object-fit:contain}
.sidebar nav a{color:#bfc5ce;border-left:3px solid transparent;border-radius:8px;padding:11px 12px}
.sidebar nav a:hover{background:#22262c;color:#fff;border-left-color:#555d68}
.sidebar nav a.on{background:linear-gradient(90deg,rgba(255,122,24,.20),rgba(255,122,24,.04));color:#fff;border-left-color:#ff7a18}
.userbox{border-color:#2b3037;color:#fff}
.userbox small{color:#8f98a5}
.btn.primary{background:linear-gradient(135deg,#ff7a18,#f26300);color:#fff;box-shadow:0 5px 14px rgba(242,99,0,.18)}
.btn.navy{background:#20242a;color:#fff}
.btn.ghost{background:#fff;border:1px solid #d6dae1;color:#323944}
.btn.compact{padding:7px 9px;font-size:12px;white-space:nowrap}
.card{border:1px solid #e0e3e8;box-shadow:0 4px 18px rgba(24,31,42,.045);border-radius:14px}
.topbar h1{font-size:25px;letter-spacing:-.025em}
.page-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}
.muted-text,.small-muted{color:#7a8391}.small-muted{font-size:11px;margin-top:4px}
.action-group{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.action-group form{margin:0}
.settings-grid{display:grid;grid-template-columns:1fr;gap:14px}
.section-title{display:flex;justify-content:space-between;align-items:end;gap:12px;border-bottom:1px solid #e6e8ec;padding-bottom:11px;margin-bottom:15px}
.section-title h3{margin:0}.section-title p{margin:4px 0 0;color:#7b8492;font-size:12px}
.offer-form-card{padding:22px}
.offer-items{min-width:1100px}.offer-items th{background:#f5f6f8}.offer-items .line-total{font-weight:700;white-space:nowrap}
.quote-summary{background:#f7f8fa;border:1px solid #e1e4e9;border-radius:12px;padding:13px}
.sum-row{display:flex;justify-content:space-between;border-top:1px dashed #d8dce3;padding:9px 0}.sum-row:first-of-type{margin-top:10px}.sum-row.grand{font-size:17px;color:#111}
.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.system-checks{display:flex;gap:8px;margin-bottom:12px}.status-pill{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}.status-pill.ok{background:#e7f7ef;color:#087a4c}.status-pill.bad{background:#fff0f1;color:#b12639}
@media(max-width:900px){.page-actions,.section-title,.form-actions{align-items:stretch;flex-direction:column}.action-group{min-width:300px}}


/* v2.3.2 DakikHost-style FTP inbox updater */
.update-main-card{padding:22px}
.ftp-drop-path{display:flex;align-items:center;gap:12px;padding:13px 15px;background:#f6f7f9;border:1px solid #e0e4ea;border-radius:10px;margin-bottom:15px}
.ftp-drop-path span{font-size:12px;font-weight:800;color:#687384;white-space:nowrap}.ftp-drop-path code{font-size:12px;overflow-wrap:anywhere}
.update-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
.update-steps>div{background:#fafafa;border:1px solid #e5e7eb;border-radius:10px;padding:12px;display:flex;gap:9px;align-items:flex-start;font-size:12px}
.update-steps b:first-child{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:50%;background:#ff7a18;color:white}
.latest-update-card{display:flex;justify-content:space-between;align-items:center;gap:18px;background:linear-gradient(135deg,#181b20,#24282f);color:white;border-radius:14px;padding:18px;margin-top:14px}
.latest-update-card h3{margin:4px 0}.latest-update-card .small-muted{color:#aeb6c1}.latest-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#ff9a3d;font-weight:900}
.update-big-button{min-width:180px;min-height:48px;font-size:15px}
.empty-update{text-align:center;padding:30px;background:#fafafa;border:1px dashed #ccd2da;border-radius:12px;color:#687384}
.empty-update b{color:#2a3038;font-size:17px}
@media(max-width:900px){.update-steps{grid-template-columns:1fr}.latest-update-card{align-items:stretch;flex-direction:column}.update-big-button{width:100%}.ftp-drop-path{align-items:flex-start;flex-direction:column}}


/* v2.3.3 DakikHost-style update center */
.update-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.update-source-box{border:1px solid #e2e5ea;background:#fafafa;border-radius:12px;padding:15px;min-width:0}
.update-source-box h4{margin:0 0 8px}.update-source-box p{color:#737d8b;font-size:12px}
.update-source-box code{display:block;overflow-wrap:anywhere;background:#fff;border:1px solid #e0e3e8;border-radius:8px;padding:10px}
@media(max-width:900px){.update-source-grid{grid-template-columns:1fr}}


/* v2.3.4 root-folder updater */
.root-update-card{padding:22px}
.root-update-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}
.root-update-flow>div{display:grid;grid-template-columns:34px 1fr;column-gap:9px;row-gap:2px;padding:13px;border:1px solid #e2e5e9;border-radius:11px;background:#fafafa}
.root-update-flow span{grid-row:1/3;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#ff7a18;color:white;font-weight:900}
.root-update-flow b{font-size:13px}.root-update-flow small{color:#77808e;font-size:11px}
.root-latest-package{display:flex;justify-content:space-between;align-items:center;gap:18px;background:linear-gradient(135deg,#15171a,#252a31);color:#fff;border-radius:14px;padding:20px;margin-top:14px}
.root-latest-package small{color:#ff9a3d;text-transform:uppercase;font-weight:900;letter-spacing:.07em}.root-latest-package h2{margin:4px 0 6px}.root-latest-package p{margin:0;color:#b9c0ca;font-size:12px}
.root-update-button{min-width:190px;min-height:52px;font-size:16px;font-weight:900}
@media(max-width:900px){.root-update-flow{grid-template-columns:1fr}.root-latest-package{align-items:stretch;flex-direction:column}.root-update-button{width:100%}}


/* v3.0 sales intelligence */
.pipeline{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.pipeline .card{display:flex;flex-direction:column;gap:5px}.pipeline small{text-transform:uppercase;color:#7b8492}.pipeline strong{font-size:16px}
.event-feed{display:flex;flex-direction:column}.event-row{display:flex;gap:12px;align-items:flex-start;padding:11px 4px;border-bottom:1px solid #edf0f3}.event-row.unread{background:#fffaf5}.event-row small{display:block;color:#7b8492;margin-top:3px}.event-type{min-width:92px;font-size:10px;text-transform:uppercase;border-radius:999px;padding:5px 7px;text-align:center;background:#eceff3}.event-type.new_product{background:#e8f7ef;color:#0b7a4b}.event-type.price_down{background:#e8f7ef;color:#0b7a4b}.event-type.price_up{background:#fff0f1;color:#ad283c}.event-type.removed{background:#f3f4f6;color:#656d78}.event-type.page_changed{background:#fff5e8;color:#b15b00}
@media(max-width:1100px){.pipeline{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.pipeline{grid-template-columns:1fr 1fr}}


/* v3.1 quote studio + Excel import */
.subtabs{display:flex;gap:8px;margin:12px 0 14px}.subtabs a{padding:8px 12px;border-radius:999px;border:1px solid #dfe3e8;background:#fff;color:#4a5565;text-decoration:none;font-weight:800;font-size:12px}.subtabs a.on{background:#1b1e23;color:#fff;border-color:#1b1e23}
.excel-data-table{min-width:1200px}.excel-data-table td{white-space:nowrap;max-width:360px;overflow:hidden;text-overflow:ellipsis}
.quote-studio{max-width:1500px;margin:auto}.quote-studio-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;padding:18px 22px;background:linear-gradient(135deg,#111827,#1f2937);border-radius:18px 18px 0 0;color:#fff}.quote-studio-head span{font-size:10px;letter-spacing:.14em;color:#a5b4fc;font-weight:900}.quote-studio-head h2{margin:4px 0}.quote-studio-head p{margin:0;color:#9ca3af}.quote-studio-actions{display:flex;gap:8px}.quote-studio-actions a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.16);padding:8px 11px;border-radius:999px;font-size:12px}
.quote-dark-panel{background:radial-gradient(circle at 15% 10%,rgba(99,102,241,.13),transparent 35%),#0b1120;color:#e5e7eb;padding:24px;border-radius:0 0 18px 18px;box-shadow:0 24px 60px rgba(15,23,42,.18)}.quote-dark-panel label{color:#cbd5e1;font-size:12px;font-weight:900}.quote-dark-panel input,.quote-dark-panel select,.quote-dark-panel textarea{background:rgba(255,255,255,.06);color:#f8fafc;border:1px solid rgba(148,163,184,.18);border-radius:12px}.quote-dark-panel input:focus,.quote-dark-panel select:focus,.quote-dark-panel textarea:focus{border-color:rgba(99,102,241,.7);box-shadow:0 0 0 4px rgba(99,102,241,.15);outline:none}.quote-dark-panel select option{color:#111827;background:#fff}
.quote-section-title{margin:4px 0 14px;color:#fff;font-weight:900;font-size:16px;border-bottom:1px solid rgba(148,163,184,.17);padding-bottom:10px}.quote-products-title{display:flex;justify-content:space-between;align-items:center;margin-top:26px}.quote-add-btn,.quote-remove-btn{border-radius:999px;border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.07);color:#fff;padding:7px 11px;font-weight:900}.quote-remove-btn{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.28)}
.quote-dark-table{color:#e5e7eb;min-width:1150px}.quote-dark-table th{background:rgba(2,6,23,.55);color:#d1d5db;border-color:rgba(148,163,184,.15)}.quote-dark-table td{border-color:rgba(148,163,184,.13)}.quote-dark-table .line-total{font-weight:900;white-space:nowrap}
.quote-totals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}.quote-totals-grid>div{padding:14px;border:1px solid rgba(148,163,184,.16);background:rgba(255,255,255,.04);border-radius:14px}.quote-totals-grid label{display:block;margin-bottom:8px}.quote-totals-grid strong{font-size:17px}.quote-totals-grid .grand{background:linear-gradient(135deg,rgba(99,102,241,.23),rgba(139,92,246,.15));border-color:rgba(129,140,248,.35)}.quote-kdv{display:flex;align-items:center;gap:8px}.quote-kdv input{max-width:100px}
.quote-bottom-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px}.quote-btn{border-radius:999px;padding:13px 16px;font-weight:900;border:1px solid transparent;cursor:pointer}.quote-btn.primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.quote-btn.secondary{background:rgba(255,255,255,.07);border-color:rgba(148,163,184,.16);color:#fff}.quote-btn.outline{background:transparent;border-color:rgba(148,163,184,.25);color:#fff}.quote-btn.save{background:#fff;color:#111827}
@media(max-width:900px){.quote-studio-head{align-items:flex-start;flex-direction:column}.quote-totals-grid,.quote-bottom-actions{grid-template-columns:1fr 1fr}}@media(max-width:560px){.quote-totals-grid,.quote-bottom-actions{grid-template-columns:1fr}}
