.registration-page{padding:3vh 0 5vh}.registration-card{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.15fr);max-width:980px;margin:0 auto;overflow:hidden;border:1px solid #d8e1ea;border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(23,54,93,.12)}.registration-intro{position:relative;padding:48px;color:#fff;background:linear-gradient(145deg,#102d50,#1d527d 72%,#24679b)}.registration-intro:after{content:'';position:absolute;right:-80px;bottom:-100px;width:260px;height:260px;border:50px solid rgba(255,255,255,.06);border-radius:50%}.auth-eyebrow,.checkout-eyebrow{display:inline-block;margin-bottom:10px;color:#b9dcf4;font-size:.76rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.registration-intro h1{margin:0 0 14px;font-size:2.15rem;line-height:1.12}.registration-intro>p{margin:0;color:#dbeaf5;line-height:1.65}.approval-notice{display:flex;gap:12px;margin-top:30px;padding:15px;border:1px solid rgba(255,255,255,.18);border-radius:13px;background:rgba(255,255,255,.1);backdrop-filter:blur(4px)}.approval-icon{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#fff;color:#1d527d;font-weight:900}.approval-notice strong,.approval-notice span{display:block}.approval-notice div span{margin-top:4px;color:#dbeaf5;font-size:.82rem;line-height:1.4}.registration-benefits{position:relative;z-index:1;margin:28px 0 0;padding:0;list-style:none}.registration-benefits li{display:flex;gap:9px;margin-top:12px;color:#eaf4fb;font-size:.9rem}.registration-benefits li span{color:#8fd3b1;font-weight:900}.registration-form-panel{padding:44px 48px}.form-heading h2{margin:0;font-size:1.55rem}.form-heading p{margin:5px 0 20px;color:#667085}.professional-form label,.checkout-card label{margin:14px 0 0;color:#344054;font-size:.86rem}.professional-form input,.checkout-card input{margin-top:7px;padding:12px 13px;border-color:#c8d3df;background:#fbfcfe}.professional-form input:focus,.checkout-card input:focus{outline:3px solid rgba(36,103,155,.13);border-color:#24679b}.password-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-error{display:block;margin-top:5px;color:#b42318;font-size:.78rem}.password-error{margin-top:7px}.password-guidance{display:flex;gap:8px;align-items:flex-start;margin:14px 0;color:#667085;font-size:.78rem;line-height:1.45}.registration-submit{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:20px;padding:13px 16px;border-radius:9px}.auth-switch{margin:22px 0 0;text-align:center;color:#667085;font-size:.88rem}.auth-switch a{color:#24679b;font-weight:800;text-decoration:none}
.checkout-page,.plans-page{padding-bottom:30px}.checkout-heading{display:flex;justify-content:space-between;gap:25px;align-items:flex-end;margin:8px 0 24px}.checkout-heading h1,.plans-heading h1{margin:0;font-size:2rem}.checkout-heading p,.plans-heading p{max-width:700px;margin:7px 0 0;color:#667085}.checkout-eyebrow{margin-bottom:7px;color:#24679b}.secure-checkout-badge{flex:none;padding:9px 13px;border:1px solid #b9d8c8;border-radius:999px;background:#edf8f2;color:#226447;font-size:.82rem;font-weight:800}.professional-checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.checkout-card,.checkout-summary,.professional-plan-card{border:1px solid #dce3ea;border-radius:17px;background:#fff;box-shadow:0 8px 26px rgba(23,54,93,.07)}.checkout-card{padding:30px}.checkout-section-heading{display:flex;gap:12px;align-items:flex-start}.checkout-section-heading>span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#17365d;color:#fff;font-size:.82rem;font-weight:900}.checkout-section-heading h2{margin:1px 0 3px;font-size:1.16rem}.checkout-section-heading p{margin:0;color:#667085;font-size:.84rem}.checkout-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 17px;margin-top:8px}.checkout-full{grid-column:1/-1}.checkout-divider{height:1px;margin:27px 0;background:#e4e9ef}.professional-hosted-fields{margin-top:17px;padding:17px;border:1px solid #dce3ea;border-radius:12px;background:#f8fafc}.professional-hosted-fields label{margin:0}.hosted-field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:13px}.professional-hosted-fields [id]{height:48px;margin-top:7px;padding:8px;border:1px solid #c8d3df;border-radius:8px;background:#fff}.tokenization-note{display:flex;gap:7px;align-items:center;margin-top:13px;color:#527064;font-size:.77rem}.coupon-field{display:block;margin-top:18px!important}.coupon-field>span{display:flex;justify-content:space-between}.coupon-field small{color:#7b8794;font-weight:600}.checkout-submit{display:flex;justify-content:space-between;width:100%;margin-top:22px;padding:14px 16px;background:#17365d}.checkout-submit:disabled{cursor:wait;opacity:.75}.pay-button-price{padding-left:20px}.checkout-consent{margin:11px 0 0;color:#7b8794;font-size:.72rem;text-align:center}.checkout-summary{position:sticky;top:82px;padding:24px}.summary-label,.plan-status{display:inline-block;color:#24679b;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.summary-plan h2{margin:8px 0 5px}.summary-price{display:flex;align-items:baseline;gap:6px;margin-bottom:22px}.summary-price strong{font-size:2.15rem;color:#17365d}.summary-price span{color:#667085}.summary-row,.summary-total{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-top:1px solid #e4e9ef;font-size:.86rem}.summary-row span{color:#667085}.summary-total{margin-top:4px;font-size:1rem}.checkout-summary>p{color:#7b8794;font-size:.75rem;line-height:1.45}.checkout-summary>a{color:#24679b;font-size:.82rem;font-weight:800;text-decoration:none}
.plans-heading{max-width:720px;margin:10px auto 30px;text-align:center}.professional-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px;max-width:1050px;margin:0 auto}.professional-plan-card{display:flex;flex-direction:column;padding:28px}.professional-plan-card h2{margin:8px 0 0}.plan-price{display:flex;align-items:baseline;gap:6px;margin:20px 0}.plan-price strong{color:#17365d;font-size:2.25rem}.plan-price span{color:#667085}.plan-feature{display:flex;gap:11px;padding:12px 0;border-top:1px solid #e8edf2}.plan-feature>span{display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:50%;background:#e3f3e2;color:#267034;font-size:.75rem;font-weight:900}.plan-feature strong,.plan-feature small{display:block}.plan-feature strong{font-size:.86rem}.plan-feature small{margin-top:3px;color:#667085;line-height:1.4}.plan-continue{display:flex;justify-content:space-between;margin-top:auto;padding:12px 14px}
@media(max-width:860px){.registration-card{grid-template-columns:1fr;max-width:600px}.registration-intro{padding:35px}.registration-form-panel{padding:35px}.professional-checkout-grid{grid-template-columns:1fr}.checkout-summary{position:static}.checkout-heading{align-items:flex-start}.secure-checkout-badge{margin-top:4px}}
@media(max-width:600px){.registration-page{padding:0}.registration-card{border-radius:15px}.registration-intro,.registration-form-panel,.checkout-card,.checkout-summary{padding:24px 19px}.registration-intro h1,.checkout-heading h1,.plans-heading h1{font-size:1.65rem}.password-grid,.checkout-form-grid,.hosted-field-row{grid-template-columns:1fr}.checkout-full{grid-column:auto}.checkout-heading{flex-direction:column}.secure-checkout-badge{align-self:flex-start}.professional-hosted-fields{padding:13px}}

.coupon-guidance{display:flex;gap:8px;align-items:flex-start;margin:8px 0 2px;padding:10px 11px;border:1px solid #dbe7f0;border-radius:8px;background:#f5f9fc;color:#456276;font-size:.78rem;line-height:1.45}.optional-label{float:right;color:#7b8794;font-size:.72rem;font-weight:700}

/* SaaS application shell. Registration, billing and project routes are deliberately excluded. */
.saas-ui{--saas-navy:#102a43;--saas-blue:#1f6fa8;--saas-line:#dfe7ef;--saas-muted:#65758b;background:linear-gradient(180deg,#edf3f8 0,#f6f8fb 220px,#f6f8fb 100%)}
.saas-ui .topbar{height:72px;padding:0 max(24px,calc((100% - 1240px)/2));background:rgba(16,42,67,.98);box-shadow:0 1px 0 rgba(255,255,255,.08),0 10px 30px rgba(16,42,67,.12)}
.saas-ui .brand{display:flex;align-items:center;letter-spacing:-.025em}.saas-ui .brand img{display:block;max-width:168px;max-height:42px;object-fit:contain}.saas-ui .topbar nav{gap:5px}.saas-ui .topbar nav a,.saas-ui .topbar .link{padding:9px 12px;border-radius:8px;color:#d8e6f1;font-size:.88rem;font-weight:700;transition:.18s ease}.saas-ui .topbar nav a:hover,.saas-ui .topbar .link:hover{background:rgba(255,255,255,.1);color:#fff}
.saas-ui .shell{max-width:1240px;padding:34px 24px 55px}.saas-ui .page-head{margin-bottom:25px}.saas-page-head{gap:24px}.page-kicker{display:block;margin-bottom:7px;color:#1f6fa8;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.saas-ui .page-head h1{color:#162b40;font-size:2rem;letter-spacing:-.035em}.saas-ui .page-head p{margin-top:8px;color:var(--saas-muted);font-size:.94rem}
.saas-ui .panel,.saas-ui .auth-card{border-color:var(--saas-line);border-radius:16px;box-shadow:0 7px 24px rgba(16,42,67,.055)}.saas-ui .saas-panel{padding:25px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.panel-heading>div{min-width:0}.panel-heading h2{display:inline-block;margin:0;color:#1d3348;font-size:1.08rem}.panel-heading p{margin:5px 0 0;color:var(--saas-muted);font-size:.82rem}.panel-heading>a{color:#1f6fa8;font-size:.82rem;font-weight:800;text-decoration:none}.panel-icon{display:inline-grid;place-items:center;width:32px;height:32px;margin:0 10px 0 0;border-radius:9px;background:#e3f0f8;color:#1f6fa8;font-weight:900;vertical-align:middle}
.saas-ui .button,.saas-ui button{border-radius:9px;box-shadow:0 2px 5px rgba(31,111,168,.15);transition:transform .15s ease,box-shadow .15s ease}.saas-ui .button:hover,.saas-ui button:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(31,111,168,.19)}.button-with-icon{display:inline-flex!important;align-items:center;justify-content:space-between;gap:18px}.button-with-icon span{font-size:1rem}
.dashboard-metrics,.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.saas-ui .metric{min-height:102px;flex-direction:row;align-items:center;gap:16px;border-color:var(--saas-line);border-radius:15px;box-shadow:0 5px 20px rgba(16,42,67,.045)}.saas-ui .metric strong,.saas-ui .metric span{display:block}.saas-ui .metric strong{color:#162b40;font-size:1.5rem;text-transform:none}.saas-ui .metric div>span{margin-top:4px;color:var(--saas-muted);font-size:.8rem;font-weight:700}.metric-icon{display:grid!important;place-items:center;flex:0 0 43px;height:43px;border-radius:12px;background:#e3f0f8;color:#1f6fa8;font-size:1.1rem;font-weight:900}.metric-icon-green{background:#e4f4eb;color:#26734c}.metric-icon-gold{background:#fff0d5;color:#9a6811}
.saas-ui .list-row{padding:14px 8px;border-color:#e9eef3}.saas-ui .list-row:hover{background:#f8fafc}.saas-ui .list-row strong{color:#243b53}.saas-ui .list-row small{color:#738196}.saas-ui .badge{background:#e8f0f7;color:#34526d}.badge-lifetime{background:#e5f5ed!important;color:#23704a!important}.empty-state{padding:36px 20px;text-align:center}.empty-state>span{display:grid;place-items:center;width:50px;height:50px;margin:0 auto 12px;border-radius:15px;background:#e5f0f8;color:#1f6fa8;font-size:1.2rem}.empty-state h3{margin:0}.empty-state p{color:var(--saas-muted)}.empty-inline{padding:18px;border-radius:10px;background:#eef8f3;color:#26734c;font-size:.88rem;font-weight:700}
.saas-ui .subnav{padding:5px;border:1px solid #dce6ee;border-radius:11px;background:rgba(255,255,255,.72);box-shadow:0 3px 10px rgba(16,42,67,.04)}.saas-ui .subnav a{padding:8px 11px;background:transparent;color:#425b70;font-size:.78rem;font-weight:800}.saas-ui .subnav a:hover{background:#fff;color:#1f6fa8}
.saas-ui label{color:#3d5063;font-size:.83rem}.saas-ui input,.saas-ui select,.saas-ui textarea{border-color:#cbd7e2;background:#fbfcfd}.saas-ui input:focus,.saas-ui select:focus,.saas-ui textarea:focus{outline:3px solid rgba(31,111,168,.12);border-color:#1f6fa8;background:#fff}.saas-ui label small{display:block;margin-top:5px;color:#7a8898;font-weight:500;line-height:1.4}.compact-form{gap:5px 14px}.section-divider{display:flex;align-items:center;gap:10px;margin:25px 0 7px;color:#718095;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.section-divider:after{content:'';height:1px;flex:1;background:#e5ebf1}
.commerce-grid{align-items:start}.exception-option{display:flex!important;align-items:flex-start;gap:11px;margin:17px 0!important;padding:14px;border:1px solid #cddfec;border-radius:11px;background:#f4f9fc;cursor:pointer}.exception-option input{flex:0 0 auto;width:auto;margin:3px 0 0}.exception-option strong,.exception-option small{display:block}.exception-option strong{color:#23435e}.exception-option small{margin-top:4px;color:#65788b;font-size:.75rem;line-height:1.45}.exception-plan{margin:-6px 0 14px;padding:12px 14px;border-left:3px solid #2a815b;background:#f1f9f5}.coupon-discount-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;transition:opacity .2s}.view-muted{opacity:.45}.coupon-row>span:last-child{text-align:right}.coupon-row .badge+small{margin-top:5px}.view-hidden{display:none!important}
.saas-ui .auth-card{overflow:hidden;padding:30px}.saas-ui .auth-card:before{content:'';display:block;width:46px;height:5px;margin-bottom:24px;border-radius:999px;background:linear-gradient(90deg,#1f6fa8,#43a47a)}.saas-ui .auth-card h1{margin:0 0 8px;color:#172f45;letter-spacing:-.025em}.saas-ui .auth-card button{width:100%;margin-top:10px;padding:12px}.saas-ui .auth-card a{color:#1f6fa8;font-weight:700;text-decoration:none}.saas-ui .template-builder .blocks [draggable]{border:1px solid #dae5ed;background:#f2f6f9;color:#385268;font-weight:700}.saas-ui .email-canvas{border-color:#c7d6e1;border-radius:10px;background:#fff}.saas-ui table{overflow:hidden;border-radius:10px}.saas-ui th{background:#183a57}.saas-ui .branding-preview{border-color:#dbe5ed;border-radius:10px;background:#f7f9fb}
@media(max-width:900px){.saas-ui .saas-page-head{align-items:flex-start;flex-direction:column}.saas-ui .subnav{width:100%;overflow:auto}.commerce-grid{grid-template-columns:1fr}}
@media(max-width:700px){.saas-ui .topbar{align-items:center;padding:13px 15px}.saas-ui .topbar nav{justify-content:flex-end}.saas-ui .shell{padding:22px 13px 40px}.dashboard-metrics,.admin-metrics{grid-template-columns:1fr}.saas-ui .page-head h1{font-size:1.7rem}.saas-ui .saas-panel{padding:19px}.coupon-discount-fields{grid-template-columns:1fr}}

/* Project workspace presentation. Hierarchy node geometry remains owned by hierarchy.css. */
.project-count{display:inline-flex;align-items:center;flex:none;padding:6px 10px;border:1px solid #d9e4ec;border-radius:999px;background:#f7fafc;color:#577086;font-size:.72rem;font-weight:800}.project-list-panel{overflow:hidden}.project-list-row{display:grid!important;grid-template-columns:42px minmax(180px,1fr) auto 110px 24px;gap:14px;align-items:center;margin:0 -8px;padding:15px 12px!important;border-radius:10px}.project-list-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#e6f0f7;color:#1f6fa8;font-size:1rem;font-weight:900}.project-list-main{min-width:0}.project-list-main strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:#edf7f2;color:#28704e;font-size:.7rem;font-weight:800}.status-dot{width:6px;height:6px;border-radius:50%;background:#3b9c6c}.project-updated{color:#455d72;font-size:.78rem;font-weight:700;text-align:right}.project-updated small{margin:0 0 3px!important;font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.project-arrow{color:#7890a4;font-weight:900}.project-list-row:hover .project-arrow{color:#1f6fa8;transform:translateX(2px)}
.project-back-link{display:inline-flex;align-items:center;flex:none;color:#526c82;font-size:.8rem;font-weight:800;text-decoration:none}.project-back-link:hover{color:#1f6fa8}.project-create-form{max-width:900px;margin:0 auto;gap:8px 18px}.form-section-heading{display:flex;align-items:center;gap:12px;margin:8px 0 2px;padding-bottom:12px;border-bottom:1px solid #e6ecf1}.form-section-heading:not(:first-child){margin-top:24px}.form-section-heading>span{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:10px;background:#183a57;color:#fff;font-size:.8rem;font-weight:900}.form-section-heading h2,.form-section-heading p{margin:0}.form-section-heading h2{font-size:1.02rem}.form-section-heading p{margin-top:3px;color:#6b7d90;font-size:.76rem}.project-create-form textarea{min-height:86px}.project-generator-notice{display:flex;align-items:flex-start;gap:12px;margin-top:13px!important;padding:14px 16px!important;border:1px solid #efd9a6;background:#fff9e9!important}.project-generator-notice strong,.project-generator-notice span{display:block}.project-generator-notice strong{flex:none}.project-generator-notice span{font-size:.82rem;line-height:1.45}.project-create-submit{display:flex;justify-content:center;gap:18px;margin-top:9px;padding:13px 18px}
.project-page-head{align-items:flex-end}.project-hierarchy-panel{border-color:#d8e4ec!important}.project-hierarchy-panel>.hierarchy-heading{margin:-2px -2px 18px;padding-bottom:17px;border-bottom:1px solid #e5ebf0}.project-hierarchy-panel .hierarchy-heading h2{color:#1c354b;font-size:1.08rem}.project-hierarchy-panel .hierarchy-actions{padding:4px;border:1px solid #dce6ee;border-radius:10px;background:#f3f6f9}.project-hierarchy-panel .hierarchy-actions button{margin:0;border-radius:7px;box-shadow:none;font-size:.76rem}.project-hierarchy-panel .hierarchy-actions button:hover{transform:none}.project-hierarchy-panel .tree{border:1px solid #e1e8ee;border-radius:12px;background:linear-gradient(180deg,#fbfcfd,#f7f9fb)}.project-hierarchy-panel .hierarchy-outline{border-radius:12px}.project-pin-panel{border-left:4px solid #1f6fa8!important}.project-pin-panel h2{margin:0;color:#1c354b;font-size:1.08rem}.project-pin-panel p{margin:5px 0 0}.project-schedule-panel .table-scroll{border:1px solid #dfe7ed;border-radius:11px}.project-schedule-panel table{margin:0}.project-schedule-panel th{padding:12px 10px;background:#173a57;font-size:.72rem;letter-spacing:.035em;text-transform:uppercase}.project-schedule-panel td{background:#fff}.project-schedule-panel tr:hover td{background:#f8fafc}.project-schedule-panel td input{margin:0;border-color:#d6e0e7;background:#fbfcfd}.project-schedule-panel td button{padding:8px 12px;box-shadow:none}.project-security-card{border-color:#d7e3ec!important;box-shadow:0 20px 60px rgba(16,42,67,.12)!important}
@media(max-width:850px){.project-list-row{grid-template-columns:42px minmax(150px,1fr) auto 24px}.project-updated{display:none}.project-page-head{align-items:flex-start}.project-page-head .project-actions{width:100%}}
@media(max-width:620px){.project-list-row{grid-template-columns:38px minmax(0,1fr) 22px;gap:10px}.project-list-icon{width:36px;height:36px}.project-status{grid-column:2;justify-self:start}.project-arrow{grid-column:3;grid-row:1/3}.project-create-form{grid-template-columns:1fr}.project-create-form .full{grid-column:1}.project-generator-notice{flex-direction:column}.project-page-head .project-actions{align-items:stretch}.project-page-head .project-actions .project-back-link{width:100%}.project-hierarchy-panel>.hierarchy-heading{margin-bottom:12px}.project-pin-panel{border-left-width:1px!important}}

/* Match Key Schedule level tags to the established hierarchy palette. */
.saas-ui .project-schedule-panel .badge.ggmk{background:#382c70;color:#fff}.saas-ui .project-schedule-panel .badge.gmk{background:#1e5e91;color:#fff}.saas-ui .project-schedule-panel .badge.mk{background:#25805c;color:#fff}.saas-ui .project-schedule-panel .badge.change{background:#efe6b5;color:#4b420d}

/* Persistent site footer and editable legal pages. */
.app-body{min-height:100vh;display:flex;flex-direction:column}.app-body>.shell{width:100%;flex:1}.site-footer{margin-top:auto;border-top:1px solid #dbe4eb;background:#fff;color:#65758b}.site-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(100%,1240px);margin:0 auto;padding:20px 24px;font-size:.78rem}.site-footer nav{display:flex;gap:18px}.site-footer a{color:#49657c;font-weight:700;text-decoration:none}.site-footer a:hover{color:#1f6fa8}.legal-page{max-width:900px;margin:0 auto}.legal-document{min-height:320px;color:#344b5f;font-size:.94rem;line-height:1.8;white-space:normal}.legal-editor{display:grid;gap:26px}.legal-editor-section{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;padding-bottom:25px;border-bottom:1px solid #e3e9ee}.legal-editor-section h2{margin:3px 0 5px;color:#1c354b;font-size:1.08rem}.legal-editor-section p{margin:0;color:#6a7c8e;font-size:.76rem}.legal-editor-section a{color:#1f6fa8;font-weight:800;text-decoration:none}.legal-editor-section label{margin:0}.legal-editor-section textarea{min-height:330px;resize:vertical;line-height:1.55}.legal-editor-note{padding:12px 14px;border:1px solid #d7e4ed;border-radius:9px;background:#f4f8fb;color:#526b80;font-size:.78rem}.legal-editor>button{justify-self:start}
@media(max-width:700px){.site-footer-inner{align-items:flex-start;flex-direction:column;padding:18px 15px}.site-footer nav{gap:14px}.legal-editor-section{grid-template-columns:1fr;gap:10px}.legal-editor-section textarea{min-height:280px}}

/* Live cross-key safety analysis. */
.project-safety-summary{margin-bottom:18px;padding:22px;border:1px solid #dbe5ec;border-radius:16px;background:#fff;box-shadow:0 7px 24px rgba(16,42,67,.055)}.safety-summary-heading,.safety-summary-heading>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.safety-summary-heading>div{justify-content:flex-start}.safety-shield{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#e5f4ec;color:#28704e;font-weight:900}.safety-summary-heading h2,.safety-summary-heading p{margin:0}.safety-summary-heading h2{color:#1c354b;font-size:1.05rem}.safety-summary-heading p{margin-top:3px;color:#6a7d8e;font-size:.76rem}.safety-live{padding:5px 9px;border-radius:999px;background:#e8f1f7;color:#365d78;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.safety-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:17px}.safety-check{padding:13px 14px;border-radius:10px;border:1px solid}.safety-check strong,.safety-check span{display:block}.safety-check strong{font-size:.82rem}.safety-check span{margin-top:4px;font-size:.73rem;line-height:1.42}.safety-check-ok{border-color:#bfe0ce;background:#f0f8f4;color:#28684a}.safety-check-warning{border-color:#efd49c;background:#fff8e7;color:#805b14}.safety-analysis-limited{margin-top:12px;padding:10px 12px;border-radius:8px;background:#fce9e7;color:#8e2e26;font-size:.75rem;font-weight:700;line-height:1.45}
.safety-badge{display:inline-flex;align-items:center;align-self:center;width:max-content;margin-top:5px;padding:3px 7px;border-radius:999px;font-size:.64rem;font-weight:900;line-height:1.25;white-space:nowrap}.cross-key-badge{background:#fff0d1;color:#825a0d;border:1px solid #e8c675}.schedule-safety{min-width:105px}.schedule-safety .safety-badge{margin:2px 3px 2px 0}.safety-clear{color:#39805e;font-size:.7rem;font-weight:800}.saas-ui .project-hierarchy-panel .outline-row{grid-template-columns:72px minmax(110px,160px) minmax(140px,1fr) minmax(140px,1fr) 90px minmax(105px,145px) 110px}.outline-safety{display:flex;gap:4px;flex-wrap:wrap}.outline-safety .safety-badge{margin:0}.cross-key-repair{height:100%;width:100%;padding:12px 16px;background:#a56b12}.safety-auto-note{display:flex;flex-direction:column;justify-content:center;padding:13px 14px;border:1px solid #cfe0e9;border-radius:10px;background:#f4f8fb;color:#3f6078}.safety-auto-note strong{font-size:.82rem}.safety-auto-note span{margin-top:4px;font-size:.73rem;line-height:1.42}
@media(max-width:760px){.safety-summary-heading{align-items:flex-start}.safety-summary-grid{grid-template-columns:1fr}.saas-ui .project-hierarchy-panel .outline-row{grid-template-columns:58px 1fr}.outline-row>.outline-safety{grid-column:2}}

/* Key Schedule bulk editing and bitting-change confirmation. */
.schedule-save-all{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:16px;padding:17px 18px;border:1px solid #d7e3eb;border-radius:11px;background:#f5f9fc}.schedule-save-all strong,.schedule-save-all span{display:block}.schedule-save-all strong{color:#243d52;font-size:.86rem}.schedule-save-all span{margin-top:4px;color:#687d8f;font-size:.75rem;line-height:1.4}.save-all-button{flex:none;padding:12px 19px!important;background:#173a57!important}.bitting-warning-dialog{width:min(470px,calc(100% - 30px));border:0;border-radius:17px;padding:29px;box-shadow:0 22px 75px rgba(11,29,45,.32);text-align:center}.bitting-warning-dialog::backdrop{background:rgba(15,32,47,.62)}.bitting-warning-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 16px;border-radius:15px;background:#fff0d1;color:#8b5f0d;font-size:1.35rem;font-weight:900}.bitting-warning-dialog h2{margin:0;color:#1d3448;font-size:1.25rem}.bitting-warning-dialog p{margin:10px 0 22px;color:#607487;font-size:.86rem;line-height:1.58}.bitting-warning-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bitting-warning-actions button{margin:0;padding:11px 14px}.bitting-warning-actions .button-secondary{background:#e8eef3;color:#304e65;box-shadow:none}
@media(max-width:650px){.schedule-save-all{align-items:stretch;flex-direction:column}.save-all-button{width:100%}.bitting-warning-actions{grid-template-columns:1fr}}

/* Post-creation Change Key management. */
.add-change-keys-panel{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(420px,1.2fr);gap:18px 28px;align-items:end}.add-change-keys-copy{display:flex;align-items:flex-start;gap:13px}.add-change-key-icon{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:11px;background:#e5f3eb;color:#26704c;font-size:1.2rem;font-weight:900}.add-change-keys-copy h2,.add-change-keys-copy p{margin:0}.add-change-keys-copy h2{color:#1e384e;font-size:1.08rem}.add-change-keys-copy p{margin-top:5px;color:#667b8d;font-size:.78rem;line-height:1.48}.add-change-keys-panel form{display:grid;grid-template-columns:minmax(230px,1fr) 120px auto;gap:12px;align-items:end}.add-change-keys-panel label{margin:0}.add-change-keys-panel button{white-space:nowrap}.add-change-keys-note{grid-column:1/-1;padding:10px 12px;border-radius:8px;background:#f3f7fa;color:#5c7285;font-size:.73rem}
.hierarchy-icon-gmk{background:#e4eef8;color:#1e5e91}.hierarchy-icon-mk{background:#e4f3eb;color:#25805c}.hierarchy-add-unavailable{align-self:center;padding:13px 14px;border:1px solid #dce5eb;border-radius:9px;background:#f6f8fa;color:#718292;font-size:.78rem;font-weight:700}
@media(max-width:900px){.add-change-keys-panel{grid-template-columns:1fr}.add-change-keys-panel form{grid-template-columns:minmax(220px,1fr) 120px auto}}
@media(max-width:650px){.add-change-keys-panel form{grid-template-columns:1fr}.add-change-keys-panel button{width:100%}}

/* Locked schedule fields and customer-request workflow. */
.schedule-locked-value{display:block;min-width:120px;padding:10px 11px;border:1px solid #e1e7ec;border-radius:7px;background:#f1f4f7;color:#526579;font-size:.82rem;font-weight:700}.schedule-code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#29465f}.contact-request-panel{display:grid;grid-template-columns:minmax(240px,.65fr) minmax(440px,1.35fr);gap:34px;align-items:start;max-width:1050px;margin-inline:auto}.contact-request-intro{display:flex;gap:14px;align-items:flex-start;padding:5px}.contact-request-icon{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:13px;background:#e4f1f8;color:#1f6fa8;font-size:1.2rem}.contact-request-intro h2{margin:2px 0 6px;color:#1c354b}.contact-request-intro p{margin:0;color:#65798c;font-size:.84rem;line-height:1.55}.contact-request-form{display:grid;gap:16px}.contact-request-form label{margin:0}.contact-identity{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-request-form input[readonly]{color:#5c6f80;background:#f1f4f7}.contact-request-form textarea{resize:vertical;line-height:1.55}.contact-form-actions{display:flex;align-items:center;justify-content:space-between;gap:20px}.contact-form-actions span{color:#718294;font-size:.76rem}.contact-form-actions button{white-space:nowrap}.metric-link{color:inherit;text-decoration:none}.metric-link:hover{border-color:#b9cfde;transform:translateY(-1px)}.admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-request-inbox{display:grid;gap:16px}.admin-request-card{padding:20px;border:1px solid #dbe5ec;border-left:4px solid #d6a23b;border-radius:12px;background:#fff}.admin-request-card.request-status-read{border-left-color:#5597c5}.admin-request-card.request-status-resolved{border-left-color:#55a77a}.admin-request-head{display:flex;justify-content:space-between;gap:20px}.admin-request-head h2{margin:6px 0 2px;font-size:1.05rem}.admin-request-head p{margin:0;color:#718294;font-size:.76rem}.admin-request-head a{color:#1f6fa8;text-decoration:none}.request-type,.request-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eaf2f7;color:#315a78;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.request-status{align-self:flex-start;background:#f4f6f8;color:#647586}.admin-request-message{margin:17px 0;padding:15px;border-radius:9px;background:#f6f8fa;color:#344b5f;line-height:1.6;white-space:pre-wrap}.admin-request-actions{display:flex;justify-content:flex-end;align-items:end;gap:10px}.admin-request-actions label{margin:0}.admin-request-actions select{min-width:140px}.admin-request-actions button{padding:10px 14px}
@media(max-width:800px){.contact-request-panel{grid-template-columns:1fr}.admin-metrics{grid-template-columns:1fr}.contact-identity{grid-template-columns:1fr}.contact-form-actions{align-items:stretch;flex-direction:column}.contact-form-actions button{width:100%}.admin-request-head{flex-direction:column}.admin-request-actions{justify-content:stretch}.admin-request-actions label{flex:1}.admin-request-actions select{width:100%}}

/* Registration consent and self-service account deletion. */
.account-summary-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:20px}.account-summary-panel>div{padding:15px;border:1px solid #e0e7ed;border-radius:10px;background:#f8fafb}.account-summary-panel span,.account-summary-panel strong{display:block}.account-summary-panel span{color:#718294;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.account-summary-panel strong{margin-top:6px;color:#293f52;font-size:.9rem}
.registration-legal-consent{display:flex!important;align-items:flex-start;gap:10px;margin:16px 0 2px!important;padding:13px 14px;border:1px solid #d6e1e9;border-radius:10px;background:#f7f9fb;color:#40566a!important;font-size:.8rem!important;line-height:1.45}.registration-legal-consent input{flex:0 0 auto;width:17px;height:17px;margin:2px 0 0!important;accent-color:#1f6fa8}.registration-legal-consent a{color:#1f6fa8;font-weight:800;text-decoration:none}.registration-legal-consent a:hover{text-decoration:underline}.legal-consent-error{margin-top:6px}.account-danger-panel{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(440px,1.2fr);gap:28px;margin-top:20px;border-color:#efc5c1!important;border-left:4px solid #b64238!important;background:#fffafa!important}.account-danger-copy{display:flex;gap:13px;align-items:flex-start}.account-danger-icon{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:11px;background:#fde8e6;color:#a7372e;font-size:1.1rem;font-weight:900}.account-danger-copy h2{margin:2px 0 5px;color:#7f2923;font-size:1.08rem}.account-danger-copy p{margin:0;color:#7d5a57;font-size:.78rem;line-height:1.5}.account-danger-panel form{display:grid;grid-template-columns:minmax(190px,1fr) minmax(230px,1.2fr) auto;gap:12px;align-items:end}.account-danger-panel form>label{margin:0}.account-delete-confirm{display:flex!important;align-items:flex-start;gap:8px;padding:10px;border:1px solid #eccdca;border-radius:8px;background:#fff;color:#754944!important;font-size:.73rem!important;line-height:1.4}.account-delete-confirm input{flex:0 0 auto;width:16px;height:16px;margin:1px 0 0!important;accent-color:#a7372e}.danger-button{white-space:nowrap;background:#a7372e!important}.danger-button:hover{background:#872a23!important}
@media(max-width:950px){.account-danger-panel{grid-template-columns:1fr}.account-danger-panel form{grid-template-columns:1fr 1fr}.account-danger-panel .danger-button{grid-column:1/-1;width:100%}}@media(max-width:650px){.account-summary-panel{grid-template-columns:1fr}.account-danger-panel form{grid-template-columns:1fr}.account-danger-panel .danger-button{grid-column:auto}}

/* Responsive application navigation. */
.mobile-nav-toggle{display:none;width:42px;height:42px;padding:10px;border:1px solid rgba(255,255,255,.2);border-radius:9px;background:rgba(255,255,255,.08);box-shadow:none}.mobile-nav-toggle span{display:block;width:20px;height:2px;margin:4px auto;border-radius:2px;background:#fff;transition:transform .18s ease,opacity .18s ease}.mobile-nav-toggle.active span:nth-child(1){transform:translateY(6px) rotate(45deg)}.mobile-nav-toggle.active span:nth-child(2){opacity:0}.mobile-nav-toggle.active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:760px){.topbar{position:relative;z-index:1000;align-items:center!important;min-height:64px;padding:11px 15px!important}.mobile-nav-toggle{display:block;flex:none;margin:0}.topbar .app-navigation,.saas-ui .topbar .app-navigation{display:none;position:absolute;top:calc(100% - 4px);right:14px;left:auto;z-index:1001;width:min(300px,calc(100vw - 28px));padding:8px;gap:3px!important;border:1px solid #d8e3eb;border-radius:12px;background:#fff;box-shadow:0 18px 50px rgba(12,35,53,.24)}.topbar .app-navigation.mobile-open,.saas-ui .topbar .app-navigation.mobile-open{display:flex;align-items:stretch;flex-direction:column;flex-wrap:nowrap}.topbar .app-navigation a,.saas-ui .topbar .app-navigation a,.topbar .app-navigation .link,.saas-ui .topbar .app-navigation .link{display:block;width:100%;padding:11px 12px;border-radius:8px;color:#304b61!important;text-align:left;font-size:.88rem;font-weight:750;text-decoration:none}.topbar .app-navigation a:hover,.saas-ui .topbar .app-navigation a:hover,.topbar .app-navigation .link:hover,.saas-ui .topbar .app-navigation .link:hover{background:#edf4f8!important;color:#173a57!important}.topbar .app-navigation form{width:100%;padding-top:4px;border-top:1px solid #e5ebf0}.topbar .app-navigation .link{margin:0;background:transparent;box-shadow:none}}

/* Administrative user and project-usage management. */
.admin-user-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.admin-users-panel .panel-heading{align-items:end}.admin-user-search{display:flex;gap:8px;align-items:end;margin:0}.admin-user-search input{min-width:230px;margin:0}.admin-user-search button{margin:0}.admin-users-table td{vertical-align:middle}.admin-users-table td:first-child{min-width:220px}.admin-users-table td:first-child strong,.admin-users-table td:first-child small{display:block}.admin-users-table td:first-child small{margin-top:3px;color:#708194}.admin-user-role{display:inline-flex;margin-top:6px;padding:3px 7px;border-radius:999px;background:#e7edf8;color:#4f5d91;font-size:.62rem;font-weight:900;text-transform:uppercase}.project-usage-count{display:inline-grid;place-items:center;min-width:34px;height:30px;padding:0 9px;border-radius:8px;background:#e7f4ed;color:#28704e}.admin-remove-user-form{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0}.admin-remove-user-form label{display:flex;align-items:center;gap:5px;margin:0;color:#7b5652;font-size:.7rem}.admin-remove-user-form label input{width:15px;height:15px;margin:0;accent-color:#a7372e}.admin-remove-user-button{padding:8px 10px;background:#a7372e!important;font-size:.73rem}.admin-protected-label{color:#718294;font-size:.7rem;font-weight:800}
@media(max-width:800px){.admin-user-metrics{grid-template-columns:1fr}.admin-users-panel .panel-heading{align-items:stretch;flex-direction:column}.admin-user-search{width:100%}.admin-user-search input{min-width:0;flex:1}.admin-users-table{min-width:820px}}

/* V1-inspired Basic Calculator using the current V2 keyway catalog. */
.v1-calculator-page{max-width:1100px;margin:0 auto;padding-bottom:28px}.v1-calculator-heading{margin:4px 0 22px}.v1-calculator-heading h1{margin:2px 0 5px;color:#17365d;font-size:1.9rem;letter-spacing:-.025em}.v1-calculator-heading p{margin:0;color:#64778a}.calculator-brand-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}.calculator-brand-tab{margin:0;padding:15px 16px;border:1px solid #dbe4ec;border-radius:10px;background:#e7eef5;color:#173047;box-shadow:none;font-size:.95rem}.calculator-brand-tab.active{border-color:#1d426e;background:#1d426e;color:#fff}.calculator-v1-card{padding:25px;border:1px solid #d6e0e8;border-radius:16px;background:#fff;box-shadow:0 7px 24px rgba(16,42,67,.055)}.calculator-v1-card form{margin:0}.calculator-source-select{position:absolute;width:1px;height:1px;padding:0;border:0;clip:rect(0 0 0 0);overflow:hidden}.calculator-keyway-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:13px}.calculator-keyway-tabs.single-keyway{display:none}.calculator-keyway-tabs button{margin:0;padding:7px 11px;border:1px solid #cad8e3;border-radius:999px;background:#f3f6f9;color:#456176;box-shadow:none;font-size:.72rem}.calculator-keyway-tabs button.active{border-color:#286c9e;background:#e1eef7;color:#1d5c89}.calculator-specification{margin-bottom:18px;padding:14px;border-radius:10px;background:#dce7f1;color:#18334d;font-size:.9rem;font-weight:700}.calculator-v1-card label{margin:15px 0 7px;color:#142c43;font-size:.9rem}.calculator-bitting-input{height:64px;margin:0;padding:13px 15px;border-color:#dfb33f!important;background:#fff2c9!important;color:#21374b;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.25rem;font-weight:800;letter-spacing:.18em}.calculator-bitting-input::placeholder{color:#737981;opacity:.92}.calculator-bitting-input:focus{outline:3px solid rgba(223,179,63,.18)!important;background:#fff7dd!important}.calculator-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.calculator-actions button{height:52px;margin:0;font-size:.93rem}.calculator-actions .calculator-clear{background:#e5e9ee;color:#273b4d;box-shadow:none}.calculator-safety-notice{margin-top:20px;padding:17px 18px;border-radius:11px;background:#fee4d5;color:#533323;font-size:.84rem;line-height:1.5}.calculator-result{margin-top:22px}.calculator-result-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 15px;border:1px solid #d9e4ec;border-bottom:0;border-radius:11px 11px 0 0;background:#f3f7fa}.calculator-result-heading div>span,.calculator-result-heading div>strong{display:block}.calculator-result-heading div>span{color:#708295;font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.calculator-result-heading div>strong{margin-top:3px;color:#203b52}.calculator-result-heading>span{padding:5px 8px;border-radius:999px;background:#e5eef5;color:#456276;font-size:.69rem;font-weight:800}.calculator-result .table-scroll{border:1px solid #d9e4ec;border-radius:0 0 11px 11px}.calculator-result table{margin:0}.calculator-result th{background:#173a57}.calculator-result td{background:#fff}.calculator-result .flash{margin-top:13px}.calculator-none{color:#7a8996}.calculator-working{padding:20px;color:#62778a;text-align:center}
@media(max-width:650px){.v1-calculator-heading h1{font-size:1.65rem}.calculator-brand-tabs{display:flex;overflow-x:auto;padding-bottom:4px}.calculator-brand-tab{flex:0 0 auto;min-width:140px}.calculator-v1-card{padding:18px 14px}.calculator-specification{font-size:.78rem;line-height:1.45}.calculator-bitting-input{height:58px;font-size:1.05rem}.calculator-actions{grid-template-columns:1fr}.calculator-result table{min-width:590px}}

/* Basic Calculator automatic change-key generation. */
.calculator-generate-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:10px}.calculator-generate-actions button{width:auto;margin:0;padding:9px 14px;border:1px solid #bdd3e2;border-radius:8px;background:#edf5fa;color:#1e5e89;box-shadow:none;font-size:.76rem;font-weight:800}.calculator-generate-actions button:hover:not(:disabled){border-color:#78a9c9;background:#e2f0f8}.calculator-generate-actions .calculator-regenerate{background:#fff;color:#536d80}.calculator-generate-actions button:disabled{cursor:not-allowed;opacity:.48}
@media(max-width:650px){.calculator-generate-actions{display:grid;grid-template-columns:1fr 1fr}.calculator-generate-actions button{width:100%}}

/* Admin mass-email composer and delivery history. */
.broadcast-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px;align-items:start}.broadcast-composer form{display:grid;gap:15px}.broadcast-composer label{margin:0}.broadcast-composer textarea{min-height:220px;resize:vertical;line-height:1.55}.broadcast-action-fields{display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px}.broadcast-confirm{display:flex!important;align-items:flex-start;gap:10px;padding:14px;border:1px solid #d7e2ea;border-radius:10px;background:#f7fafc;color:#41596d;font-size:.8rem;line-height:1.45}.broadcast-confirm input{width:18px;height:18px;margin:1px 0 0;flex:0 0 auto}.broadcast-submit{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:4px}.broadcast-submit>span{max-width:480px;color:#718394;font-size:.76rem;line-height:1.45}.broadcast-submit button{margin:0;white-space:nowrap}.broadcast-guidance{position:sticky;top:18px}.broadcast-guidance h2{margin-top:0}.broadcast-guidance ul{margin:14px 0 20px;padding-left:20px;color:#526a7c;font-size:.8rem;line-height:1.55}.broadcast-guidance li+li{margin-top:8px}.broadcast-queue-note{display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:10px;background:#eaf3f8;color:#234a66}.broadcast-queue-note strong{font-size:.78rem}.broadcast-queue-note span{font-size:.72rem;line-height:1.45}.broadcast-history{margin-top:20px}.broadcast-history-row{position:relative;display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:14px 22px;align-items:center;padding:17px 0;border-bottom:1px solid #e3eaf0}.broadcast-history-main{display:flex;min-width:0;flex-direction:column;gap:4px}.broadcast-history-main strong{overflow:hidden;color:#203c52;text-overflow:ellipsis;white-space:nowrap}.broadcast-history-main span{color:#738493;font-size:.72rem}.broadcast-delivery-counts{display:flex;gap:13px;color:#5e7283;font-size:.72rem}.broadcast-delivery-counts b{color:#304b61}.broadcast-delivery-counts .sent b{color:#28764a}.broadcast-delivery-counts .failed b{color:#b54545}.broadcast-progress{grid-column:1/3;height:6px;overflow:hidden;border-radius:999px;background:#e7edf2}.broadcast-progress span{display:block;height:100%;border-radius:inherit;background:#3684b5}.broadcast-state{grid-column:3;grid-row:2;padding:5px 9px;border-radius:999px;font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.broadcast-state.processing{background:#fff0ce;color:#8b5d00}.broadcast-state.complete{background:#dff3e6;color:#267246}
@media(max-width:900px){.broadcast-layout{grid-template-columns:1fr}.broadcast-guidance{position:static}.broadcast-history-row{grid-template-columns:1fr}.broadcast-delivery-counts{flex-wrap:wrap}.broadcast-progress,.broadcast-state{grid-column:1;grid-row:auto}.broadcast-state{justify-self:start}}
@media(max-width:620px){.broadcast-action-fields{grid-template-columns:1fr}.broadcast-submit{align-items:stretch;flex-direction:column}.broadcast-submit button{width:100%}}

/* Prominent keyway and bitting identity in the project pinning modal. */
.pinning-identity{display:grid;grid-template-columns:110px minmax(160px,.8fr) minmax(220px,1.25fr);gap:10px;margin:4px 0 16px}.pinning-keyway-identity,.pinning-bitting-identity{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:4px;padding:12px 14px;border:1px solid #d6e2ea;border-radius:10px;background:#f5f8fa}.pinning-identity span{color:#6b7e8e;font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.pinning-identity strong{overflow:hidden;color:#203c52;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.18rem;letter-spacing:.14em;text-overflow:ellipsis;white-space:nowrap}.pinning-keyway-identity{align-items:center;border-color:#b8d1e1;background:#e9f3f9;text-align:center}.pinning-keyway-identity strong{color:#175d8a;font-family:inherit;font-size:1.1rem;letter-spacing:.04em}.pinning-selected-identity{border-color:#d6ad3f;background:#fff3cc;box-shadow:0 0 0 3px rgba(214,173,63,.1)}.pinning-selected-identity strong{color:#253c4f;font-size:1.45rem}.pinning-parent-identity strong{color:#5a6f80}.pinning-identity .identity-hidden{display:none}
@media(max-width:680px){.pinning-identity{grid-template-columns:90px 1fr}.pinning-selected-identity{grid-column:1/-1;grid-row:2}.pinning-selected-identity strong{font-size:1.3rem}.pinning-parent-identity.identity-hidden+.pinning-selected-identity{grid-column:2;grid-row:1}}
.pinning-identifier-identity{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #d8e3ea;border-radius:9px;background:#f8fafc}.pinning-identifier-identity span{flex:0 0 auto}.pinning-identifier-identity strong{color:#294a63;font-family:inherit;font-size:.9rem;letter-spacing:0;white-space:normal}
.schedule-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}.schedule-row-actions button{width:auto;margin:0;padding:7px 10px;font-size:.68rem}.schedule-row-actions .pinning-button{border:1px solid #bcd2e1;background:#edf5fa;color:#1d5f8c;box-shadow:none}
@media(max-width:760px){.schedule-row-actions{align-items:stretch;flex-direction:column}.schedule-row-actions button{width:100%}}
.hierarchy-generation-summary{display:flex;min-height:68px;flex-direction:column;justify-content:center;gap:3px;padding:11px 14px;border:1px solid #c9dce8;border-radius:10px;background:#eff6fa;color:#294a63}.hierarchy-generation-summary strong{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.hierarchy-generation-summary span{font-size:.78rem;line-height:1.45}.hierarchy-generation-summary small{color:#6c8090;font-size:.68rem}

/* Project generation progress overlay. */
.project-generation-active{overflow:hidden}.project-generation-overlay{display:grid;visibility:hidden;position:fixed;inset:0;z-index:5000;place-items:center;padding:24px;background:rgba(10,29,44,.72);backdrop-filter:blur(5px);opacity:0;transition:opacity .18s ease,visibility .18s ease}.project-generation-overlay.is-visible{visibility:visible;opacity:1}.project-generation-dialog{width:min(100%,540px);padding:36px;border:1px solid rgba(255,255,255,.55);border-radius:20px;background:#fff;box-shadow:0 28px 90px rgba(4,19,30,.34);text-align:center}.project-generation-spinner{display:flex;align-items:center;justify-content:center;gap:7px;width:68px;height:68px;margin:0 auto 18px;border-radius:20px;background:#e9f3f9}.project-generation-spinner span{width:8px;height:8px;border-radius:50%;background:#1f6fa8;animation:projectGenerationPulse 1.15s ease-in-out infinite}.project-generation-spinner span:nth-child(2){animation-delay:.16s}.project-generation-spinner span:nth-child(3){animation-delay:.32s}.project-generation-kicker{color:#1f6fa8;font-size:.68rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.project-generation-dialog h2{margin:7px 0 9px;color:#19364d;font-size:1.45rem}.project-generation-dialog>p{max-width:440px;margin:0 auto;color:#627789;font-size:.84rem;line-height:1.6}.project-generation-steps{display:grid;gap:8px;margin:24px 0 18px;text-align:left}.project-generation-steps>span{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #dce7ee;border-radius:9px;background:#f7fafc;color:#3f596d;font-size:.78rem;font-weight:700}.project-generation-steps i{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:7px;background:#e1eef6;color:#1f6fa8;font-style:normal;font-size:.68rem;font-weight:900}.project-generation-wait{display:flex;align-items:center;justify-content:center;gap:8px;color:#7b5b17;font-size:.75rem}.project-generation-wait>span{width:8px;height:8px;border-radius:50%;background:#d6a23b;box-shadow:0 0 0 5px rgba(214,162,59,.14);animation:projectGenerationPulse 1.15s ease-in-out infinite}@keyframes projectGenerationPulse{0%,100%{transform:scale(.7);opacity:.45}50%{transform:scale(1);opacity:1}}@media(max-width:600px){.project-generation-overlay{padding:15px}.project-generation-dialog{padding:28px 19px;border-radius:16px}.project-generation-dialog h2{font-size:1.25rem}.project-generation-steps>span{font-size:.72rem}}
.project-generation-progress{height:9px;margin:21px 0 0;overflow:hidden;border-radius:999px;background:#e4edf3;box-shadow:inset 0 1px 2px rgba(24,58,87,.08)}.project-generation-progress span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1f6fa8,#48a77b,#1f6fa8);background-size:220% 100%;animation:projectGenerationProgress 1.45s ease-in-out infinite}@keyframes projectGenerationProgress{0%{transform:translateX(-105%);background-position:0 0}50%{background-position:100% 0}100%{transform:translateX(245%);background-position:0 0}}
.custom-bitting-badge{display:inline-flex;margin-top:6px;padding:4px 7px;border-radius:999px;background:#fff0d5;color:#83580c;font-size:.61rem;font-weight:900;text-transform:uppercase;letter-spacing:.035em}
.repair-protection-badges{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.identifier-protection-badge{background:#e7f1f8;color:#255f87}

/* Feedback references, extended workflow statuses, and user history. */
.request-heading-tags{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.request-reference{display:inline-flex;padding:5px 8px;border:1px solid #cbdbe6;border-radius:999px;background:#f5f8fa;color:#294f6b;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.67rem;font-weight:900;letter-spacing:.025em}.request-status{white-space:nowrap}.request-status.status-reviewing{background:#fff0d5;color:#8a5d0b}.request-status.status-in_progress{background:#dfeeff;color:#215f8d}.request-status.status-in_queue{background:#ece8fa;color:#5f4e92}.request-status.status-completed_closed,.request-status.status-feature_added_closed,.request-status.status-keyway_added_closed,.request-status.status-resolved{background:#e2f3e9;color:#28704e}.admin-request-actions button{white-space:nowrap}.user-request-history{margin-top:20px}.user-request-row{display:grid;grid-template-columns:minmax(190px,.75fr) minmax(240px,1.5fr) auto;gap:20px;align-items:center;padding:15px 4px;border-bottom:1px solid #e4eaef}.user-request-row:last-child{border-bottom:0}.user-request-row>div strong,.user-request-row>div small{display:block}.user-request-row>div strong{margin-top:7px;color:#263f54;font-size:.84rem}.user-request-row>div small{margin-top:3px;color:#748597;font-size:.7rem}.user-request-row p{margin:0;color:#52697c;font-size:.78rem;line-height:1.5}
@media(max-width:760px){.user-request-row{grid-template-columns:1fr;gap:10px}.user-request-row .request-status{justify-self:start}.admin-request-actions{align-items:stretch;flex-direction:column}.admin-request-actions button{width:100%}}

/* Administrator-authored feedback/request updates. */
.admin-request-response-form{display:grid!important;grid-template-columns:220px minmax(280px,1fr) auto;gap:12px;align-items:end}.admin-request-response-form label{margin:0}.admin-request-response-form textarea{min-height:96px;margin-top:6px;resize:vertical}.admin-request-response-form button{margin:0}.admin-response-history{display:grid;gap:7px;margin-top:14px;padding:13px;border:1px solid #dce6ed;border-radius:10px;background:#f7fafc}.admin-response-history>strong{color:#36566d;font-size:.72rem;text-transform:uppercase}.admin-response-history article{display:grid;grid-template-columns:210px 1fr;gap:12px;padding:9px;border-radius:8px;background:#fff}.admin-response-history span b,.admin-response-history span small{display:block}.admin-response-history span small{margin-top:3px;color:#718494;font-size:.66rem}.admin-response-history p{margin:0;color:#496276;font-size:.76rem;line-height:1.5}.user-request-content{min-width:0}.user-request-content>p{margin:0}.user-request-updates{display:grid;gap:7px;margin-top:10px}.user-request-updates article{padding:10px;border-left:3px solid #2c79a7;border-radius:7px;background:#f0f7fb}.user-request-updates article span{display:flex;align-items:center;justify-content:space-between;gap:10px}.user-request-updates article strong{margin:0!important;color:#285a79!important;font-size:.72rem!important}.user-request-updates article small{margin:0!important;white-space:nowrap}.user-request-updates article p{margin:7px 0 0;color:#3f596d;font-size:.75rem;line-height:1.5;white-space:pre-wrap}
@media(max-width:900px){.admin-request-response-form{grid-template-columns:1fr}.admin-request-response-form button{width:100%}.admin-response-history article{grid-template-columns:1fr}.user-request-updates article span{align-items:flex-start;flex-direction:column}}

/* Existing coupon redemption-limit management. */
.coupon-management-row{padding:14px 0;border-bottom:1px solid #e3e9ee}.coupon-management-summary{display:flex;align-items:center;justify-content:space-between;gap:15px}.coupon-management-summary>span:first-child strong,.coupon-management-summary>span:first-child small,.coupon-management-summary>span:last-child small{display:block}.coupon-management-summary>span:first-child small{margin-top:4px;color:#6c7f90}.coupon-management-summary>span:last-child{text-align:right}.coupon-management-summary>span:last-child small{margin-top:5px;color:#6c7f90}.coupon-redemption-form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:9px;align-items:end;margin-top:11px;padding:10px;border:1px solid #dce6ed;border-radius:9px;background:#f6f9fb}.coupon-redemption-form label{margin:0;font-size:.72rem}.coupon-redemption-form input{margin-top:5px;padding:8px 9px}.coupon-redemption-form button{margin:0;padding:9px 13px}.coupon-unlimited-note{margin-top:9px;padding:8px 10px;border-radius:8px;background:#eef7f2;color:#397054;font-size:.7rem;font-weight:700}
@media(max-width:600px){.coupon-management-summary{align-items:flex-start;flex-direction:column}.coupon-management-summary>span:last-child{text-align:left}.coupon-redemption-form{grid-template-columns:1fr}.coupon-redemption-form button{width:100%}}

/* Private calculator history, project activity, and email polls. */
.calculator-history-panel{margin-top:20px}.calculator-history-list{display:grid;gap:10px}.calculator-history-entry{overflow:hidden;border:1px solid #dce6ed;border-radius:11px;background:#fff}.calculator-history-entry summary{display:grid;grid-template-columns:minmax(150px,1fr) auto auto;gap:18px;align-items:center;padding:14px 16px;cursor:pointer;list-style:none}.calculator-history-entry summary::-webkit-details-marker{display:none}.calculator-history-entry summary>span{display:flex;flex-direction:column;gap:3px}.calculator-history-entry summary small{color:#718495;font-size:.68rem}.calculator-history-bittings{flex-direction:row!important;gap:8px!important}.calculator-history-bittings b{padding:5px 8px;border-radius:7px;background:#edf4f8;color:#254a64;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.72rem}.calculator-history-detail{padding:0 16px 16px;border-top:1px solid #e3eaf0}.calculator-history-detail .table-scroll{margin-top:14px}.calculator-history-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:12px}.calculator-history-actions form{margin:0}.calculator-history-actions button{width:auto;margin:0;padding:8px 12px;font-size:.72rem}.calculator-history-reuse{background:#1f6fa8}.calculator-history-empty{padding:18px;border:1px dashed #cad8e2;border-radius:10px;color:#667b8d;text-align:center;font-size:.8rem}
.admin-project-activity-table td{vertical-align:middle}.admin-project-activity-table td:first-child strong,.admin-project-activity-table td:first-child small{display:block}.admin-project-activity-table td:first-child small{margin-top:3px;color:#708294}.project-activity-time{white-space:nowrap;color:#36556d;font-weight:750}.project-activity-time small{display:block;margin-top:3px;color:#718495;font-weight:600}
.broadcast-type-fields,.broadcast-poll-fields{display:grid;gap:12px}.broadcast-poll-fields{padding:15px;border:1px solid #cfe0eb;border-radius:11px;background:#f5f9fc}.broadcast-poll-fields.view-hidden{display:none}.poll-option-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.poll-option-grid strong,.poll-option-grid small{grid-column:1/-1}.poll-option-grid small{color:#6c8091}.broadcast-poll-label{display:inline-flex;margin-left:7px;padding:3px 7px;border-radius:999px;background:#e4eef7;color:#28648e;font-size:.6rem;font-style:normal;text-transform:uppercase}.broadcast-poll-results{display:grid;gap:6px;margin-top:7px}.broadcast-poll-results>b{font-size:.7rem}.broadcast-poll-results>span{position:relative;overflow:hidden;padding:6px 8px;border-radius:7px;background:#edf2f6}.broadcast-poll-results>span i{position:absolute;inset:0 auto 0 0;background:#d5e9f5}.broadcast-poll-results>span label{position:relative;display:flex;justify-content:space-between;margin:0;color:#38566d;font-size:.68rem}.poll-response-page{max-width:700px;margin:28px auto}.poll-response-card{padding:28px;border:1px solid #d7e3eb;border-radius:16px;background:#fff;box-shadow:0 12px 35px rgba(18,48,70,.08)}.poll-response-card h1{margin:5px 0 10px;color:#1b3a52}.poll-response-options{display:grid;gap:9px;margin:20px 0}.poll-response-option{display:flex;align-items:center;gap:11px;padding:13px;border:1px solid #d7e3eb;border-radius:10px;background:#f8fafc;cursor:pointer}.poll-response-option input{width:18px;height:18px;margin:0}.poll-response-complete{display:flex;flex-direction:column;gap:5px;margin:18px 0;padding:16px;border-radius:10px;background:#e8f5ed;color:#276b48}.poll-response-note{color:#6c7f90;font-size:.74rem;line-height:1.5}
.broadcast-selected-users{display:grid;gap:10px;padding:14px;border:1px solid #cddde8;border-radius:11px;background:#f7fafc}.broadcast-selected-users.view-hidden{display:none}.broadcast-selected-users>div:first-child strong,.broadcast-selected-users>div:first-child small{display:block}.broadcast-selected-users>div:first-child small{margin-top:3px;color:#6d8192}.broadcast-selected-users input[type=search]{margin:0}.broadcast-recipient-list{max-height:240px;overflow:auto;border:1px solid #d9e4eb;border-radius:9px;background:#fff}.broadcast-recipient-list>label{display:flex;align-items:center;gap:10px;margin:0;padding:10px 12px;border-bottom:1px solid #e6edf2;cursor:pointer}.broadcast-recipient-list>label:last-child{border-bottom:0}.broadcast-recipient-list>label:hover{background:#f0f6fa}.broadcast-recipient-list>label.view-hidden{display:none}.broadcast-recipient-list input{width:17px;height:17px;margin:0;flex:none}.broadcast-recipient-list span strong,.broadcast-recipient-list span small{display:block}.broadcast-recipient-list span strong{color:#29465c;font-size:.78rem}.broadcast-recipient-list span small{margin-top:2px;color:#718494;font-size:.67rem}.broadcast-selected-count{color:#506b7f;text-align:right}
@media(max-width:700px){.calculator-history-entry summary{grid-template-columns:1fr;gap:9px}.calculator-history-bittings{flex-wrap:wrap}.calculator-history-actions{align-items:stretch;flex-direction:column}.calculator-history-actions button,.calculator-history-actions form{width:100%}.poll-option-grid{grid-template-columns:1fr}.poll-option-grid strong,.poll-option-grid small{grid-column:1}.poll-response-card{padding:21px 16px}}

/* Additive SFIC control-key management and opt-in notices. */
.sfic-new-project-control{display:grid;gap:13px;padding:17px;border:1px solid #b9d4e5;border-radius:12px;background:#f1f8fc}.sfic-new-project-control>div:first-child,.sfic-project-control-heading{display:flex;align-items:center;gap:13px}.sfic-new-project-control h3,.sfic-new-project-control p,.sfic-project-control-heading h2,.sfic-project-control-heading p{margin:0}.sfic-new-project-control p,.sfic-project-control-heading p{margin-top:3px;color:#62798b;font-size:.76rem}.sfic-control-key-icon,.sfic-control-dialog-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:12px;background:#193f5e;color:#fff;font-size:.75rem;font-weight:950;letter-spacing:.05em}.sfic-control-toggle{display:flex!important;align-items:center;gap:9px;margin:0!important;padding:11px;border:1px solid #d4e2eb;border-radius:9px;background:#fff}.sfic-control-toggle input{width:18px;height:18px;margin:0}.sfic-control-create-fields,.sfic-control-key-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.sfic-control-create-fields.view-hidden{display:none}.sfic-new-project-control>small{color:#657b8c;line-height:1.5}
.sfic-project-control-panel{border-left:4px solid #2878a8!important}.sfic-project-control-heading>div:nth-child(2){min-width:0;flex:1}.sfic-control-status{display:inline-flex;padding:6px 9px;border-radius:999px;background:#def2e6;color:#28704e;font-size:.65rem;font-weight:900;text-transform:uppercase}.sfic-control-status.available{background:#e2eef7;color:#28658e}.sfic-control-key-form{margin-top:17px}.sfic-control-key-form button{margin:0}.sfic-regenerate-form{display:flex;justify-content:flex-end;margin:10px 0 0}.sfic-regenerate-form button{width:auto;margin:0}.sfic-control-safety-note{display:flex;gap:10px;margin-top:14px;padding:12px 14px;border-radius:9px;background:#fff3d3;color:#745315;font-size:.76rem;line-height:1.45}.sfic-control-safety-note strong{flex:none}.sfic-control-readonly{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.sfic-control-readonly>span{padding:13px;border:1px solid #d9e4eb;border-radius:9px;background:#f8fafc}.sfic-control-readonly small,.sfic-control-readonly strong{display:block}.sfic-control-readonly small{color:#6d8191;font-size:.65rem;text-transform:uppercase}.sfic-control-readonly strong{margin-top:5px;color:#203e55;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}
.sfic-control-dialog{width:min(92vw,620px);padding:28px;border:0;border-radius:18px;box-shadow:0 30px 90px rgba(8,29,44,.3)}.sfic-control-dialog::backdrop{background:rgba(9,28,43,.68);backdrop-filter:blur(4px)}.sfic-control-dialog-icon{margin-bottom:14px}.sfic-control-dialog h2{margin:0;color:#18384f}.sfic-control-dialog>p{color:#5c7385;line-height:1.55}.sfic-control-dialog-actions{display:flex;gap:10px;margin-top:20px}.sfic-control-dialog-actions form{margin:0}.sfic-control-dialog-actions button{margin:0}.sfic-dismiss-form{margin:13px 0 4px}.sfic-dismiss-form .link-button{margin:0;padding:0;background:transparent;color:#60798c;box-shadow:none;text-decoration:underline}.sfic-control-dialog>small{display:block;margin-top:13px;color:#718595;line-height:1.45}.sfic-dashboard-projects{display:grid;gap:8px;max-height:260px;overflow:auto;margin-top:16px}.sfic-dashboard-projects article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid #dce6ed;border-radius:10px;background:#f8fafc}.sfic-dashboard-projects span strong,.sfic-dashboard-projects span small{display:block}.sfic-dashboard-projects span small{margin-top:3px;color:#718493}.sfic-dashboard-projects a{flex:none}
@media(max-width:720px){.sfic-control-create-fields,.sfic-control-key-form{grid-template-columns:1fr}.sfic-control-key-form button{width:100%}.sfic-control-readonly{grid-template-columns:1fr}.sfic-control-dialog{padding:22px 17px}.sfic-control-dialog-actions{align-items:stretch;flex-direction:column}.sfic-control-dialog-actions form,.sfic-control-dialog-actions button,.sfic-control-dialog-actions form button{width:100%}.sfic-dashboard-projects article{align-items:stretch;flex-direction:column}.sfic-dashboard-projects a{text-align:center}}

/* Administrator email activity audit. */
.email-activity-metrics{margin-bottom:18px}.email-failed-icon{background:#f9e4e2!important;color:#9a3d36!important}.email-activity-panel{padding-top:18px}.email-activity-filters{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(150px,.7fr) minmax(190px,.9fr) auto auto;gap:10px;align-items:end;margin-bottom:17px}.email-activity-filters label{margin:0}.email-activity-filters button{margin:0}.email-activity-filters>a{padding:11px 5px;color:#4c6e85;font-size:.75rem;font-weight:800}.email-activity-table td{vertical-align:top}.email-activity-table td strong,.email-activity-table td small{display:block}.email-activity-table td small{margin-top:4px;color:#718495;font-size:.66rem}.email-activity-time{white-space:nowrap;color:#3b566b;font-size:.72rem;font-weight:750}.email-type-badge,.email-delivery-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:.64rem;font-weight:900;white-space:nowrap}.email-type-badge{background:#e8f1f7;color:#295e82}.email-delivery-status.status-sent{background:#e3f3e9;color:#27704d}.email-delivery-status.status-queued{background:#fff0d3;color:#835b12}.email-delivery-status.status-failed{background:#f9e2df;color:#963b34}.email-activity-table details{max-width:260px;margin-top:7px}.email-activity-table summary{color:#89534d;font-size:.66rem;font-weight:800;cursor:pointer}.email-activity-table details p{margin:6px 0 0;padding:8px;border-radius:7px;background:#fff1ef;color:#79443f;font-size:.65rem;line-height:1.4;overflow-wrap:anywhere}.email-activity-empty{padding:28px!important;color:#6b7f90;text-align:center}.email-activity-table-wrap{overflow:auto}
@media(max-width:900px){.email-activity-filters{grid-template-columns:1fr 1fr}.email-activity-filters label:first-child{grid-column:1/-1}}@media(max-width:600px){.email-activity-filters{grid-template-columns:1fr}.email-activity-filters label:first-child{grid-column:auto}.email-activity-filters button{width:100%}}

/* Secure replies from ticket status emails. */
.admin-response-history article.customer-ticket-reply{border-left:3px solid #2c79a7;background:#eff7fb}.user-request-updates article.customer-ticket-reply{border-left-color:#c89427;background:#fff7e4}.ticket-reply-page{display:grid;min-height:calc(100vh - 230px);place-items:center;padding:30px 0}.ticket-reply-card{width:min(100%,680px);padding:32px;border:1px solid #d4e1e9;border-radius:18px;background:#fff;box-shadow:0 18px 55px rgba(17,47,69,.11)}.ticket-reply-card h1{margin:7px 0 18px;color:#193a52}.ticket-reply-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.ticket-reply-summary>span{padding:13px;border:1px solid #dce6ed;border-radius:10px;background:#f7fafc}.ticket-reply-summary small,.ticket-reply-summary strong{display:block}.ticket-reply-summary small{color:#718493;font-size:.65rem;text-transform:uppercase}.ticket-reply-summary strong{margin-top:4px;color:#294a63}.ticket-reply-intro,.ticket-reply-note{color:#5c7385;font-size:.8rem;line-height:1.6}.ticket-reply-form{display:grid;gap:15px}.ticket-reply-form textarea{min-height:180px;resize:vertical}.ticket-reply-form>div{display:flex;align-items:center;justify-content:space-between;gap:18px}.ticket-reply-form>div small{color:#6e8292;line-height:1.45}.ticket-reply-form button{flex:none;margin:0}.ticket-reply-success,.ticket-reply-unavailable{display:flex;flex-direction:column;gap:5px;padding:17px;border-radius:11px}.ticket-reply-success{background:#e6f4eb;color:#276d4b}.ticket-reply-unavailable{background:#fff1d8;color:#7b5714}.ticket-reply-login{display:inline-flex;margin-top:12px;text-decoration:none}
@media(max-width:620px){.ticket-reply-page{padding:15px 0}.ticket-reply-card{padding:23px 17px;border-radius:14px}.ticket-reply-summary{grid-template-columns:1fr}.ticket-reply-form>div{align-items:stretch;flex-direction:column}.ticket-reply-form button{width:100%}}

/* Fixed admin-only navigation shell. */
.admin-workspace{display:grid;grid-template-columns:254px minmax(0,1fr);align-items:stretch;flex:1;min-height:0}.admin-sidebar{display:flex;position:static;width:254px;min-height:calc(100vh - 72px);flex-direction:column;padding:20px 15px;border-right:1px solid #d5e1e9;background:#fff;box-shadow:8px 0 30px rgba(16,42,67,.055)}.admin-sidebar-heading{display:flex;align-items:center;gap:11px;padding:3px 7px 18px;border-bottom:1px solid #e4ebf0}.admin-sidebar-heading>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:11px;background:#173a57;color:#fff;font-size:.72rem;font-weight:950}.admin-sidebar-heading strong,.admin-sidebar-heading small{display:block}.admin-sidebar-heading strong{color:#1d354a;font-size:.86rem}.admin-sidebar-heading small{margin-top:3px;color:#718494;font-size:.64rem}.admin-sidebar nav{display:grid;gap:4px;padding:16px 0}.admin-sidebar nav a{display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:9px;color:#425c70;font-size:.76rem;font-weight:800;text-decoration:none;transition:.15s ease}.admin-sidebar nav a>span{display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:8px;background:#edf3f7;color:#35627f;font-size:.68rem;font-weight:950}.admin-sidebar nav a:hover{background:#f0f6fa;color:#1d608d}.admin-sidebar nav a.active{background:#e7f2f9;color:#175f90}.admin-sidebar nav a.active>span{background:#1f6fa8;color:#fff}.admin-sidebar-divider{padding:14px 11px 5px;color:#8393a1;font-size:.58rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.admin-sidebar-exit{margin-top:auto;padding:11px;border-top:1px solid #e3eaef;color:#547086;font-size:.72rem;font-weight:850;text-decoration:none}.admin-area .admin-content-shell{width:100%;max-width:none;margin:0;padding-right:32px;padding-left:32px}.admin-area .admin-area-footer{margin-left:0}.admin-area .admin-area-footer .site-footer-inner{width:100%;max-width:none;padding-right:32px;padding-left:32px}.admin-area .subnav{display:none!important}.admin-sidebar-toggle,.admin-sidebar-backdrop{display:none}
@media(max-width:980px){.admin-workspace{display:block;position:relative}.admin-area .admin-content-shell{width:100%;margin-left:0;padding-top:72px}.admin-sidebar{position:absolute;top:0;left:0;z-index:1200;width:min(86vw,290px);height:auto;min-height:0;transform:translateX(-105%);transition:transform .2s ease}.admin-sidebar-open .admin-sidebar{transform:translateX(0)}.admin-sidebar-toggle{display:block;position:absolute;top:12px;left:14px;z-index:140;padding:9px 12px;background:#173a57;font-size:.72rem}.admin-sidebar-backdrop{display:block;visibility:hidden;position:absolute;inset:0;z-index:1100;background:rgba(9,27,41,.55);opacity:0;transition:.2s ease}.admin-sidebar-open .admin-sidebar-backdrop{visibility:visible;opacity:1}}

/* Encrypted administrator email previews. */
.email-view-button{display:inline-flex;padding:7px 10px;border:1px solid #bad2e1;border-radius:8px;background:#edf6fb;color:#1d638f;font-size:.66rem;font-weight:900;text-decoration:none;white-space:nowrap}.email-preview-unavailable{color:#8997a3;font-size:.66rem}.email-preview-panel{overflow:hidden}.email-preview-metadata{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.email-preview-metadata>span,.email-preview-subject{padding:12px;border:1px solid #dce6ed;border-radius:9px;background:#f7fafc}.email-preview-metadata small,.email-preview-metadata strong,.email-preview-metadata em,.email-preview-subject small,.email-preview-subject strong{display:block}.email-preview-metadata small,.email-preview-subject small{color:#718493;font-size:.62rem;font-style:normal;text-transform:uppercase}.email-preview-metadata strong,.email-preview-subject strong{margin-top:4px;color:#29485f;font-size:.78rem}.email-preview-metadata em{margin-top:3px;color:#718493;font-size:.65rem;font-style:normal}.email-preview-metadata i{font-style:normal}.email-preview-subject{margin-top:10px}.email-preview-security-note{display:flex;gap:10px;margin:16px 0;padding:11px 13px;border:1px solid #cfe0e9;border-radius:9px;background:#f1f7fa;color:#46677d;font-size:.72rem;line-height:1.45}.email-preview-security-note strong{flex:none}.email-preview-frame{display:block;width:100%;min-height:560px;border:1px solid #d8e2e9;border-radius:11px;background:#fff}
@media(max-width:800px){.email-preview-metadata{grid-template-columns:1fr 1fr}}@media(max-width:520px){.email-preview-metadata{grid-template-columns:1fr}.email-preview-security-note{flex-direction:column}.email-preview-frame{min-height:480px}}
@media(min-width:981px){.admin-workspace{align-items:start}.admin-sidebar{align-self:start;height:auto;min-height:0}.admin-sidebar-exit{margin-top:8px}}
@media(max-width:980px){.admin-workspace{position:relative}.admin-sidebar{position:absolute;top:0;bottom:auto;height:auto;max-height:none;overflow:visible}.admin-sidebar-open{overflow:auto}.admin-sidebar-backdrop{position:absolute}}
.admin-sidebar-account{display:grid;gap:3px;margin-top:8px;padding-top:10px;border-top:1px solid #e3eaef}.admin-sidebar-account a,.admin-sidebar-account button{display:block;width:100%;margin:0;padding:9px 11px;border:0;border-radius:8px;background:transparent;color:#547086;font-size:.72rem;font-weight:850;text-align:left;text-decoration:none}.admin-sidebar-account a:hover,.admin-sidebar-account button:hover{background:#edf4f8;color:#1d608d}.admin-sidebar-account form{margin:0}
.admin-system-clock{display:grid;gap:3px;margin:14px 0 0;padding:12px;border:1px solid #d7e4ec;border-radius:10px;background:linear-gradient(145deg,#f6fafc,#edf5f9);color:#294b63}.admin-system-clock>span{color:#718797;font-size:.57rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.admin-system-clock time{font-variant-numeric:tabular-nums;color:#173a57;font-size:.8rem;font-weight:900;line-height:1.35}.admin-system-clock small{color:#6d8292;font-size:.6rem;overflow-wrap:anywhere}
.project-start-dialog-footer{display:flex;justify-content:flex-end;margin-top:14px}.project-start-dialog-footer button{margin:0}
.contact-page-head,.contact-request-panel,.user-request-history{width:min(100%,1050px);margin-right:auto;margin-left:auto}.contact-page-head{margin-bottom:24px}.contact-page-head>div{max-width:780px}.contact-page-head h1{margin-bottom:8px}.contact-page-head p{max-width:760px;line-height:1.55}.contact-request-panel{display:block;padding:30px}.contact-request-intro{align-items:center;margin-bottom:24px;padding:0 0 22px;border-bottom:1px solid #e2e9ef}.contact-request-intro h2{font-size:1.25rem}.contact-request-intro p{max-width:680px}.contact-request-form{width:100%;gap:18px}.contact-request-form textarea{min-height:220px}.user-request-history{margin-top:24px}@media(max-width:800px){.contact-page-head{margin-bottom:18px}.contact-request-panel{padding:22px 17px}.contact-request-intro{align-items:flex-start}.contact-request-form textarea{min-height:190px}}
.project-list-row{grid-template-columns:42px minmax(180px,1fr) auto 110px auto 24px!important}.project-list-main{color:inherit;text-decoration:none}.project-download-button{display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;border:1px solid #bfd4e2;border-radius:8px;background:#eef6fa;color:#1d638f;font-size:.7rem;font-weight:900;text-decoration:none}.project-download-button:hover{background:#dfeef6}.project-arrow{text-decoration:none}.project-start-dialog{width:min(92vw,720px);padding:30px;border:0;border-radius:20px;box-shadow:0 30px 100px rgba(8,28,43,.35)}.project-start-dialog::backdrop,.whats-new-dialog::backdrop{background:rgba(8,27,42,.68);backdrop-filter:blur(4px)}.project-start-heading{display:flex;gap:15px;align-items:flex-start}.project-start-heading>span{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:14px;background:#173a57;color:#fff;font-size:1.25rem}.project-start-heading small,.project-start-heading h2,.project-start-heading p{display:block;margin:0}.project-start-heading small{color:#1f6fa8;font-size:.65rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.project-start-heading h2{margin-top:4px;color:#19364d}.project-start-heading p{margin-top:6px;color:#64798a;line-height:1.5}.project-start-options{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:24px}.project-start-option{display:flex;align-items:flex-start;flex-direction:column;min-height:125px;margin:0;padding:19px;border:1px solid #d5e1e9;border-radius:13px;background:#f8fafc;color:#29475e;text-align:left}.project-start-option.import{background:#eef7fb}.project-start-option:hover{border-color:#78aac9;transform:translateY(-1px)}.project-start-option strong,.project-start-option span{display:block}.project-start-option span{margin-top:7px;color:#657b8c;font-size:.76rem;line-height:1.5}.project-import-form{display:grid;gap:15px;margin-top:24px;padding:19px;border:1px solid #d5e1e9;border-radius:13px;background:#f8fafc}.project-import-form>div{display:flex;justify-content:flex-end;gap:10px}.project-import-form button{margin:0}.project-import-form>small{color:#687d8e}.automatic-export-panel{display:flex;align-items:center;justify-content:space-between;gap:24px}.automatic-export-panel>div{display:flex;align-items:flex-start;gap:13px}.automatic-export-icon{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:12px;background:#e2f2e9;color:#28704e;font-size:.72rem;font-weight:950}.automatic-export-panel h2,.automatic-export-panel p{margin:0}.automatic-export-panel p{max-width:720px;margin-top:4px;color:#64798a;font-size:.78rem;line-height:1.5}.automatic-export-panel small{display:block;margin-top:6px;color:#587084}.automatic-export-panel form{display:flex;align-items:center;gap:10px;flex:none}.automatic-export-toggle{display:flex;align-items:center;gap:8px;margin:0;padding:9px 11px;border:1px solid #d4e1e9;border-radius:9px;background:#f8fafc}.automatic-export-toggle input{width:18px;height:18px;margin:0}.automatic-export-panel button{margin:0;white-space:nowrap}.whats-new-dialog{width:min(92vw,620px);padding:0;border:0;border-radius:20px;overflow:hidden;box-shadow:0 30px 100px rgba(8,28,43,.38)}.whats-new-visual{display:flex;align-items:center;padding:25px 30px;background:linear-gradient(135deg,#153b5a,#216f9f);color:#fff}.whats-new-visual span{padding:7px 10px;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-size:.65rem;font-weight:950;letter-spacing:.1em}.whats-new-content{padding:27px 30px 20px}.whats-new-kicker{color:#1f6fa8;font-size:.66rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.whats-new-content h2{margin:7px 0 12px;color:#19364d}.whats-new-message{color:#4f6779;line-height:1.65;white-space:pre-wrap}.whats-new-content small{display:block;margin-top:17px;color:#7b8b98}.whats-new-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 30px 24px}.whats-new-actions button{margin:0}.whats-new-admin-composer form{display:grid;gap:15px}.whats-new-admin-row{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:17px 3px;border-bottom:1px solid #e1e8ee}.whats-new-admin-row:last-of-type{border-bottom:0}.whats-new-admin-row strong,.whats-new-admin-row p,.whats-new-admin-row small{display:block}.whats-new-admin-row p{max-width:850px;margin:7px 0;color:#526a7d;line-height:1.55;white-space:pre-wrap}.whats-new-admin-row small{color:#718494}.whats-new-admin-row form,.whats-new-admin-row button{flex:none;margin:0}@media(max-width:850px){.project-list-row{grid-template-columns:42px minmax(150px,1fr) auto auto 24px!important}.project-updated{display:none}.automatic-export-panel{align-items:stretch;flex-direction:column}.automatic-export-panel form{justify-content:flex-end}}@media(max-width:620px){.project-list-row{grid-template-columns:38px minmax(0,1fr) auto!important}.project-status{grid-column:2}.project-download-button{grid-column:2;justify-self:start}.project-arrow{grid-column:3;grid-row:1/4}.project-start-dialog{padding:23px 17px}.project-start-options{grid-template-columns:1fr}.project-import-form>div,.whats-new-actions{align-items:stretch;flex-direction:column}.project-import-form button,.whats-new-actions button{width:100%}.automatic-export-panel form{align-items:stretch;flex-direction:column}.whats-new-content,.whats-new-visual,.whats-new-actions{padding-right:20px;padding-left:20px}.whats-new-admin-row{flex-direction:column}}

/* LOCKLOGIX_WHATS_NEW_SCROLL_20260904_START */
.whats-new-dialog {
    display: none;
    flex-direction: column;
    max-height: min(88vh, 780px);
    max-height: min(88dvh, 780px);
}
.whats-new-dialog[open] {
    display: flex;
}
.whats-new-dialog .whats-new-visual,
.whats-new-dialog .whats-new-actions {
    flex: 0 0 auto;
}
.whats-new-dialog .whats-new-content {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
}
.whats-new-dialog .whats-new-message {
    min-height: 0;
    max-height: min(48vh, 430px);
    max-height: min(48dvh, 430px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    padding-right: 10px;
}
@media (max-width: 620px) {
    .whats-new-dialog {
        width: min(94vw, 620px);
        max-height: 92vh;
        max-height: 92dvh;
    }
    .whats-new-dialog .whats-new-message {
        max-height: 44vh;
        max-height: 44dvh;
        -webkit-overflow-scrolling: touch;
    }
}
/* LOCKLOGIX_WHATS_NEW_SCROLL_20260904_END */

/* LOCKLOGIX_WHATS_NEW_MESSAGE_PADDING_20260904_002 */
.whats-new-dialog .whats-new-message {
    box-sizing: border-box;
    padding: 14px 18px;
    overflow-wrap: anywhere;
}
@media (max-width: 620px) {
    .whats-new-dialog .whats-new-message {
        padding: 13px 15px;
    }
}

/* LOCKLOGIX_POLL_USER_COMMENTS_20260913 */
.poll-comment-field{display:grid;gap:7px;margin:18px 0}.poll-comment-field>span{display:flex;align-items:center;justify-content:space-between;color:#1b3a52;font-weight:800}.poll-comment-field>span small,.poll-comment-counter{color:#718494;font-size:.72rem;font-weight:500}.poll-comment-field textarea{box-sizing:border-box;width:100%;min-height:120px;padding:12px 14px;border:1px solid #cbdbe6;border-radius:10px;background:#fff;color:#233f53;font:inherit;line-height:1.5;resize:vertical}.poll-comment-field textarea:focus{border-color:#2879ad;outline:3px solid rgba(40,121,173,.13)}.broadcast-poll-comments{margin-top:10px;padding:9px 11px;border:1px solid #d7e3eb;border-radius:9px;background:#f8fafc}.broadcast-poll-comments summary{color:#236b99;font-size:.72rem;font-weight:850;cursor:pointer}.broadcast-poll-comments>div{display:grid;gap:8px;margin-top:9px}.broadcast-poll-comments article{padding:10px;border-radius:8px;background:#fff}.broadcast-poll-comments article strong,.broadcast-poll-comments article span{display:block}.broadcast-poll-comments article span{margin-top:2px;color:#708393;font-size:.66rem}.broadcast-poll-comments article p{margin:7px 0 0;color:#3f596c;font-size:.72rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
/* LOCKLOGIX_POLL_COMMENT_PERMISSION_20260913 */
.broadcast-comment-permission{display:flex!important;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid #cfe0eb;border-radius:10px;background:#fff;cursor:pointer}.broadcast-comment-permission input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0}.broadcast-comment-permission span,.broadcast-comment-permission strong,.broadcast-comment-permission small{display:block}.broadcast-comment-permission strong{color:#27475e}.broadcast-comment-permission small{margin-top:3px;color:#6c8091;font-size:.72rem;line-height:1.45}.broadcast-comments-enabled{display:inline-flex!important;width:max-content;margin-top:8px;padding:4px 8px;border-radius:999px;background:#e7f4eb;color:#28704e!important;font-size:.62rem!important;font-weight:850;text-transform:uppercase}.broadcast-poll-comments{margin-top:10px;padding:9px 11px;border:1px solid #d7e3eb;border-radius:9px;background:#f8fafc}.broadcast-poll-comments summary{color:#236b99;font-size:.72rem;font-weight:850;cursor:pointer}.broadcast-poll-comments>div{display:grid;gap:8px;margin-top:9px}.broadcast-poll-comments article{padding:10px;border-radius:8px;background:#fff}.broadcast-poll-comments article strong,.broadcast-poll-comments article span{display:block}.broadcast-poll-comments article span{margin-top:2px;color:#708393;font-size:.66rem}.broadcast-poll-comments article p{margin:7px 0 0;color:#3f596c;font-size:.72rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
/* LOCKLOGIX_PROJECT_PINNING_LAYOUT_20260915 */
.pinning-display-settings{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.pinning-display-heading{display:flex;align-items:flex-start;gap:13px}.pinning-display-icon{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:12px;background:#e8f2f8;color:#176a9d;font-size:.64rem;font-weight:950}.pinning-display-settings h2,.pinning-display-settings p{margin:0}.pinning-display-settings p{max-width:620px;margin-top:4px;color:#64798a;font-size:.78rem;line-height:1.5}.pinning-display-settings form{display:flex;align-items:flex-end;gap:12px}.pinning-display-options{display:grid;grid-template-columns:repeat(2,minmax(190px,1fr));gap:9px}.pinning-display-options label{display:flex;align-items:flex-start;gap:9px;margin:0;padding:11px 12px;border:1px solid #d3e0e8;border-radius:10px;background:#f8fafc;cursor:pointer}.pinning-display-options input{flex:0 0 auto;width:17px;height:17px;margin:2px 0 0}.pinning-display-options span,.pinning-display-options strong,.pinning-display-options small{display:block}.pinning-display-options strong{color:#29475e;font-size:.76rem}.pinning-display-options small{margin-top:3px;color:#6b8090;font-size:.67rem;line-height:1.4}.pinning-display-settings button{flex:none;margin:0;white-space:nowrap}.pinning-compact-table{width:100%;min-width:max-content;border-collapse:separate;border-spacing:0}.pinning-compact-table th,.pinning-compact-table td{min-width:58px;padding:12px 14px;text-align:center;white-space:nowrap}.pinning-compact-table th[scope=row]{position:sticky;left:0;z-index:1;min-width:92px;border-right:2px solid #d3e0e8;background:#173f5f;color:#fff;text-align:left;font-weight:900}.pinning-compact-table tr:first-child td{background:#e9f2f8;color:#214b67;font-weight:850}.pinning-compact-table tr:nth-child(2) td{background:#fff4ce;color:#263e51;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1rem;font-weight:900}.pinning-compact-table tr:nth-child(3) td{background:#edf5fb;color:#176a9d;font-weight:850}.pinning-compact-table tr:nth-child(4) td{background:#eef7f1;color:#27704d;font-weight:850}.pinning-compact-table td{border-right:1px solid #dbe5eb;border-bottom:1px solid #dbe5eb}.pinning-compact-view.view-hidden,.pinning-detailed-view.view-hidden{display:none!important}@media(max-width:1000px){.pinning-display-settings{flex-direction:column}.pinning-display-settings form{width:100%;align-items:stretch;flex-direction:column}.pinning-display-settings button{align-self:flex-end}}@media(max-width:620px){.pinning-display-options{grid-template-columns:1fr}.pinning-display-settings button{align-self:stretch;width:100%}.pinning-compact-table th,.pinning-compact-table td{min-width:48px;padding:10px 11px}.pinning-compact-table th[scope=row]{min-width:78px}}

/* LOCKLOGIX COMMUNICATION PHOTOS */
.whats-new-image,.poll-message-image{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;border-radius:12px;margin:0 0 22px;background:#eef4f8}.communication-history-image{display:block;width:120px;height:72px;object-fit:cover;border-radius:9px;margin:0 0 10px;border:1px solid #d7e3eb}.broadcast-composer input[type=file],.whats-new-admin-composer input[type=file]{padding:12px;background:#f7fafc;border:1px dashed #a9c3d4}.broadcast-composer label small,.whats-new-admin-composer label small{display:block;margin-top:6px;color:#64798c;font-weight:400}@media(max-width:640px){.whats-new-image,.poll-message-image{max-height:280px}.communication-history-image{width:96px;height:60px}}

/* LOCKLOGIX PROJECT STATUS LIFECYCLE */
.project-status-panel{display:grid;gap:18px;border-left:4px solid #8ca4b5}.project-status-panel.status-production{border-left-color:#1c9a62}.project-status-panel.status-archived{border-left-color:#77828b;background:#f8fafb}.project-status-copy{display:flex;align-items:center;gap:14px}.project-status-copy>div{flex:1}.project-status-copy h2,.project-status-copy p{margin:0}.project-status-copy p{margin-top:4px;color:#5f7385}.project-status-icon{display:grid;place-items:center;min-width:54px;height:45px;padding:0 9px;border-radius:11px;background:#e9f1f6;color:#17496d;font-size:12px;font-weight:800;letter-spacing:.08em}.status-production .project-status-icon{background:#dcf4e8;color:#137547}.status-archived .project-status-icon{background:#e6eaed;color:#56616a}.project-status-current{padding:7px 12px;border-radius:999px;background:#e9f1f6;color:#17496d;font-size:13px;font-weight:800}.status-production .project-status-current{background:#dcf4e8;color:#137547}.status-archived .project-status-current{background:#e6eaed;color:#56616a}.project-status-panel form{display:flex;align-items:end;gap:12px}.project-status-panel form label{flex:1;margin:0}.project-status-panel form button{width:auto;white-space:nowrap}.project-status-panel>small{color:#687d8e}.project-status.status-production .status-dot{background:#20a66a}.project-status.status-archived .status-dot{background:#7c8790}.archived-project-form{opacity:.58;position:relative}.archived-project-form::after{content:'Archived — restore the project to edit';display:block;margin-top:8px;color:#6a747c;font-size:12px;font-weight:700}@media(max-width:640px){.project-status-copy{align-items:flex-start;flex-wrap:wrap}.project-status-current{margin-left:68px}.project-status-panel form{align-items:stretch;flex-direction:column}.project-status-panel form button{width:100%}}
/* LOCKLOGIX ACTIVE AS PRODUCTION MAPPING */
.project-status-panel.status-active{border-left-color:#1c9a62}.status-active .project-status-icon{background:#dcf4e8;color:#137547}.status-active .project-status-current{background:#dcf4e8;color:#137547}.project-status.status-active .status-dot{background:#20a66a}
/* LOCKLOGIX MULTIPLE COMMUNICATION PHOTOS */
.whats-new-gallery,.poll-message-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 22px}.whats-new-gallery:empty,.poll-message-gallery:empty,.communication-history-gallery:empty{display:none}.whats-new-gallery .whats-new-image,.poll-message-gallery .poll-message-image{height:220px;max-height:none;margin:0;object-fit:cover}.whats-new-gallery>*:only-child,.poll-message-gallery>*:only-child{grid-column:1/-1;height:auto;max-height:420px;object-fit:contain}.communication-history-gallery{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 10px}.communication-history-gallery .communication-history-image{margin:0;width:82px;height:54px}@media(max-width:640px){.whats-new-gallery,.poll-message-gallery{grid-template-columns:1fr}.whats-new-gallery .whats-new-image,.poll-message-gallery .poll-message-image{height:auto;max-height:260px;object-fit:contain}.whats-new-gallery>*:only-child,.poll-message-gallery>*:only-child{grid-column:auto}}
/* LOCKLOGIX WHATS NEW RESCIND */
.whats-new-admin-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.whats-new-admin-actions form{margin:0}.whats-new-admin-actions button{width:auto}.whats-new-rescinded-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#e6eaed;color:#59656e;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.whats-new-admin-row:has(.whats-new-rescinded-badge){opacity:.72}@media(max-width:640px){.whats-new-admin-actions{justify-content:flex-start;width:100%}}
/* LOCKLOGIX FIREBASE SMS OTP 20260915 */
.firebase-sms-controls,.firebase-enroll-form,.firebase-remove-form{display:grid;gap:12px}.firebase-sms-status{min-height:20px;margin:0;color:#657b8c;font-size:.75rem;font-weight:700}.firebase-sms-status[data-state=error]{color:#a52c2c}.firebase-sms-status[data-state=success]{color:#16734a}.firebase-sms-status[data-state=working]{color:#176a9d}.firebase-phone-panel{display:grid;gap:20px}.firebase-phone-heading{display:flex;align-items:center;gap:14px}.firebase-phone-heading>div{flex:1}.firebase-phone-heading h2,.firebase-phone-heading p{margin:0}.firebase-phone-heading p{margin-top:4px;color:#687d8e}.firebase-phone-icon{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:12px;background:#e5f2fa;color:#176a9d;font-size:.72rem;font-weight:950}.firebase-phone-state{padding:7px 11px;border-radius:999px;font-size:.68rem;font-weight:900;text-transform:uppercase}.firebase-phone-state.enabled{background:#dff3e8;color:#176e49}.firebase-phone-state.disabled{background:#eef2f5;color:#62727e}.firebase-config-notice,.firebase-enrolled-number{padding:16px;border:1px solid #d5e3ec;border-radius:12px;background:#f7fafc;color:#5e7485}.firebase-enrolled-number span,.firebase-enrolled-number strong,.firebase-enrolled-number small{display:block}.firebase-enrolled-number strong{margin:5px 0;color:#173f5f;font-size:1.15rem}.firebase-consent,.firebase-admin-toggle{display:flex!important;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid #cfe0eb;border-radius:10px;background:#f8fafc}.firebase-consent input,.firebase-admin-toggle input[type=checkbox]{flex:0 0 auto;width:18px;height:18px;margin:2px 0}.firebase-admin-toggle span,.firebase-admin-toggle strong,.firebase-admin-toggle small{display:block}.firebase-admin-toggle small{margin-top:3px;color:#687d8e;font-weight:400}.firebase-enroll-form>.security-primary,.firebase-enroll-form>.security-secondary,.firebase-remove-form>.button-secondary{width:max-content}.access-tabs:has([data-access-tab=sms]){grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:640px){.firebase-phone-heading{align-items:flex-start;flex-wrap:wrap}.firebase-phone-state{margin-left:62px}.firebase-enroll-form>.security-primary,.firebase-enroll-form>.security-secondary,.firebase-remove-form>.button-secondary{width:100%}.access-tabs:has([data-access-tab=sms]){grid-template-columns:1fr}.access-tabs:has([data-access-tab=sms]) button{width:100%}}

/* LOCKLOGIX OTP SELECTION UI EMAIL CONSENT FIX 20260915 */
.otp-method-tabs button{gap:0!important}.otp-method-tabs button span{display:none!important}.otp-rates-notice{box-sizing:border-box;margin:20px 0 22px!important;padding:12px 16px;border:1px solid #d9e5ed;border-radius:10px;background:#f6f9fb;color:#647786!important;font-size:.82rem!important;line-height:1.5!important;text-align:center}.otp-provider-note{margin-top:18px!important;padding-top:14px;border-top:1px solid #e1e8ed;line-height:1.5}.otp-send-form{margin:0 0 4px}.otp-send-form .security-secondary{width:100%}@media(max-width:640px){.otp-rates-notice{margin:18px 0 20px!important;padding:12px 18px;font-size:.78rem!important}}
/* LOCKLOGIX LOGIN OTP TWO-COLUMN FIX 20260915 */
.login-otp-method-tabs:has([data-access-tab=sms]){grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:640px){.login-otp-method-tabs:has([data-access-tab=sms]){grid-template-columns:repeat(2,minmax(0,1fr))}}

/* LOCKLOGIX PROJECT CODES NOTES DUPLICATION 20260916 */
.project-duplicate-notice{display:flex;align-items:flex-start;flex-direction:column;gap:5px;margin-bottom:18px;padding:16px 18px;border-left:4px solid #2878aa;background:#eef7fb}.project-duplicate-notice span{color:#5c7385;font-size:.82rem}.project-code-format{margin:0;padding:18px;border:1px solid #d5e1e9;border-radius:13px}.project-code-format legend{padding:0 8px;color:#173a57;font-weight:900}.project-code-format-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.project-code-format-options label{display:flex;align-items:flex-start;gap:10px;margin:0;padding:14px;border:1px solid #d6e2ea;border-radius:11px;background:#f8fafc}.project-code-format-options input{flex:none;width:18px;height:18px;margin:2px 0 0}.project-code-format-options strong,.project-code-format-options small{display:block}.project-code-format-options small{margin-top:5px;color:#61798b;line-height:1.45}.project-code-warning{margin:13px 0 0;padding:11px 13px;border-radius:9px;background:#fff4d8;color:#795300;font-size:.78rem;line-height:1.45}.project-duplicate-button,.project-download-button{display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;border:1px solid #bfd4e2;border-radius:8px;background:#eef6fa;color:#1d638f;font-size:.7rem;font-weight:900;text-decoration:none}.project-duplicate-button{background:#f5f1ff;color:#5a438d}.project-list-row{grid-template-columns:42px minmax(180px,1fr) auto 110px auto auto 24px!important}.key-notes-button{border:1px solid #c7d7e2!important;background:#f5f8fa!important;color:#264f6d!important}.key-notes-button.has-notes{border-color:#94c6aa!important;background:#edf8f1!important;color:#277048!important}.key-notes-dialog,.unsaved-changes-dialog{width:min(92vw,640px);padding:26px;border:0;border-radius:18px;box-shadow:0 30px 100px rgba(8,28,43,.38)}.key-notes-dialog::backdrop,.unsaved-changes-dialog::backdrop{background:rgba(8,27,42,.68);backdrop-filter:blur(4px)}.key-notes-dialog form{display:grid;gap:13px;margin-top:18px}.key-notes-dialog textarea{min-height:210px;resize:vertical}.key-notes-readonly{min-height:150px;max-height:320px;overflow:auto;padding:16px;border:1px solid #d5e1e9;border-radius:11px;background:#f7fafc;color:#314e63;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.key-notes-dialog form>small{color:#64798a;line-height:1.5}.key-notes-actions,.unsaved-changes-actions{display:flex;justify-content:flex-end;gap:10px}.key-notes-actions button,.unsaved-changes-actions button{margin:0}.unsaved-changes-dialog{text-align:center}.unsaved-changes-dialog p{color:#607688}.unsaved-changes-dialog .bitting-warning-icon{margin:0 auto}.unsaved-changes-actions{margin-top:20px}.unsaved-changes-actions .danger{background:#a63b3b;color:#fff}
@media(max-width:850px){.project-list-row{grid-template-columns:42px minmax(150px,1fr) auto auto auto 24px!important}.project-updated{display:none}}
@media(max-width:620px){.project-code-format-options{grid-template-columns:1fr}.project-list-row{grid-template-columns:38px minmax(0,1fr) auto!important}.project-duplicate-button,.project-download-button{grid-column:2;justify-self:start}.project-arrow{grid-column:3;grid-row:1/5}.key-notes-actions,.unsaved-changes-actions{align-items:stretch;flex-direction:column}.key-notes-actions button,.unsaved-changes-actions button{width:100%}}

/* LOCKLOGIX PROJECT HEADER BUTTON SIZE FIX 20260916 */
.saas-ui .project-page-head .project-actions>a.button,
.saas-ui .project-page-head .project-actions>form>button.danger{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:auto;
  height:44px;
  min-height:44px;
  margin:0;
  padding:0 18px;
  border-radius:9px;
  font-size:.82rem;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
.saas-ui .project-page-head .project-actions>form{flex:0 0 auto;margin:0}
