@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500;600&display=swap');
:root{--ink:#14221e;--muted:#66756f;--paper:#f4f1e8;--white:#fffdf7;--mint:#c9f26b;--green:#17624d;--deep:#0c332a;--line:#bfc8bf;--amber:#f4c45e;--red:#b64242;--blue:#315ea8;--shadow:5px 5px 0 #14221e;--radius:8px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Archivo,Arial,sans-serif;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.eyebrow,small,code{font-family:'JetBrains Mono',monospace}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(32px,4vw,58px);line-height:.96;letter-spacing:-.055em;margin-bottom:14px}h1 em,h2 em{font-weight:400;color:var(--green)}h2{letter-spacing:-.035em}.btn{min-height:44px;padding:11px 18px;border:1.5px solid var(--ink);display:inline-flex;align-items:center;justify-content:center;font-weight:700;background:var(--white);border-radius:3px;transition:.18s}.btn:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--ink)}.btn.primary{background:var(--mint)}.btn.ghost{background:transparent}.btn.small{min-height:36px;padding:7px 12px;font-size:13px}.text-link{font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.brand{font-size:20px;font-weight:800;letter-spacing:-.05em}.brand span{color:var(--green)}.marketing-nav{max-width:1240px;margin:auto;height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1.5px solid var(--ink)}.marketing-nav>div{display:flex;align-items:center;gap:24px}.hero{max-width:1240px;margin:auto;padding:90px 28px 80px;display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}.hero-copy .lead{font-size:20px;max-width:680px;color:#43514c}.actions{display:flex;align-items:center;gap:25px;margin:30px 0}.trust-line{font-family:'JetBrains Mono',monospace;font-size:11px;display:flex;align-items:center;gap:8px}.trust-line span{width:9px;height:9px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px #d4e2d7}.hero-ledger{background:var(--white);border:1.5px solid var(--ink);box-shadow:var(--shadow);padding:26px}.ledger-head,.ledger-row,.ledger-total,.ledger-status{display:flex;justify-content:space-between;gap:18px}.ledger-head{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:10px}.ledger-row{padding:12px 0;border-bottom:1px dashed var(--line)}.ledger-row.muted{color:var(--green)}.ledger-total{padding:25px 0 15px}.ledger-total strong{font-size:30px}.ledger-status{padding-top:15px;border-top:1.5px solid var(--ink);align-items:center}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1240px;margin:auto;border:1.5px solid var(--ink);background:var(--white)}.feature-grid article{padding:38px;min-height:250px;border-right:1.5px solid var(--ink)}.feature-grid article:last-child{border:0}.feature-grid article>b{font-family:'JetBrains Mono';color:var(--green)}.principles{max-width:1240px;margin:80px auto;padding:65px;background:var(--deep);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:60px}.principles h2{font-size:42px}.principles ul{list-style:none;padding:0;margin:0}.principles li{padding:14px;border-bottom:1px solid #ffffff42}.principles li span{font-family:'JetBrains Mono';color:var(--mint);margin-right:15px}body>footer{max-width:1240px;margin:auto;padding:25px 28px 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.auth-context{background:var(--deep);color:#fff;padding:55px 7vw;display:flex;flex-direction:column;justify-content:space-between}.auth-context h1{font-size:64px}.auth-context em{color:var(--mint)}.auth-context .brand span{color:var(--mint)}.auth-card{max-width:520px;width:100%;margin:auto;padding:55px}.auth-card h2{font-size:42px;margin:28px 0 5px}.back{display:inline-block;margin-bottom:50px}.auth-card form,.form-grid{display:grid;gap:16px}.auth-card label,.form-grid label,.checkout-fields label,.period-filter label{display:grid;gap:7px;font-size:12px;font-weight:700}input,select,textarea{width:100%;border:1.5px solid var(--ink);background:var(--white);padding:11px 12px;border-radius:2px;outline:none}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px #c9f26b88}.alert{padding:12px 16px;margin:0 0 18px;border:1.5px solid var(--ink);background:#dff5e8}.alert.error{background:#ffe0db}.alert.success{background:#dff5e8}.app-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--deep);color:#fff;padding:28px 18px;display:flex;flex-direction:column}.sidebar .brand{font-size:24px;padding:0 12px 25px}.sidebar .brand span{color:var(--mint)}.side-label{font-family:'JetBrains Mono';font-size:9px;letter-spacing:.16em;color:#91aaa1;padding:15px 12px 8px}.sidebar>a:not(.brand){display:flex;gap:12px;padding:11px 12px;margin:2px 0;color:#cbd8d3;border-left:3px solid transparent}.sidebar>a.active{background:#ffffff10;color:#fff;border-color:var(--mint)}.sidebar>a b{color:var(--mint);width:20px;text-align:center}.side-bottom{margin-top:auto;border-top:1px solid #ffffff26;padding-top:15px}.side-bottom>a{display:flex;gap:12px;padding:10px 12px}.sidebar-user{padding:10px 12px}.sidebar-user strong,.sidebar-user small{display:block}.sidebar-user small{color:#a9bcb5}.content{min-width:0;padding:38px 42px 70px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:28px}.page-head.compact{margin-bottom:20px}.page-head h1{font-size:42px}.page-head p{margin:0;color:var(--muted)}.page-actions{display:flex;align-items:center;gap:12px}.headline-value{text-align:right}.headline-value strong{display:block;font-size:32px}.welcome{background:var(--deep);color:#fff;padding:38px 42px;display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:22px}.welcome h2{font-size:38px;margin:5px 0}.welcome em{color:var(--mint)}.welcome-meta{text-align:right}.welcome-meta strong{display:block;font-size:22px;color:var(--mint)}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1.5px solid var(--ink);background:var(--white);margin-bottom:22px}.stats article{padding:24px;border-right:1.5px solid var(--ink)}.stats article:last-child{border:0}.stats span,.stats small{display:block}.stats strong{font-size:26px;letter-spacing:-.04em;display:block;margin:8px 0}.stats .warn{background:#fff4d1}.stats .danger{background:#fbe5df}.panel{background:var(--white);border:1.5px solid var(--ink)}.panel-head{padding:22px 24px;border-bottom:1.5px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:20px}.panel-head h2{margin:3px 0 0}.empty,.catalog-empty{text-align:center;padding:60px 20px;color:var(--muted)}.empty b,.catalog-empty>b{font-size:35px;color:var(--green)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:13px 15px;text-align:left;border-bottom:1px solid #d8ddd7;vertical-align:top}th{font-family:'JetBrains Mono';font-size:10px;letter-spacing:.08em;text-transform:uppercase;background:#edf0e8}td small,td strong{display:block}.num{text-align:right;font-variant-numeric:tabular-nums}.status{font-family:'JetBrains Mono';font-size:10px;padding:5px 8px;border:1px solid currentColor;font-weight:700;display:inline-flex}.status.paid{color:#187150;background:#e3f6e8}.status.partial,.status.unpaid{color:#8b5c00;background:#fff1c7}.status.void{color:#9b3838;background:#ffe1dc}.text-danger{color:var(--red)!important}.split-layout{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(500px,1.3fr);gap:22px;align-items:start}.split-layout.narrow-form{grid-template-columns:minmax(280px,.55fr) minmax(520px,1.45fr)}.form-panel{position:sticky;top:25px}.form-grid{padding:24px;grid-template-columns:1fr 1fr}.form-grid .full{grid-column:1/-1}.form-actions{display:flex;gap:10px}.table-search{max-width:230px}.pos-grid{display:grid;grid-template-columns:minmax(420px,1fr) minmax(420px,.85fr);gap:20px;align-items:start}.catalog{min-height:650px}.search{display:flex;align-items:center;border-bottom:1.5px solid var(--ink);padding:15px 18px}.search span{font-size:25px}.search input{border:0;background:transparent;font-size:17px;box-shadow:none}.product-results{padding:15px;display:grid;gap:9px}.product-card{width:100%;border:1px solid var(--line);background:var(--white);padding:15px;text-align:left;display:flex;justify-content:space-between;align-items:center}.product-card:hover{border-color:var(--ink);background:#f1f7df}.product-card span>*{display:block}.product-card code{font-size:10px;color:var(--green)}.product-card strong{font-size:17px}.product-card small{color:var(--muted)}.cart{position:sticky;top:22px}.cart-head{padding:20px;border-bottom:1.5px solid var(--ink);display:flex;justify-content:space-between}.badge{font-family:'JetBrains Mono';font-size:10px;background:var(--mint);border:1px solid var(--ink);height:fit-content;padding:5px 8px}.cart-items{max-height:360px;overflow:auto}.cart-empty{padding:35px;text-align:center;color:var(--muted)}.cart-line{padding:14px 18px;border-bottom:1px solid var(--line)}.cart-line-head{display:flex;justify-content:space-between}.cart-line-head strong,.cart-line-head code{display:block}.cart-line-head button{border:0;background:transparent;font-size:23px}.cart-line-controls{display:grid;grid-template-columns:.7fr .9fr .9fr auto;gap:8px;align-items:end;margin-top:10px}.cart-line-controls label{font-size:9px;text-transform:uppercase;font-family:'JetBrains Mono'}.cart-line-controls input,.cart-line-controls select{padding:7px}.checkout-fields{padding:18px;display:grid;gap:12px;background:#f1f2eb;border-bottom:1.5px solid var(--ink)}.inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cart-summary{padding:20px;display:grid;gap:7px}.cart-summary>div{display:flex;justify-content:space-between}.cart-summary .total{border-top:1.5px solid var(--ink);padding-top:12px;margin-top:5px;font-size:20px}.cart-summary .btn{margin-top:10px}.cart-summary button:disabled{opacity:.45;cursor:not-allowed}.detail-grid,.report-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:22px}.report-grid{grid-template-columns:1fr 1fr}.payment-card{padding:25px}.payment-card>div{display:flex;justify-content:space-between;padding:10px 0}.payment-card .debt{background:#fff2d5;padding:15px;margin:10px -10px}.payment-row{border-bottom:1px solid var(--line)}.payment-row small{display:block;color:var(--muted)}.inline-payment{display:grid;grid-template-columns:110px 95px 120px auto;gap:5px;min-width:450px}.inline-payment input,.inline-payment select{padding:7px}.period-filter{display:flex;gap:8px;align-items:end}.receipt-page{background:#cfd5d1;padding:30px}.receipt-a4{width:210mm;min-height:297mm;margin:auto;background:#fff;padding:20mm 18mm;color:#17221e;box-shadow:0 10px 35px #0003}.receipt-a4 header{display:flex;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:15mm}.receipt-brand{font-size:28px;font-weight:800}.receipt-brand span{color:var(--green)}.receipt-title{text-align:right}.receipt-title h1{font-family:'JetBrains Mono';font-size:20px;letter-spacing:0;margin:8px 0}.receipt-meta{display:grid;grid-template-columns:1fr 1fr;gap:25mm;padding:12mm 0}.receipt-meta strong,.receipt-meta span{display:block}.receipt-table{margin-top:5mm}.receipt-table th{background:#edf0e8}.receipt-bottom{display:grid;grid-template-columns:1fr 75mm;gap:15mm;margin-top:12mm}.receipt-note p{min-height:20mm}.receipt-totals>div{display:flex;justify-content:space-between;padding:3mm 0;border-bottom:1px solid #ccd2ce}.receipt-totals .grand{font-size:19px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.receipt-totals .remaining{color:var(--red)}.signature{display:grid;grid-template-columns:1fr 1fr;gap:20mm;margin-top:20mm;text-align:center}.signature div{display:grid;gap:20mm}.receipt-a4 footer{margin-top:20mm;border-top:1px solid var(--ink);padding-top:5mm;display:flex;justify-content:space-between;font-family:'JetBrains Mono';font-size:9px}@media print{.receipt-page{padding:0;background:#fff}.receipt-a4{box-shadow:none;margin:0;width:210mm;height:297mm}@page{size:A4;margin:0}}@media(max-width:1000px){.hero{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr}.feature-grid article{border-right:0;border-bottom:1.5px solid var(--ink)}.principles{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.stats article:nth-child(2){border-right:0}.app-shell{grid-template-columns:82px minmax(0,1fr)}.sidebar{padding:20px 10px}.sidebar .brand{font-size:0;padding:0 4px 20px}.sidebar .brand:before{content:'DSG';font-size:17px}.sidebar a span,.side-label,.sidebar-user{display:none}.sidebar>a:not(.brand){justify-content:center}.content{padding:28px 24px}.split-layout,.split-layout.narrow-form,.pos-grid,.detail-grid{grid-template-columns:1fr}.form-panel,.cart{position:static}.report-grid{grid-template-columns:1fr}}@media(max-width:680px){.marketing-nav{padding:0 18px}.marketing-nav>div>a:first-child{display:none}.hero{padding:60px 18px;gap:35px}.hero-ledger{box-shadow:3px 3px 0 var(--ink)}.principles{padding:40px 22px;margin:45px 18px}.auth-page{grid-template-columns:1fr}.auth-context{min-height:300px;padding:35px}.auth-context h1{font-size:42px}.auth-card{padding:35px 24px}.content{padding:22px 14px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:34px}.stats{grid-template-columns:1fr}.stats article{border-right:0;border-bottom:1px solid var(--ink)}.welcome{padding:28px 25px}.welcome-meta{display:none}.form-grid{grid-template-columns:1fr}.form-grid>*{grid-column:1!important}.cart-line-controls{grid-template-columns:1fr 1fr}.cart-line-controls>b{grid-column:1/-1}.inline-fields{grid-template-columns:1fr}.period-filter{display:grid;width:100%}.receipt-page{overflow:auto}.marketing footer{padding:20px}}
.pagination{display:flex;gap:7px;flex-wrap:wrap;padding:18px 22px;border-top:1px solid var(--line)}.pagination a{min-width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--ink);background:var(--white);font-family:'JetBrains Mono';font-size:12px}.pagination a.active{background:var(--mint);font-weight:800;box-shadow:2px 2px 0 var(--ink)}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.guide-card{padding:26px;min-height:220px}.guide-card>b{font-family:'JetBrains Mono';font-size:24px;color:var(--green)}.guide-card h2{margin:24px 0 8px}.quick-notes{margin-top:22px}.quick-notes ul{margin:0;padding:22px 45px}.quick-notes li{padding:7px 0}@media(max-width:1000px){.guide-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.guide-grid{grid-template-columns:1fr}}
.cart-line-controls{grid-template-columns:.7fr 1fr .8fr .8fr auto}.period-tabs{display:flex;gap:8px;flex-wrap:wrap}.text-positive{color:var(--green)}@media(max-width:680px){.cart-line-controls{grid-template-columns:1fr 1fr}.cart-line-controls>b{grid-column:1/-1}}
.pagination{align-items:center;justify-content:space-between}.pagination>div{display:flex;gap:7px}.pagination-info{font:600 11px 'JetBrains Mono',monospace;color:var(--muted)}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;white-space:nowrap}.row-actions form{margin:0}.icon-action{border:0;background:none;padding:4px 0;color:var(--green);font-weight:700;font-size:13px;display:inline-flex;align-items:center;gap:5px}.icon-action.danger{color:var(--red)}.icon-action:hover{text-decoration:underline}.form-actions .bi,.btn .bi{margin-right:6px}
