:root{--g:#0f7468;--g2:#0a5c54;--dark:#102f33;--text:#1f2d2f;--muted:#6b7c80;--border:#dbe5e3;--bg:#f6f9f8}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}.portal{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:var(--dark);color:#fff;padding:26px 18px;display:flex;flex-direction:column;gap:24px}.brand{font-weight:900;font-size:24px}.brand span{color:#26c4a7}.nav{display:grid;grid-gap:6px;gap:6px}.nav a{padding:12px 14px;border-radius:10px;color:#d9e8e6;font-weight:700}.nav a:hover{background:#17494b}.main{min-width:0}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 30px}.content{padding:30px;max-width:1400px}.page-title{font-size:30px;margin:0}.muted,.page-sub{color:var(--muted)}.grid{display:grid;grid-gap:18px;gap:18px}.stats{grid-template-columns:repeat(4,1fr);margin-top:24px}.company-list{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px;box-shadow:0 5px 20px rgba(19,52,54,.04)}.stat-label{font-size:13px;color:var(--muted);font-weight:700}.stat-value{font-size:30px;font-weight:900;margin-top:8px;color:var(--g)}.section{margin-top:26px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.btn{display:inline-flex;border:0;border-radius:11px;padding:11px 15px;font-weight:800;cursor:pointer}.btn-primary{background:var(--g);color:#fff}.btn-light{background:#eef3f2}.badge{display:inline-flex;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.badge-green{background:#e8f6f2;color:#0b6b60}.badge-orange{background:#fff0df;color:#ad5b00}.badge-gray{background:#eef2f1;color:#61706e}.badge-red{background:#ffe7e7;color:#a62424}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.tabs a{padding:9px 12px;background:#fff;border:1px solid var(--border);border-radius:10px;font-weight:700}.tabs a.active{background:var(--g);color:#fff}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:14px 12px;border-bottom:1px solid #edf1f0;text-align:left;font-size:14px}.table th{font-size:12px;color:var(--muted);text-transform:uppercase}.kv{display:grid;grid-template-columns:180px 1fr;grid-gap:12px 18px;gap:12px 18px}.notice{padding:14px;background:#fff7e9;border:1px solid #f3d9a5;border-radius:12px;color:#8c5a06}.empty{text-align:center;padding:30px;color:var(--muted)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#0c4f49,#12323a)}.auth-card{width:min(460px,100%);background:#fff;padding:34px;border-radius:22px}.field{display:grid;grid-gap:7px;gap:7px;margin:18px 0}.field input{padding:13px;border:1px solid var(--border);border-radius:12px}.sidebar-footer{margin-top:auto;color:#a9c5c2;font-size:13px}@media(max-width:760px){.portal{display:block}.sidebar{display:none}.content{padding:20px 16px}.company-list,.stats{grid-template-columns:1fr}}.nav-divider{height:1px;background:rgba(255,255,255,.12);margin:8px 10px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;max-width:1000px}.form-message{margin:12px 0 0;font-weight:700;color:var(--green)}@media(max-width:860px){.settings-grid{grid-template-columns:1fr}}.company-detail-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}.service-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:16px}.service-meta.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.service-meta>div{background:#f6f9f8;border:1px solid var(--border);border-radius:12px;padding:10px 12px;display:grid;grid-gap:4px;gap:4px}.service-meta span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:800}.service-meta strong{font-size:13px;color:var(--dark)}.green{color:var(--g)}@media(max-width:980px){.company-detail-grid,.service-meta.compact{grid-template-columns:1fr}.service-meta{grid-template-columns:1fr 1fr}}@media(max-width:560px){.service-meta{grid-template-columns:1fr}}.service-meta-four{grid-template-columns:repeat(4,minmax(0,1fr))}.service-address-box{margin-top:16px;padding:14px 15px;border:1px solid var(--border);background:#f7faf9;border-radius:12px;line-height:1.45}.service-address-box>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:800;margin-bottom:6px}.service-address-box>strong{display:block;color:var(--dark);margin-bottom:2px}.service-card-actions{gap:10px;margin-top:14px}.service-cancel-wrap,.service-card-actions{display:flex;align-items:center;flex-wrap:wrap}.service-cancel-wrap{gap:8px}.btn-danger-light{background:#fff0f0;color:#a62424;border:1px solid #f1cccc}.btn-danger-light:hover{background:#ffe7e7}.btn:disabled{opacity:.6;cursor:not-allowed}.service-action-message{font-size:12px;color:var(--muted);font-weight:700}.account-settings-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.settings-card{min-width:0}.settings-card-wide{grid-row:span 2}.settings-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:8px}.settings-card-head h2{margin:0 0 6px}.settings-card-head p{margin:0}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 16px;gap:0 16px}.field-span-2{grid-column:1/-1}.field span{font-size:13px;font-weight:800;color:var(--dark)}.field input{width:100%;background:#fff;color:var(--text)}.form-message.error{color:#a62424}.payment-method-list{display:grid;grid-gap:10px;gap:10px;margin-top:16px}.payment-method-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:13px}.payment-method-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.payment-empty{padding:20px 0}.notice+.service-card-actions{margin-top:14px}@media(max-width:1100px){.service-meta-four{grid-template-columns:repeat(2,minmax(0,1fr))}.account-settings-grid{grid-template-columns:1fr}.settings-card-wide{grid-row:auto}}@media(max-width:620px){.form-grid-2,.service-meta-four{grid-template-columns:1fr}.field-span-2{grid-column:auto}.payment-method-row{align-items:flex-start;flex-direction:column}.payment-method-actions{justify-content:flex-start}}.form-message{color:var(--g)}.services-list-grid{grid-template-columns:repeat(auto-fit,minmax(460px,560px));justify-content:start;align-items:start;gap:22px}.services-list-grid .card{width:100%;min-width:0;padding:24px;border-radius:18px;box-shadow:0 8px 24px rgba(19,52,54,.06)}.services-list-grid .card h3{margin:18px 0 8px;font-size:19px;line-height:1.3}.services-list-grid .card p{margin:8px 0;line-height:1.5}.services-list-grid .service-meta{margin-top:18px;gap:10px}.services-list-grid .service-meta>div{min-height:72px;padding:11px 12px;display:flex;flex-direction:column;justify-content:center}.services-list-grid .service-meta span{font-size:10px;line-height:1.2;margin-bottom:5px}.services-list-grid .service-meta strong{font-size:13px;line-height:1.35;word-break:normal;overflow-wrap:normal}.services-list-grid .service-meta.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.services-list-grid .service-meta-four{grid-template-columns:repeat(4,minmax(0,1fr))}.services-list-grid .service-card-actions{margin-top:18px;gap:10px}.services-list-grid .service-cancel-wrap .btn,.services-list-grid .service-card-actions .btn{min-height:42px;padding:10px 15px;justify-content:center}.services-list-grid .btn-light{border:1px solid var(--border);background:#f1f6f5}.services-list-grid .btn-light:hover{background:#e7f0ee}.services-list-grid .btn-danger-light{background:#fff5f5;border:1px solid #efc5c5}.services-list-grid .btn-danger-light:hover{background:#ffeaea}.services-list-grid .service-address-box{margin-top:18px}.section>h2{margin-bottom:16px}@media(max-width:1150px){.services-list-grid{grid-template-columns:minmax(0,560px)}}@media(max-width:650px){.services-list-grid{grid-template-columns:1fr}.services-list-grid .service-meta-four,.services-list-grid .service-meta.compact{grid-template-columns:1fr 1fr}}@media(max-width:430px){.services-list-grid .service-meta-four,.services-list-grid .service-meta.compact{grid-template-columns:1fr}}.company-services-ra-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important;max-width:1050px}.company-services-ra-grid .card{padding:24px!important;border-radius:18px!important;box-shadow:0 8px 24px rgba(19,52,54,.06)!important}.company-services-ra-grid .service-meta-four{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.company-services-ra-grid .service-meta-four>div{min-width:0;min-height:78px;padding:12px 10px!important;display:flex;flex-direction:column;justify-content:center}.company-services-ra-grid .service-meta-four span{font-size:10px;line-height:1.2}.company-services-ra-grid .service-meta-four strong{font-size:14px;line-height:1.35;white-space:normal;word-break:normal}.company-services-ra-grid .service-card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.company-services-ra-grid .service-card-actions .btn{min-height:42px;padding:10px 15px}.company-services-ra-grid .notice{margin-top:14px;padding:14px 16px;border-radius:12px}@media(max-width:900px){.company-services-ra-grid{grid-template-columns:1fr!important}}@media(max-width:520px){.company-services-ra-grid .service-meta-four{grid-template-columns:1fr 1fr!important}}.stat-card-link{position:relative;display:block;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.stat-card-link:hover{transform:translateY(-2px);border-color:#bfd8d3;box-shadow:0 10px 28px rgba(19,52,54,.08)}.stat-card-action{display:block;margin-top:10px;font-size:11px;font-weight:800;color:var(--g);opacity:0;transform:translateY(2px);transition:opacity .18s ease,transform .18s ease}.stat-card-link:focus-visible .stat-card-action,.stat-card-link:hover .stat-card-action{opacity:1;transform:none}.stat-card-link:focus-visible{outline:3px solid rgba(15,116,104,.18);outline-offset:2px}.service-filter-banner{margin-top:22px;padding:14px 16px;border:1px solid #cfe2de;background:#f0f8f6;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:16px}.service-filter-banner>div{display:grid;grid-gap:4px;gap:4px}.service-filter-banner strong{color:var(--dark);font-size:15px}.service-filter-banner span{color:var(--muted);font-size:13px;line-height:1.45}.service-cancel-manage-wrap{width:100%;align-items:flex-start}.cancellation-panel{width:100%;flex:1 0 100%;margin-top:2px;padding:14px;border:1px solid #efd8b8;background:#fffaf3;border-radius:12px}.cancellation-panel-title{font-size:13px;font-weight:900;color:#8a4d00}.cancellation-panel p{font-size:12px;margin:5px 0 10px}.cancellation-reason-field{display:grid;grid-gap:6px;gap:6px}.cancellation-reason-field>span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:800}.cancellation-reason-field textarea{width:100%;resize:vertical;min-height:78px;border:1px solid var(--border);border-radius:10px;padding:10px 11px;font:inherit;color:var(--text);background:#fff;outline:none}.cancellation-reason-field textarea:focus{border-color:#8fc9bf;box-shadow:0 0 0 3px rgba(15,116,104,.08)}.cancellation-panel-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.portal-route-transition{animation:portalRouteIn .22s ease-out both}.portal-loading-content{position:relative;min-height:360px}.portal-route-progress{position:fixed;left:260px;right:0;top:76px;height:3px;overflow:hidden;background:rgba(15,116,104,.08);z-index:40}.portal-route-progress span{display:block;width:35%;height:100%;background:var(--g);border-radius:999px;animation:portalProgress 1s ease-in-out infinite}.portal-loading-card,.portal-loading-subtitle,.portal-loading-title{background:linear-gradient(90deg,#edf3f2 20%,#f8fbfa 40%,#edf3f2 60%);background-size:220% 100%;animation:portalShimmer 1.25s linear infinite}.portal-loading-title{width:min(330px,70%);height:34px;border-radius:9px;margin-top:2px}.portal-loading-subtitle{width:min(520px,90%);height:16px;border-radius:7px;margin-top:14px}.portal-loading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px;margin-top:30px}.portal-loading-card{height:150px;border:1px solid var(--border);border-radius:18px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@keyframes portalRouteIn{0%{opacity:.72;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes portalProgress{0%{transform:translateX(-120%)}50%{transform:translateX(140%)}to{transform:translateX(330%)}}@keyframes portalShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(max-width:760px){.portal-route-progress{left:0;top:0}.portal-loading-grid{grid-template-columns:1fr}.service-filter-banner{align-items:flex-start;flex-direction:column}.stat-card-action{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.portal-loading-card,.portal-loading-subtitle,.portal-loading-title,.portal-route-progress span,.portal-route-transition{animation:none!important}.stat-card-link{transition:none!important}}