.warranty-option {

    margin-top:25px;

    padding:18px;

    border:1px solid #dbe3ee;

    border-radius:12px;

    background:#f8fafc;

}


.warranty-checkbox {

    display:flex !important;

    align-items:center;

    gap:10px;

    cursor:pointer;

    font-weight:700 !important;

}


.warranty-checkbox input {

    width:20px !important;

    height:20px;

    margin:0 !important;

    cursor:pointer;

}


.warranty-option small {

    display:block;

    margin-top:8px;

    color:#666;

}
*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{

background:#f5fff5;

display:flex;

justify-content:center;

align-items:center;

min-height:100vh;

padding:20px;

}

.container{

width:100%;
max-width:500px;

}

.card{

background:#ffffff;

border-radius:20px;

padding:40px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

text-align:center;

}

h1{

font-size:32px;

color:#2e7d32;

margin-bottom:15px;

}

.subtitle{

font-size:15px;

color:#666;

margin-bottom:35px;

line-height:25px;

}

.button-area{

display:flex;

flex-direction:column;

gap:18px;

}

.btn{

display:block;

padding:16px;

background:#66bb6a;

color:white;

text-decoration:none;

border-radius:12px;

font-weight:600;

transition:.3s;

}

.btn:hover{

background:#2e7d32;

transform:translateY(-3px);

}

.admin{

background:white;

color:#2e7d32;

border:2px solid #66bb6a;

}

.admin:hover{

background:#66bb6a;

color:white;

}

@media(max-width:600px){

.card{

padding:25px;

}

h1{

font-size:24px;

}

.subtitle{

font-size:14px;

}

.btn{

padding:14px;

}

}

.page-shell{width:min(980px,100%);padding:28px 0}.wide-page{width:min(1400px,100%)}.form-card{background:#fff;border-radius:20px;padding:34px;box-shadow:0 15px 35px rgba(0,0,0,.08)}.form-card.small{max-width:560px;margin:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;text-align:left}.form-grid label{display:flex;flex-direction:column;gap:7px;color:#317737;font-size:14px;font-weight:600}.form-grid input,.form-grid textarea,.form-grid select{border:1px solid #c8e6c9;border-radius:10px;padding:12px;color:#263238;font:inherit}.wide{grid-column:1/-1}.back-btn{display:inline-block;margin:0 0 18px;padding:10px 15px;border:1px solid #9ccc9c;border-radius:10px;background:#fff;color:#2e7d32;text-decoration:none;font-weight:600}.inline{margin:0}.topbar{display:flex;justify-content:space-between}.result{display:flex;flex-direction:column;gap:8px;padding:20px;border-radius:12px;margin:22px 0;text-align:left}.result.active{background:#effaf0;color:#216b28}.result.cancelled{background:#fff1f1;color:#a63333}.notice,.error{padding:12px;border-radius:10px;margin:15px 0}.notice{background:#effaf0;color:#216b28}.error{background:#fff0f0;color:#a22}.stats{display:flex;gap:18px;margin:25px 0}.stats div{flex:1;background:#effaf0;padding:20px;border-radius:12px;text-align:center;color:#2e7d32}.stats b,.stats span{display:block}.stats b{font-size:28px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:12px;border-bottom:1px solid #e0efe0;vertical-align:top}th{color:#2e7d32;background:#f5fff5}td small{display:block;color:#777;max-width:180px}.pill{padding:4px 9px;border-radius:20px;font-size:12px}.pill.active{background:#dff5e0;color:#26762d}.pill.cancelled{background:#ffe2e2;color:#a22}.danger{background:#d65b5b}.bill-actions{margin-top:22px}.invoice-body{display:block;background:#eef8ef;padding:35px}.invoice{background:white;max-width:850px;margin:auto;padding:50px;box-shadow:0 10px 30px #0002}.invoice header{display:flex;justify-content:space-between;border-bottom:3px solid #66bb6a;padding-bottom:25px;margin-bottom:28px}.invoice h1{margin:0}.invoice-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.invoice h3{color:#2e7d32;margin-bottom:10px}.invoice footer{margin-top:32px;padding-top:16px;border-top:1px solid #ddd;color:#666;font-size:13px}.print-only-hide{text-align:center}@media print{.print-only-hide{display:none}.invoice-body{padding:0;background:white}.invoice{box-shadow:none;max-width:none}}@media(max-width:600px){.form-grid,.invoice-grid{grid-template-columns:1fr}.form-card{padding:24px}.stats{flex-direction:column}.invoice{padding:25px}.invoice header{display:block}}
.page-shell{max-width:100%}@media(max-width:760px){body{padding:12px;align-items:flex-start}.page-shell{padding:10px 0}.form-card{padding:22px;border-radius:16px}.card{padding:26px}.invoice{padding:24px}.invoice header{display:block}.invoice header>div+div{margin-top:18px}.table-wrap{margin:0 -8px}.table-wrap table{min-width:760px}.btn{padding:14px;font-size:15px}.topbar{gap:10px;align-items:center}.back-btn{font-size:13px;padding:9px 11px}h1{font-size:25px}.subtitle{margin-bottom:24px}}@media(max-width:380px){.form-card,.card{padding:18px}.back-btn{font-size:12px}.topbar{flex-direction:column;align-items:stretch}.topbar .back-btn{text-align:center}}
.section-title{font-size:20px;margin:30px 0 14px;color:#2e7d32}.item-table input{width:100%;min-width:80px;padding:8px;border:1px solid #c8e6c9;border-radius:6px}.item-table .remove-row{border:0;background:#fff0f0;color:#a22;padding:8px;border-radius:6px}.add-item{margin:14px 0}.invoice-totals{margin:18px 0 22px;margin-left:auto;max-width:310px;display:flex;flex-direction:column;gap:8px;text-align:right}.invoice-totals span,.invoice-totals strong{display:flex;justify-content:space-between;gap:35px}.invoice-totals strong{border-top:2px solid #66bb6a;padding-top:8px;color:#216b28}.brand{display:flex;gap:15px;align-items:flex-start}.brand img{width:76px;max-height:76px;object-fit:contain}.gst-invoice header>div:last-child{text-align:right}.tax-summary{display:flex;flex-direction:column;gap:8px;align-items:flex-end;margin-top:20px;color:#275b2b}.gst-invoice footer{display:flex;flex-direction:column;align-items:flex-end}.gst-invoice footer img{width:120px;max-height:55px;object-fit:contain}@media(max-width:760px){.brand{gap:8px}.brand img{width:48px}.brand h1{font-size:18px}.gst-invoice header>div:last-child{text-align:left;margin-top:14px}.item-table input{min-width:70px}.invoice-totals{max-width:100%}}
/* Compact invoice branding */
.public-logo{width:90px;max-height:90px;object-fit:contain;margin-bottom:12px}
.gst-invoice .brand img{width:48px!important;max-height:48px!important;object-fit:contain}.gst-invoice footer img{width:76px!important;max-height:34px!important;object-fit:contain}
