:root{--navy:#06264a;--blue:#087ac1;--orange:#ea621c;--ink:#152d47;--muted:#5d7186;--line:#dae3ec;--bg:#f3f6fa;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 Arial,sans-serif}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:var(--blue);text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #1f9ce9;outline-offset:3px}.shell{display:grid;grid-template-columns:258px 1fr;min-height:100vh}.sidebar{background:var(--navy);color:#fff;padding:28px 20px;position:fixed;inset:0 auto 0 0;width:258px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px}.brand img{width:75px;height:64px;object-fit:contain}.brand strong{font-size:20px;letter-spacing:-.4px}.brand small{display:block;font-size:12px;color:#aac3d9}.side-label{font-size:12px;color:#96b3cb;letter-spacing:1.6px;margin:42px 12px 12px}.nav{display:flex;flex-direction:column;gap:7px}.nav button{display:flex;align-items:center;gap:14px;color:#bccddd;background:none;border:0;text-align:left;padding:14px 16px;border-radius:9px}.nav button.active{background:#164367;color:#fff;border-left:3px solid #35a9ed}.icon{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;flex-shrink:0}.sidebar-footer{margin-top:auto;border-top:1px solid #31516c;padding:24px 10px 0;color:#aac3d9;font-size:14px}.sidebar-footer strong{display:block;color:#fff;margin-bottom:7px}.sidebar-footer a{color:#fff}.main{grid-column:2;padding:0 42px 50px;max-width:1500px;width:100%;margin:auto}.topbar{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.topbar small{color:var(--muted)}.topbar strong{display:block;font-size:18px}.top-actions{display:flex;align-items:center;gap:12px}.lang{background:#fff;border:1px solid var(--line);padding:8px 12px;border-radius:8px;font-size:14px;font-weight:bold}.avatar{width:36px;height:36px;border-radius:50%;background:#e2ebf2;display:grid;place-items:center;font-size:13px;font-weight:bold}.content{padding-top:30px}.eyebrow{font-size:12px;letter-spacing:1.6px;font-weight:bold;text-transform:uppercase;color:var(--blue)}h1{font-size:32px;line-height:1.15;letter-spacing:-1px;margin:10px 0 12px}h2{font-size:22px;line-height:1.25;margin:0 0 12px}h3{font-size:17px;line-height:1.3;margin:0 0 8px}p{margin:0 0 16px}.muted{color:var(--muted)}.intro-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;gap:20px}.intro-row p{margin:0}.btn{border:0;background:var(--blue);color:#fff;border-radius:8px;padding:12px 18px;font-weight:bold;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px}.btn.orange{background:var(--orange)}.btn.secondary{background:#fff;border:1px solid var(--line);color:var(--navy)}.btn.small{padding:8px 12px;font-size:14px}.btn:disabled{opacity:.55;cursor:default}.workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:22px}.action-panel{background:var(--navy);border-radius:16px;padding:30px;color:#fff;position:relative;overflow:hidden}.action-panel .eyebrow{color:#78c9f6}.action-panel h2{font-size:28px;margin:10px 0 14px;max-width:480px}.action-panel p{color:#c0d1df;max-width:440px}.action-panel .buttons{margin-top:23px}.action-panel .btn.secondary{background:#133b5e;color:#fff;border-color:#41617d}.statline{display:flex;gap:32px;margin-top:30px;border-top:1px solid #365571;padding-top:18px;color:#becedd;font-size:14px}.statline strong{display:block;color:#fff;font-size:18px}.panel,.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.panel p{font-size:15px}.quick-item{display:flex;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #e9eff4}.quick-item:last-child{border-bottom:0}.quick-icon{width:42px;height:42px;background:#edf5fb;color:#087ac1;border-radius:9px;display:grid;place-items:center}.quick-item strong{font-size:15px;display:block}.quick-item small{color:var(--muted);font-size:13px}.section-head{display:flex;justify-content:space-between;align-items:center;margin:30px 0 15px}.section-head h2{font-size:21px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.service-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;text-align:left;color:var(--ink);transition:transform .15s,border-color .15s}.service-card:hover{border-color:var(--blue);transform:translateY(-2px)}.service-card .icon-box{color:var(--blue);background:#ecf5fa;width:42px;height:42px;display:grid;place-items:center;border-radius:9px;margin-bottom:17px}.service-card p{font-size:14px;color:var(--muted);margin:0}.service-card .service-number{float:right;color:#9baaba;font-size:12px}.pill{display:inline-block;font-size:13px;background:#eaf2f8;color:#285b81;padding:4px 10px;border-radius:20px}.pill.urgent{background:#fff0e6;color:#b45413}.pills{display:flex;gap:8px;flex-wrap:wrap}.buttons{display:flex;gap:10px;flex-wrap:wrap}.search{width:100%;max-width:450px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label{font-size:14px;font-weight:bold}.field input,.field select,.field textarea,.search{border:1px solid #cbd8e4;background:#fff;border-radius:8px;padding:11px 12px;color:var(--ink);width:100%;min-height:46px}.field textarea{min-height:140px;resize:vertical}.wide{grid-column:1/-1}.help{font-size:13px;color:var(--muted)}.checklabel{display:flex;gap:10px;align-items:flex-start;font-size:14px}.checklabel input{margin:4px 0 0;min-height:0;width:20px}.notice{padding:13px 16px;border-radius:8px;background:#eaf3fa;color:#28516f;font-size:14px;margin:15px 0;overflow-wrap:anywhere}.notice.warning{background:#fff3e7;color:#8c4914}.empty{text-align:center;padding:35px 20px}.empty .icon{width:44px;height:44px;color:#7697b5;margin-bottom:16px}.ref{font-family:monospace;font-size:16px;font-weight:bold;overflow-wrap:anywhere}.track-card{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:12px}.track-card p{font-size:14px;margin:5px 0;color:var(--muted)}.split{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.timeline{padding:5px 0}.step{position:relative;padding:0 0 23px 31px;border-left:2px solid #dbe6ef;margin-left:9px}.step:before{content:'';position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid #c5d5e3}.step.done:before{background:var(--blue);border-color:var(--blue)}.step.current strong{color:var(--blue)}.step:last-child{border-left:0}.step small{font-size:13px;color:var(--muted);display:block;margin-top:4px}.updates{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.update{padding:12px 0;border-bottom:1px solid #e7edf3}.update p{white-space:pre-wrap;margin:3px 0;overflow-wrap:anywhere}.update small{font-size:12px;color:var(--muted)}.amount{font-size:34px;font-weight:bold;color:var(--navy);letter-spacing:-1px;margin:12px 0}.payment-methods{display:grid;gap:10px;margin:18px 0}.method{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 16px;gap:12px;color:var(--navy);min-height:56px}.method span{display:flex;gap:12px;align-items:center}.qr{display:grid;place-items:center;background:#fff;padding:16px;border:1px solid var(--line);border-radius:12px;max-width:280px;margin:15px auto}.qr svg{width:100%;height:auto}.family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.family{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:13px;background:#fff;font-size:14px;text-align:left;color:var(--ink)}.family small{font-size:12px;color:var(--blue)}.staff-list{display:grid;gap:10px;margin:18px 0}.staff-item{width:100%;background:#fff;border:1px solid var(--line);border-radius:9px;text-align:left;padding:17px;color:var(--ink)}.staff-item strong{display:block}.staff-item small{color:var(--muted)}.back{border:0;background:none;padding:0 0 18px;color:var(--blue);font-weight:bold}.credentials{word-break:break-all;font-size:14px}.bottomnav{display:none}.offline{background:#fff0dd;color:#854513;text-align:center;padding:8px;font-size:14px}#toast{position:fixed;right:24px;bottom:24px;background:#102f4e;color:#fff;max-width:400px;padding:15px 20px;border-radius:10px;box-shadow:0 8px 30px #0003;z-index:99;display:none}#toast.show{display:block}.loading{text-align:center;margin:100px auto}.contact-block a{display:block;margin:12px 0}.smallprint{font-size:13px;color:var(--muted)}.mobile-brand{display:none}.app-footer{font-size:12px;color:#7c8e9f;margin-top:32px}.payment-confirmed{background:#e8f5ef;color:#176546;padding:16px;border-radius:9px;font-weight:bold}.admin-meta{display:flex;gap:12px;flex-wrap:wrap}.admin-meta span{font-size:14px}.receipt{max-width:750px}.keybox{background:#f1f6fa;border:1px solid var(--line);border-radius:10px;padding:18px}.error-text{color:#ac3421;font-size:14px} @media(max-width:1150px){.main{padding:0 26px 40px}.service-grid{grid-template-columns:repeat(2,1fr)}.workspace{grid-template-columns:1fr}.quick-panel{display:none}}@media(max-width:780px){.shell{display:block}.sidebar{display:none}.main{padding:0 18px 100px;max-width:650px}.topbar{height:78px}.topbar .desktop-title{display:none}.mobile-brand{display:flex}.mobile-brand img{width:55px;height:48px;object-fit:contain}.mobile-brand strong{font-size:17px}.mobile-brand small{font-size:11px}.top-actions{gap:8px}.avatar{display:none}.content{padding-top:24px}h1{font-size:28px}.intro-row{display:block}.intro-row .btn{margin-top:16px}.action-panel{padding:25px}.action-panel h2{font-size:25px}.service-grid{gap:12px}.service-card{padding:18px}.service-card h3{font-size:16px}.service-card p{font-size:14px}.service-card .icon-box{margin-bottom:14px}.split{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.family-grid{grid-template-columns:repeat(2,1fr)}.track-card{align-items:flex-start;flex-direction:column}.panel,.card{padding:20px}.bottomnav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:9px 8px calc(9px + env(safe-area-inset-bottom));z-index:50}.bottomnav button{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:12px;background:none;border:0;color:#7890a5;padding:3px}.bottomnav button.active{color:var(--blue);font-weight:bold}.bottomnav .icon{width:22px;height:22px}#toast{right:16px;left:16px;bottom:90px}.statline{gap:22px}.statline strong{font-size:16px}.app-footer{margin-top:24px}}@media(max-width:350px){.service-grid,.family-grid{grid-template-columns:1fr}.buttons .btn{width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media print{.sidebar,.topbar,.bottomnav,.buttons,.app-footer{display:none}.shell{display:block}.main{margin:0;padding:0}.panel{border:0}}

.space-top{margin-top:20px}.space-top-sm{margin-top:12px}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}
/* DSS Connect 2: account and commercial documents */
.account-button{white-space:nowrap}.line-edit{border:1px solid #d9e3ef;border-radius:12px;padding:18px;margin:16px 0}.line-edit legend{font-weight:700;padding:0 8px}.line-numbers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.line-numbers label{font-size:13px}.line-numbers input{margin-top:6px;min-width:0}.totals{padding:20px;background:#f1f6fb;text-align:right;border-radius:12px}.business-document{background:white;border:1px solid #d9e3ef;border-radius:14px;padding:32px;margin-top:24px}.document-heading{display:flex;justify-content:space-between;gap:24px;border-bottom:3px solid #0a2b4d;padding-bottom:20px}.document-heading h1{font-size:32px}.document-heading h2{font-size:20px}.document-logo{width:110px;height:auto}.bill-to{padding:20px 0}.table-scroll{overflow-x:auto}.document-table{border-collapse:collapse;width:100%;font-size:13px}.document-table th{background:#0a2b4d;color:white;text-align:left}.document-table td,.document-table th{padding:10px;border-bottom:1px solid #d9e3ef;vertical-align:top}.document-table td:nth-child(2){min-width:180px;overflow-wrap:anywhere}.document-totals{text-align:right;padding:20px 0}.document-totals h2{font-size:24px}.document-terms{border-top:1px solid #d9e3ef;padding-top:16px}.document-actions{margin-top:10px}details>summary{cursor:pointer;font-weight:700}details.panel{padding:20px}
@media(max-width:700px){.line-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}.business-document{padding:16px}.document-heading{flex-direction:column}.top-actions{gap:6px}.top-actions .account-button{font-size:12px;padding:8px}.document-heading h1{font-size:27px}}
@media print{@page{size:A4;margin:14mm}body{background:white;color:#152c42}.sidebar,.topbar,.bottomnav,.app-footer,.document-actions,#toast,.offline{display:none!important}.shell,.main,.content{display:block!important;margin:0!important;padding:0!important;max-width:none!important}.business-document{border:0;border-radius:0;padding:0;margin:0;font-size:11pt}.document-heading{flex-direction:row}.document-heading h1{font-size:24pt}.document-table{font-size:9pt}.document-table td,.document-table th{padding:7px}.document-table th{background:#eee;color:#152c42}.table-scroll{overflow:visible}.document-table td:nth-child(2){min-width:0;max-width:260px}.document-table thead{display:table-header-group}.document-table tr{break-inside:avoid}.document-totals,.document-terms{break-inside:avoid}.document-logo{width:90px}a{color:inherit;text-decoration:none}.business-document p{overflow-wrap:anywhere}}
.line-numbers label{min-width:0}.line-numbers input{width:100%}.document-heading>div{min-width:0;overflow-wrap:anywhere}.document-payment{break-inside:avoid}.document-payment .qr{width:140px;margin:12px 0}
@media(max-width:780px){.topbar{height:auto;min-height:100px;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px 0}.mobile-brand strong{font-size:18px}.mobile-brand small{font-size:10px}.top-actions{justify-content:flex-end}.top-actions .account-button{font-size:12px}}
#document-request{width:100%;min-width:0;max-width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink)}.credentials{overflow-wrap:anywhere}.line-edit{min-width:0}.document-terms{overflow-wrap:anywhere}
@media print{.business-document .document-heading p{font-size:9pt;margin-bottom:6px}.business-document .document-heading{gap:16px;padding-bottom:12px}.business-document .bill-to{padding:12px 0}.business-document .document-totals{padding:12px 0}.business-document .document-terms{padding-top:10px}.business-document .document-payment .qr{width:105px;margin:6px 0}.business-document .document-payment .smallprint{font-size:8pt}.business-document h3{font-size:11pt}.business-document .smallprint{margin-bottom:6px}}
/* DSS Connect v3: team inbox, price lists and accessible staff navigation */
.sidebar{overflow-y:auto}.sidebar-footer{margin-top:24px}.top-actions{flex-wrap:wrap}.staff-access{background:#eaf3fa;color:var(--navy)}#alert-badge{background:var(--orange);color:white;border-radius:12px;padding:2px 6px}.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.price-card{min-width:0;overflow-wrap:anywhere}.price-card h3{margin-top:12px}.unread-alert{border-left:4px solid var(--orange)}select{max-width:100%;min-width:0}#price-pick{width:100%}.line-numbers{grid-template-columns:repeat(4,minmax(0,1fr))}.line-edit select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px}.line-edit [data-rate]{display:block;margin:8px 0}.guide-content section{break-inside:avoid}
@media(max-width:780px){.price-grid{grid-template-columns:1fr}.top-actions{justify-content:flex-start}.topbar{min-height:110px}.bottomnav button{font-size:11px}.line-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}.price-card{padding:18px}}
@media print{.guide-actions,.back{display:none!important}.guide-content .panel{border:0;padding:8px 0;margin-top:10px}.guide-content h2{font-size:14pt}.guide-content p{font-size:10pt}.totals hr,.document-totals hr{border:0;border-top:1px solid #aaa}.document-totals{font-size:10pt}.document-totals strong{font-size:13pt}}
.panel,.card{min-width:0;overflow-wrap:anywhere}.top-actions>button{max-width:100%}.form-grid .field{min-width:0}

.document-heading>div{min-width:0}.document-heading strong{overflow-wrap:anywhere}
