:root{--navy:#193d5a;--ink:#17212b;--line:#d9dee2;--yellow:#fff1a8;--orange:#d86b1b;--red:#b42318;--blue:#e8f1f7}*{box-sizing:border-box}body{margin:0;background:#f6f7f8;color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.shell{max-width:1440px;margin:auto;padding:22px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 0;border-bottom:3px solid var(--navy)}.brand{font-family:Georgia,serif;font-weight:800;letter-spacing:.4px;font-size:25px;color:var(--navy)}.brand small{display:block;font:12px Arial;margin-top:4px;color:#51606c}.nav,.actions{display:flex;flex-wrap:wrap;gap:8px}.nav button,.secondary{background:#fff;color:var(--navy);border:1px solid #b7c5cf;border-radius:8px;padding:9px 13px;font-weight:700}.nav button.active,.primary{background:var(--navy);color:#fff;border:1px solid var(--navy);border-radius:8px;padding:10px 14px;font-weight:700}.danger{color:var(--red);border:1px solid #f0b5ae;background:#fff;border-radius:6px;padding:6px 8px}.notice{margin:18px 0;padding:12px 14px;background:#fff5d9;border-left:4px solid var(--orange);border-radius:4px;font-size:14px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:0 1px 2px #00000008}.hero{display:grid;grid-template-columns:1.3fr .7fr;gap:18px;margin:22px 0}.hero h1{font:700 36px Georgia,serif;margin:0;color:var(--navy)}.hero p{font-size:17px;line-height:1.5;color:#465564}.grid-home{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tile{min-height:150px;text-align:left;padding:20px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy)}.tile strong{display:block;font-size:18px;margin:14px 0 6px}.tile span{font-size:13px;color:#586875}.icon{font-size:28px}.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:22px 0 14px}.page-title h1{margin:0;font:700 29px Georgia,serif;color:var(--navy)}.page-title p{margin:6px 0 0;color:#64717b}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:700;color:#465564}.field input,.field select{width:100%;border:1px solid #bac5cd;border-radius:7px;padding:10px;background:#fff}.field input:focus,.field select:focus{outline:3px solid #cce3f4;border-color:#6ca8d1}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.room-choice{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px}.room-choice label{font-weight:700;font-size:14px}.room-choice input{width:62px;padding:7px;border:1px solid #bac5cd;border-radius:6px;text-align:center}.actions{margin-top:18px}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px}.sticky{position:sticky;top:14px;align-self:start}.summary-total{font:700 26px Georgia,serif;color:var(--navy);margin:4px 0 14px}.summary-line{display:flex;justify-content:space-between;gap:9px;border-top:1px solid var(--line);padding:10px 0;font-size:14px}.summary-line input{width:92px;border:1px solid #bac5cd;border-radius:5px;padding:4px}.room-card{margin:14px 0;overflow-x:auto}.room-head{display:flex;align-items:center;gap:10px;justify-content:space-between;background:var(--navy);padding:10px 12px;border-radius:9px 9px 0 0;color:#fff}.room-head input{max-width:330px;width:100%;padding:7px;border-radius:5px;border:0;font-weight:700}.room-head .tools{display:flex;gap:8px;align-items:center;font-size:13px}.room-head select{max-width:150px}.room-head button{border:1px solid #ffffff77;background:#ffffff1a;color:#fff;border-radius:5px;padding:6px 8px}.room-title{display:flex;align-items:center;gap:8px;min-width:260px}.room-type{font-size:11px;color:#cfe0eb;white-space:nowrap}.line-table{width:100%;border-collapse:collapse;background:#fff}.line-table th{background:#747474;color:#fff;font:700 13px Georgia,serif;padding:8px;text-align:left}.line-table td{border:1px solid #d6d8da;padding:5px}.line-table .qty{width:74px}.line-table .price,.line-table .total{width:130px;text-align:right}.line-table input{width:100%;border:0;background:transparent;padding:5px}.line-table input.qty-input{background:var(--yellow);text-align:center;border-radius:4px}.line-table input.price-input{background:var(--blue);text-align:right;border-radius:4px}.line-table .missing{background:#fff0e7;color:var(--red);font-weight:700}.subtotal{background:#e1e1e1;font-weight:800;text-align:right;padding:10px}.section-toggle{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;margin:12px 0;border:1px solid var(--line);background:#fff;border-radius:8px}.section-toggle label{font-weight:700}.switch{display:flex;align-items:center;gap:7px;white-space:nowrap}.switch input{accent-color:var(--navy);width:18px;height:18px}.saved-list{display:grid;gap:10px}.saved-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:8px}.saved-row strong{display:block}.muted{font-size:13px;color:#65727c}.empty{padding:28px;text-align:center;color:#65727c;border:1px dashed #b4c0c8;border-radius:8px}.modal-backdrop{position:fixed;inset:0;background:#00111ccc;z-index:20;padding:20px;overflow:auto}.preview{max-width:900px;margin:10px auto;background:#fff;padding:40px;min-height:900px}.preview h1{font:700 28px Georgia,serif;color:var(--navy);margin:0}.preview h2{font:700 18px Georgia,serif;color:#087e4a;margin:26px 0 8px}.preview table{width:100%;border-collapse:collapse}.preview th{background:#747474;color:#fff;padding:7px;text-align:left}.preview td{padding:7px;border-bottom:1px solid #cdd3d7}.preview .preview-total{text-align:right;font-size:22px;font-weight:800;margin-top:24px}.preview-tools{max-width:900px;margin:0 auto 10px;display:flex;gap:8px}.pill{padding:5px 8px;border-radius:20px;background:#edf4f7;color:var(--navy);font-size:12px;font-weight:700}.warn{color:var(--red);font-weight:700}
.steps{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.step{display:flex;align-items:center;gap:7px;background:#e9edf0;color:#5b6973;padding:8px 12px;border-radius:22px;font-size:13px;font-weight:700}.step b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#aab6bd;color:#fff}.step-active{background:#e3eef5;color:var(--navy)}.step-active b{background:var(--navy)}.floor-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.check-card{display:flex;align-items:center;gap:9px;border:1px solid var(--line);padding:12px;border-radius:8px;font-weight:700}.check-card input{width:18px;height:18px;accent-color:var(--navy)}.add-inline{display:flex;gap:8px;margin-top:14px}.add-inline input{flex:1;padding:9px;border:1px solid #bac5cd;border-radius:7px}.draft-floor{margin:15px 0;border:1px solid #becbd4;border-radius:10px;padding:14px;background:#f9fbfc}.floor-draft-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px}.floor-draft-head input{font-weight:800;color:var(--navy);border:0;background:transparent;font-size:18px;min-width:0}.floor-card{margin:18px 0;border:1px solid #aabac5;border-radius:12px;background:#eef4f7;overflow:hidden}.floor-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;background:#254f6d;color:#fff}.floor-head>div{display:flex;align-items:center;gap:10px}.floor-head input{border:0;background:transparent;color:#fff;font:700 23px Georgia,serif;max-width:320px}.floor-head button{border:1px solid #ffffff75;background:#ffffff13;color:#fff;border-radius:5px;padding:6px 8px}.floor-kicker{font-size:11px;font-weight:800;letter-spacing:1px;color:#c4dbe9}.floor-content{padding:0 13px 13px}.small-empty{margin:13px}.add-room{display:flex;gap:8px;flex-wrap:wrap;padding:14px 0 2px}.add-room select{padding:9px;border:1px solid #bac5cd;border-radius:7px;background:#fff}.panel-card{margin:16px 0;border:1px solid #97aebc;border-radius:10px;overflow:hidden;background:#fff}.panel-head{background:#d8e6ed;color:var(--navy);display:flex;justify-content:space-between;align-items:center;padding:9px 12px;font-size:13px}.panel-form{padding:12px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.general-card{margin:24px 0;padding:18px;border:2px solid #b1c6d4;background:#f8fafb;border-radius:12px}.general-card h2{margin:0;color:var(--navy);font:700 24px Georgia,serif}.general-total{display:flex;justify-content:space-between;margin-top:15px;padding:12px;background:#d9e6ec;font-weight:800;color:var(--navy)}.mini-select{margin:0 0 4px 5px;padding:3px;border:1px solid #a9b8c2;border-radius:4px;font-size:12px}.preview-floor{border-top:3px solid #087e4a;margin-top:24px;padding-top:2px}.preview-floor-total{text-align:right;font-weight:800;color:#087e4a;margin:12px 0}.add-floor{margin:4px 0 10px}
.online-status{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:8px;font-size:12px;color:#50616e}.link-button{border:0;background:transparent;color:var(--navy);font-weight:700;padding:2px;text-decoration:underline}.login-wrap{min-height:85vh;display:grid;place-items:center}.login-card{width:min(100%,420px);padding:28px}.login-card h1{margin:3px 0 8px;color:var(--navy);font:700 36px Georgia,serif}.login-card label{display:flex;flex-direction:column;gap:6px;margin:16px 0;font-size:13px;font-weight:700;color:#465564}.login-card input{border:1px solid #bac5cd;border-radius:7px;padding:11px}.eyebrow{margin:0;color:#587184;font-size:12px;font-weight:800;letter-spacing:1.2px}.wide{width:100%}
.login-card .check-inline{display:flex;flex-direction:row;align-items:center;gap:7px;margin:8px 0 16px;font-weight:400}.login-card .check-inline input{width:16px;height:16px;padding:0}.recovery-link{margin-top:16px}
@media(max-width:900px){.hero,.editor-layout{grid-template-columns:1fr}.grid-home,.room-grid,.form-grid,.floor-choice-grid,.panel-form{grid-template-columns:1fr 1fr}.sticky{position:static}.line-table th:nth-child(2),.line-table td:nth-child(2){min-width:190px}.floor-head{align-items:flex-start;flex-direction:column}.floor-head input{max-width:100%}}@media(max-width:560px){.shell{padding:14px}.topbar{display:block}.nav{margin-top:12px}.grid-home,.room-grid,.form-grid,.floor-choice-grid,.panel-form{grid-template-columns:1fr}.hero h1{font-size:29px}.preview{padding:18px}.line-table{min-width:620px}.room-head{align-items:flex-start;flex-direction:column}.room-head .tools{flex-wrap:wrap}.room-title{min-width:0;width:100%}.page-title{display:block}.add-inline,.floor-draft-head{flex-direction:column}}@media print{body{background:#fff}.topbar,.notice,.page-title,.actions,.sticky,.preview-tools{display:none!important}.shell{padding:0;max-width:none}.modal-backdrop{position:static;background:#fff;padding:0;overflow:visible}.preview{max-width:none;margin:0;padding:20px;min-height:0}.preview h2{break-after:avoid}.preview table{break-inside:avoid}}
