/* susQR app.css: purged Bootstrap 4.5.2 subset + site styles + self-hosted Inter.
   Rebuild the Bootstrap part with scratch purge.py if new Bootstrap classes are added. */
/* Inter variable font (400-800), self-hosted; latin-ext only downloads when those glyphs appear */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/inter-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---- Bootstrap (purged) ---- */
:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,*::before,*::after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0 !important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:0.5rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-original-title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([class]){color:inherit;text-decoration:none}a:not([href]):not([class]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:0.75rem;padding-bottom:0.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:0.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[role="button"]{cursor:pointer}select{word-wrap:normal}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button:not(:disabled),[type="button"]:not(:disabled),[type="reset"]:not(:disabled),[type="submit"]:not(:disabled){cursor:pointer}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{padding:0;border-style:none}input[type="radio"],input[type="checkbox"]{box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px;-webkit-appearance:none}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none !important}h1,h2,h3,h4,h5,h6{margin-bottom:0.5rem;font-weight:500;line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,0.1)}small,.small{font-size:80%;font-weight:400}mark{padding:0.2em;background-color:#fcf8e3}.img-fluid{max-width:100%;height:auto}code{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:0.2rem 0.4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:0.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.col-4,.col-6,.col-md-3,.col-md-4,.col-md-6,.col-lg-4,.col-lg-6,.col-lg-8{position:relative;width:100%;padding-right:15px;padding-left:15px}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}@media (min-width:768px){.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}}@media (min-width:992px){.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table th,.table td{padding:0.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody + tbody{border-top:2px solid #dee2e6}.table-bordered{border:1px solid #dee2e6}.table-bordered th,.table-bordered td{border:1px solid #dee2e6}.table-bordered thead th,.table-bordered thead td{border-bottom-width:2px}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + 0.75rem + 2px);padding:0.375rem 0.75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:0.25rem;transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 0.2rem rgba(0,123,255,0.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}input[type="date"].form-control,input[type="time"].form-control,input[type="datetime-local"].form-control,input[type="month"].form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-sm{height:calc(1.5em + 0.5rem + 2px);padding:0.25rem 0.5rem;font-size:0.875rem;line-height:1.5;border-radius:0.2rem}select.form-control[size],select.form-control[multiple]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:0.375rem 0.75rem;font-size:1rem;line-height:1.5;border-radius:0.25rem;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn:focus{outline:0;box-shadow:0 0 0 0.2rem rgba(0,123,255,0.25)}.btn:disabled{opacity:0.65}fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary:focus{color:#fff;background-color:#0069d9;border-color:#0062cc;box-shadow:0 0 0 0.2rem rgba(38,143,255,0.5)}.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary:focus{color:#fff;background-color:#5a6268;border-color:#545b62;box-shadow:0 0 0 0.2rem rgba(130,138,145,0.5)}.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success:focus{color:#fff;background-color:#218838;border-color:#1e7e34;box-shadow:0 0 0 0.2rem rgba(72,180,97,0.5)}.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info:focus{color:#fff;background-color:#138496;border-color:#117a8b;box-shadow:0 0 0 0.2rem rgba(58,176,195,0.5)}.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning:focus{color:#212529;background-color:#e0a800;border-color:#d39e00;box-shadow:0 0 0 0.2rem rgba(222,170,12,0.5)}.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger:focus{color:#fff;background-color:#c82333;border-color:#bd2130;box-shadow:0 0 0 0.2rem rgba(225,83,97,0.5)}.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:focus{box-shadow:0 0 0 0.2rem rgba(0,123,255,0.5)}.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:focus{box-shadow:0 0 0 0.2rem rgba(108,117,125,0.5)}.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:focus{box-shadow:0 0 0 0.2rem rgba(220,53,69,0.5)}.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-lg{padding:0.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:0.3rem}.btn-sm{padding:0.25rem 0.5rem;font-size:0.875rem;line-height:1.5;border-radius:0.2rem}.btn-block{display:block;width:100%}.btn-block + .btn-block{margin-top:0.5rem}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{transition:opacity 0.15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + 0.75rem + 2px);margin:0;opacity:0}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,0.125);border-radius:0.25rem}.card>hr{margin-right:0;margin-left:0}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;min-height:1px;padding:1.25rem}.card-header{padding:0.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,0.03);border-bottom:1px solid rgba(0,0,0,0.125)}.card-header:first-child{border-radius:calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0}.card-footer{padding:0.75rem 1.25rem;background-color:rgba(0,0,0,0.03);border-top:1px solid rgba(0,0,0,0.125)}.card-footer:last-child{border-radius:0 0 calc(0.25rem - 1px) calc(0.25rem - 1px)}.badge{display:inline-block;padding:0.25em 0.4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:0.25rem;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:hover,a.badge:focus{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:hover,a.badge-secondary:focus{color:#fff;background-color:#545b62}a.badge-secondary:focus{outline:0;box-shadow:0 0 0 0.2rem rgba(108,117,125,0.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:hover,a.badge-success:focus{color:#fff;background-color:#1e7e34}a.badge-success:focus{outline:0;box-shadow:0 0 0 0.2rem rgba(40,167,69,0.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:hover,a.badge-danger:focus{color:#fff;background-color:#bd2130}a.badge-danger:focus{outline:0;box-shadow:0 0 0 0.2rem rgba(220,53,69,0.5)}.alert{position:relative;padding:0.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:0.25rem}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:0.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}button.close{padding:0;background-color:transparent;border:0}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:0.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:0.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}.bg-warning{background-color:#ffc107 !important}a.bg-warning:hover,a.bg-warning:focus,button.bg-warning:hover,button.bg-warning:focus{background-color:#d39e00 !important}.bg-light{background-color:#f8f9fa !important}a.bg-light:hover,a.bg-light:focus,button.bg-light:hover,button.bg-light:focus{background-color:#dae0e5 !important}.border{border:1px solid #dee2e6 !important}.border-warning{border-color:#ffc107 !important}.rounded{border-radius:0.25rem !important}.d-none{display:none !important}.d-block{display:block !important}.d-flex{display:-ms-flexbox !important;display:flex !important}.flex-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.justify-content-end{-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-center{-ms-flex-pack:center !important;justify-content:center !important}.justify-content-between{-ms-flex-pack:justify !important;justify-content:space-between !important}.align-items-center{-ms-flex-align:center !important;align-items:center !important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shadow-sm{box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075) !important}.shadow{box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important}.h-100{height:100% !important}.mb-0{margin-bottom:0 !important}.mt-1{margin-top:0.25rem !important}.mr-1{margin-right:0.25rem !important}.mb-1{margin-bottom:0.25rem !important}.ml-1{margin-left:0.25rem !important}.mt-2{margin-top:0.5rem !important}.mr-2{margin-right:0.5rem !important}.mb-2{margin-bottom:0.5rem !important}.ml-2{margin-left:0.5rem !important}.mt-3{margin-top:1rem !important}.mr-3{margin-right:1rem !important}.mb-3{margin-bottom:1rem !important}.ml-3{margin-left:1rem !important}.mt-4,.my-4{margin-top:1.5rem !important}.mb-4,.my-4{margin-bottom:1.5rem !important}.mt-5{margin-top:3rem !important}.p-2{padding:0.5rem !important}.p-3{padding:1rem !important}.py-3{padding-top:1rem !important}.py-3{padding-bottom:1rem !important}.py-5{padding-top:3rem !important}.py-5{padding-bottom:3rem !important}@media (min-width:768px){.mb-md-0{margin-bottom:0 !important}}.text-left{text-align:left !important}.text-center{text-align:center !important}@media (min-width:768px){.text-md-left{text-align:left !important}.text-md-right{text-align:right !important}}.font-weight-bold{font-weight:700 !important}.text-primary{color:#007bff !important}a.text-primary:hover,a.text-primary:focus{color:#0056b3 !important}.text-success{color:#28a745 !important}a.text-success:hover,a.text-success:focus{color:#19692c !important}.text-warning{color:#ffc107 !important}a.text-warning:hover,a.text-warning:focus{color:#ba8b00 !important}.text-danger{color:#dc3545 !important}a.text-danger:hover,a.text-danger:focus{color:#a71d2a !important}.text-dark{color:#343a40 !important}a.text-dark:hover,a.text-dark:focus{color:#121416 !important}.text-muted{color:#6c757d !important}@media print{*,*::before,*::after{text-shadow:none !important;box-shadow:none !important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap !important}pre,blockquote{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px !important}.container{min-width:992px !important}.badge{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #dee2e6 !important}}

/* ---- susQR site styles ---- */
:root {
--navy: #0a1e32;
--navy-light: #133252;
--teal: #0e8ca0;
--teal-light: #3db8cc;
--teal-dark: #0a7080;
--cyan-pale: #e0f4f8;
--bg: #f0f4f7;
--card-bg: #ffffff;
--text: #1a2a3a;
--text-muted: #5a6d7e;
--border: #d8e2ea;
--success: #1a9a5c;
--warning: #cc8400;
--danger: #c43a3a;
}
* { box-sizing: border-box; }
body {
margin: 0; padding: 0; min-height: 100vh;
background:
radial-gradient(900px 400px at 85% -100px, rgba(61,184,204,0.12), transparent 60%),
radial-gradient(700px 350px at 0% 0%, rgba(14,140,160,0.07), transparent 55%),
var(--bg);
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
color: var(--text); line-height: 1.6;
}
.site-header {
background: linear-gradient(135deg, var(--navy) 0%, #0d2947 60%, #0f3555 100%);
color: white; padding: 1rem 0;
position: sticky; top: 0; z-index: 1020;
border-bottom: 1px solid rgba(61,184,204,0.25);
box-shadow: 0 2px 20px rgba(10,30,50,0.25);
}
.site-header .container { display: flex; justify-content: space-between; align-items: center; }
.brand { font-weight: 700; font-size: 1.4rem; color: white; text-decoration: none; letter-spacing: -0.02em; }
.brand:hover { color: var(--teal-light); text-decoration: none; }
.brand-sub { font-size: 0.82rem; color: var(--teal-light); font-weight: 400; margin-left: 0.75rem; }
.nav-links { display: flex; gap: 0.25rem; align-items: center; }
.nav-links a, .nav-links .nav-dropdown > span { color: rgba(255,255,255,0.8); text-decoration: none; font-size: 0.88rem; font-weight: 500; padding: 0.35rem 0.65rem; border-radius: 6px; transition: background 0.15s, color 0.15s; cursor: pointer; }
.nav-links a:hover, .nav-links .nav-dropdown:hover > span { background: rgba(255,255,255,0.1); color: white; text-decoration: none; }
.nav-dropdown { position: relative; }
.nav-dropdown-menu { display: none; position: absolute; top: 100%; right: 0; background: var(--navy-light); border: 1px solid rgba(255,255,255,0.1); border-radius: 8px; padding: 0.4rem 0; min-width: 200px; z-index: 1000; box-shadow: 0 8px 24px rgba(0,0,0,0.3); margin-top: 0.25rem; }
.nav-dropdown:hover .nav-dropdown-menu { display: block; }
.nav-dropdown-menu a { display: block; padding: 0.45rem 1rem; border-radius: 0; font-size: 0.85rem; white-space: nowrap; }
.nav-dropdown-menu a:hover { background: rgba(255,255,255,0.08); }
.hamburger { display: none; background: none; border: 1px solid rgba(255,255,255,0.3); color: white; font-size: 1.2rem; padding: 0.25rem 0.55rem; border-radius: 6px; cursor: pointer; }
.container { max-width: 960px; margin: 0 auto; padding: 0 1rem; }
main > .container { padding-top: 1.5rem; padding-bottom: 2rem; }
.card { border: 1px solid var(--border); border-radius: 16px; background: var(--card-bg); box-shadow: 0 4px 24px rgba(10,30,50,0.07), 0 1px 3px rgba(10,30,50,0.05); overflow: hidden; }
.card:hover { transform: none; box-shadow: 0 4px 24px rgba(10,30,50,0.07), 0 1px 3px rgba(10,30,50,0.05); }
.card-header { background: linear-gradient(135deg, var(--navy) 0%, #0f3050 100%) !important; color: white !important; padding: 1.25rem 1.5rem; border-bottom: 2px solid var(--teal); border-radius: 16px 16px 0 0 !important; }
.card-header h3,.card-header h4,.card-header h5,.card-header h6 { margin: 0; font-weight: 700; }
.card-body { padding: 1.5rem; }
.card-footer { background: var(--cyan-pale); border-top: 1px solid var(--border); padding: 1.25rem 1.5rem; border-radius: 0 0 16px 16px; }
.btn { border-radius: 10px; font-weight: 600; padding: 0.6rem 1.4rem; font-size: 0.9rem; border: none; transition: background 0.15s, transform 0.12s, box-shadow 0.15s; }
.btn:active { transform: scale(0.97); }
.btn-primary { background: linear-gradient(135deg, var(--teal) 0%, var(--teal-dark) 100%); color: white; box-shadow: 0 2px 10px rgba(14,140,160,0.35); }
.btn-primary:hover { background: linear-gradient(135deg, var(--teal-light) 0%, var(--teal) 100%); color: white; transform: translateY(-1px); box-shadow: 0 4px 16px rgba(14,140,160,0.45); }
.btn-outline-primary { border: 2px solid var(--teal); color: var(--teal); background: white; }
.btn-outline-primary:hover { background: var(--teal); color: white; }
.btn-success { background: var(--success); color: white; }
.btn-success:hover { background: #158050; }
.btn-info { background: var(--navy-light); color: white; }
.btn-info:hover { background: var(--navy); color: white; }
.btn-warning { background: var(--warning); color: white; }
.btn-danger { background: var(--danger); color: white; }
.btn-danger:hover { background: #a83232; }
.btn-secondary { background: #6b7f8e; color: white; }
.btn-secondary:hover { background: #5a6d7e; }
.btn-lg { padding: 0.75rem 2rem; font-size: 1rem; }
.btn-sm { padding: 0.35rem 0.7rem; font-size: 0.82rem; }
.btn-link { color: var(--teal); font-weight: 500; }
.form-control { border-radius: 8px; border: 1.5px solid var(--border); padding: 0.6rem 0.85rem; font-size: 0.9rem; transition: border-color 0.15s; }
.form-control:focus { border-color: var(--teal); box-shadow: 0 0 0 2px rgba(14,140,160,0.15); outline: none; }
.alert { border-radius: 8px; border: none; padding: 0.85rem 1.2rem; font-weight: 500; font-size: 0.9rem; transition: opacity 0.2s; }
.alert-success { background: #e8f8ef; border-left: 3px solid var(--success); color: #0f5132; }
.alert-danger { background: #fbeaea; border-left: 3px solid var(--danger); color: #791d1d; }
.alert-warning { background: #fef5e0; border-left: 3px solid var(--warning); color: #6e4a00; }
.alert-info { background: var(--cyan-pale); border-left: 3px solid var(--teal); color: var(--navy); }
.badge { padding: 0.3rem 0.6rem; border-radius: 6px; font-weight: 600; font-size: 0.78rem; }
.badge-success { background: var(--success); color: white; }
.badge-danger { background: var(--danger); color: white; }
.badge-warning { background: var(--warning); color: white; }
.badge-secondary { background: #6b7f8e; color: white; }
.stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 0.75rem; }
.stat-card { background: var(--bg); border: 1px solid var(--border); border-radius: 10px; padding: 1rem; text-align: center; }
.stat-number { font-size: 1.75rem; font-weight: 700; color: var(--teal); }
.stat-card p { color: var(--text-muted); font-weight: 600; font-size: 0.82rem; margin: 0; }
.glass-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
.quishing-article { background: var(--card-bg); border: 1px solid var(--border); border-radius: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); margin-top: 2rem; overflow: hidden; }
.article-header { background: var(--danger); color: white; padding: 1.5rem; text-align: center; }
.article-content { padding: 1.5rem; line-height: 1.7; }
.warning-box { background: #fbeaea; border-left: 3px solid var(--danger); border-radius: 6px; padding: 1.25rem; margin: 1.5rem 0; }
.tip-box { background: #e8f8ef; border-left: 3px solid var(--success); border-radius: 6px; padding: 1.25rem; margin: 1.5rem 0; }
.hero-section { background: var(--navy); color: white; padding: 2rem 1.5rem; border-radius: 12px; margin-bottom: 1.5rem; text-align: center; }
.hero-title { font-size: 2rem; font-weight: 700; color: white; margin-bottom: 0.5rem; -webkit-text-fill-color: white; }
.hero-subtitle { font-size: 1rem; color: var(--teal-light); margin-bottom: 0; }
.site-footer { text-align: center; padding: 1.5rem 1rem; color: var(--text-muted); font-size: 0.82rem; }
.site-footer a { color: var(--teal); }
.site-footer a:hover { color: var(--teal-dark); }
.spinner-border { width: 2.5rem; height: 2.5rem; border-width: 0.25rem; }
@media (max-width: 768px) {
.nav-links { display: none; flex-direction: column; width: 100%; padding-top: 0.75rem; }
.nav-links.open { display: flex; }
.nav-links a, .nav-links .nav-dropdown > span { padding: 0.5rem 0; }
.nav-dropdown-menu { position: static; background: transparent; border: none; box-shadow: none; padding: 0 0 0 1rem; margin-top: 0; }
.nav-links.open .nav-dropdown-menu { display: block; }
.hamburger { display: block; }
.site-header .container { flex-wrap: wrap; }
.hero-title { font-size: 1.5rem; }
main > .container { padding-top: 1rem; }
.card-body { padding: 1.25rem; }
.stats-grid { grid-template-columns: repeat(2, 1fr); gap: 0.5rem; }
.stat-number { font-size: 1.5rem; }
.brand-sub { display: none; }
}
