.ovps-customer-shell{max-width:1380px;margin:0 auto;padding:6px 24px 50px;display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;box-sizing:border-box}.ovps-customer-sidebar{background:#003f3a;color:#fff;border-radius:24px;padding:28px 24px;box-shadow:0 12px 30px rgba(0,0,0,.16);align-self:start;min-height:730px}.ovps-brand{font-size:25px;font-weight:700;margin-bottom:28px}.ovps-user-card{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:12px}.ovps-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#64c5ad;color:#fff;font-weight:700}.ovps-user-card strong,.ovps-user-card span{display:block}.ovps-user-card span{font-size:12px;opacity:.7;margin-top:4px}.ovps-nav-title{font-size:12px;letter-spacing:1px;font-weight:700;opacity:.65;margin:32px 0 12px}.ovps-nav a{display:block;color:#fff;text-decoration:none;padding:12px 10px;border-radius:10px;margin:3px 0;font-size:16px}.ovps-nav a:hover,.ovps-nav a.is-active{background:rgba(255,255,255,.10)}.ovps-logout{display:block;margin-top:28px;background:#ef3838;color:#fff!important;text-decoration:none;text-align:center;padding:13px;border-radius:12px;font-weight:700}.ovps-customer-main{min-width:0}.ovps-topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:8px 0 28px}.ovps-eyebrow{font-size:11px;letter-spacing:1.5px;color:#486c69;font-weight:700}.ovps-topbar h1{font-size:42px;line-height:1.05;margin:10px 0 5px}.ovps-topbar p{margin:0;color:#55716e;font-size:18px}.ovps-shop-button,.ovps-inline-button{display:inline-block;background:#003f3a;color:#fff!important;text-decoration:none;padding:13px 24px;border-radius:12px;font-weight:700;border:0;cursor:pointer}.ovps-welcome-card,.ovps-panel{background:#fffdf7;border:1px solid #e7e2d5;border-radius:22px;padding:32px;box-shadow:0 8px 25px rgba(0,0,0,.06);margin-bottom:24px}.ovps-welcome-card h2,.ovps-panel h2{font-size:28px;margin:12px 0 8px}.ovps-welcome-card p,.ovps-panel p{color:#657b78}.ovps-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ovps-card{background:#fff;border:1px solid #ebe8df;border-radius:18px;padding:26px;text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,.05);transition:.15s}.ovps-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.08)}.ovps-card strong,.ovps-card span{display:block}.ovps-card strong{font-size:18px;color:#111}.ovps-card span{margin-top:12px;color:#70817f;font-size:14px}.ovps-table-wrap{overflow:auto}.ovps-table{width:100%;border-collapse:collapse}.ovps-table th,.ovps-table td{padding:14px 12px;border-bottom:1px solid #e7e2d5;text-align:left}.ovps-table a{color:#006d66;font-weight:700}.ovps-panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.ovps-panel-head a{color:#006d66;text-decoration:none}.ovps-order-items>div{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #e7e2d5}.ovps-total{font-size:18px!important;font-weight:700}.ovps-profile-form{display:grid;gap:16px;max-width:650px}.ovps-profile-form label{font-weight:600}.ovps-profile-form input{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #d9d7ce;border-radius:10px;box-sizing:border-box}.ovps-success{background:#e7f8ef;color:#17633e;padding:12px 14px;border-radius:10px;margin-bottom:18px}.ovps-note{font-size:14px}.ovps-login-required{padding:40px}.ovps-login-required a{color:#006d66}@media(max-width:900px){.ovps-customer-shell{grid-template-columns:1fr}.ovps-customer-sidebar{min-height:auto}.ovps-grid{grid-template-columns:1fr}.ovps-topbar{align-items:flex-start}.ovps-topbar h1{font-size:34px}}@media(max-width:560px){.ovps-customer-shell{padding:10px}.ovps-customer-sidebar{padding:20px}.ovps-topbar{flex-direction:column}.ovps-shop-button{width:100%;text-align:center}.ovps-welcome-card,.ovps-panel{padding:22px}}

/* v0.4.0 service details */
.ovps-service-card{margin-top:22px;background:#fff;border:1px solid #e4e2d7;border-radius:20px;padding:26px;box-shadow:0 10px 28px rgba(0,0,0,.05)}
.ovps-service-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.ovps-service-card-head h3{margin:4px 0 0;font-size:26px;color:#001f1c}
.ovps-service-badge{background:#e7f7ef;color:#087443;border-radius:999px;padding:7px 12px;font-weight:700;font-size:12px}
.ovps-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.ovps-service-row{background:#f8f8f2;border:1px solid #e8e7df;border-radius:12px;padding:12px 14px;min-width:0}
.ovps-service-row>span{display:block;color:#657079;font-size:12px;margin-bottom:5px}
.ovps-service-row strong{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#10231f;word-break:break-word}
.ovps-service-value,.ovps-secret{word-break:break-all}
.ovps-copy-value,.ovps-copy-secret{border:1px solid #cdd7d2;background:#fff;border-radius:7px;padding:4px 8px;font-size:11px;cursor:pointer;color:#004c46}
.ovps-service-note{margin:16px 0 0;color:#718087;font-size:12px}
.ovps-item-meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:9px;color:#68767b;font-size:12px}
.ovps-item-meta span{background:#f4f5f0;border-radius:7px;padding:4px 7px}
.ovps-admin-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}
.ovps-admin-field{margin:0 0 10px!important}
.ovps-admin-field label{display:block!important;font-weight:600;margin-bottom:4px}
.ovps-admin-field input,.ovps-admin-field select,.ovps-admin-field textarea{width:100%}
@media(max-width:700px){.ovps-service-grid,.ovps-admin-service-grid{grid-template-columns:1fr}}

/* v0.4.2 — approved OceanVPS order/service card layout */
.ovps-order-container{background:#fff;border:1px solid #e7e3da;border-radius:22px;padding:36px;box-shadow:0 8px 25px rgba(0,0,0,.06)}
.ovps-order-heading{border-bottom:1px solid #e8e5de;padding-bottom:20px;margin-bottom:0}
.ovps-order-heading h2{font-size:30px;margin:0 0 8px;color:#101a18}
.ovps-order-heading a{color:#006d66;text-decoration:none;font-weight:600}
.ovps-order-status{margin:0;color:#71817e!important;font-size:16px}
.ovps-order-status strong{color:#176b4e}
.ovps-order-summary{padding-top:0}
.ovps-order-product-row{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 0 18px;border-bottom:1px solid #e8e5de}
.ovps-order-product-info{display:flex;flex-direction:column;gap:4px;min-width:0}
.ovps-order-product-info strong{font-size:18px;line-height:1.35;color:#111b19}
.ovps-order-product-info span{color:#7a8784}
.ovps-order-item-total{font-size:18px;font-weight:700;color:#006d66;white-space:nowrap}
.ovps-service-card{margin:20px 0 0!important;padding:0!important;background:#fff!important;border:1px solid #ccd8d4!important;border-radius:15px!important;overflow:hidden;box-shadow:none!important}
.ovps-service-card-header{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#00544e;color:#fff;padding:13px 18px}
.ovps-service-title{display:flex;align-items:center;gap:12px;font-size:17px}
.ovps-service-icon{font-size:22px;line-height:1}
.ovps-service-meta{display:flex;align-items:center;gap:20px;font-size:14px}
.ovps-status{display:inline-flex;align-items:center;gap:5px;padding:7px 13px;border-radius:999px;font-weight:700;background:#50b946;color:#fff}
.ovps-status-pending{background:#f2a33b}.ovps-status-expired{background:#c77b20}.ovps-status-cancelled{background:#e24b4b}
.ovps-expiry{white-space:nowrap}
.ovps-credential-list{padding:4px}
.ovps-credential-row{min-height:50px;display:grid;grid-template-columns:250px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid rgba(0,0,0,.08);border-radius:10px;margin:4px 0;padding:7px 10px}
.ovps-row-ip{background:#edf8e8}.ovps-row-username{background:#edf4fb}.ovps-row-password{background:#fff5d8}.ovps-row-port{background:#f2f3f2}
.ovps-row-label{display:flex;align-items:center;gap:10px;font-weight:700;color:#16201e;font-size:14px}
.ovps-row-icon{font-size:20px;min-width:22px;text-align:center;color:#127a67}
.ovps-row-value{font-size:15px;color:#1d2a27;word-break:break-word;min-width:0}
.ovps-copy,.ovps-show-password,.ovps-copy-password{border:1px solid #aebfba;background:#fff;color:#14564f;border-radius:8px;padding:8px 18px;cursor:pointer;font-weight:600;white-space:nowrap}
.ovps-password-actions{display:flex;gap:8px;justify-content:flex-end}
.ovps-control-panel-wrap{padding:8px 0 6px;text-align:center}
.ovps-control-panel{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:320px;max-width:100%;background:#00544e;color:#fff!important;text-decoration:none;border-radius:9px;padding:11px 22px;font-weight:700}
.ovps-empty-service{padding:22px;color:#6e7d79}
.ovps-order-page .ovps-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e8e5de;margin-top:22px;padding-top:18px;color:#55716e}
.ovps-order-page .ovps-total strong{color:#006d66}
@media(max-width:900px){.ovps-order-container{padding:24px}.ovps-credential-row{grid-template-columns:190px minmax(0,1fr) auto}.ovps-service-meta{gap:10px}}
@media(max-width:680px){.ovps-order-product-row{flex-direction:column}.ovps-order-item-total{align-self:flex-start}.ovps-service-card-header{align-items:flex-start;flex-direction:column}.ovps-service-meta{width:100%;justify-content:space-between}.ovps-credential-row{grid-template-columns:1fr auto}.ovps-row-label{grid-column:1}.ovps-row-value{grid-column:1}.ovps-credential-row>.ovps-copy,.ovps-password-actions{grid-column:2;grid-row:1 / span 2}.ovps-control-panel{min-width:0;width:100%;box-sizing:border-box}}

/* v0.4.3 — dynamic expiry progress */
.ovps-expiry-progress{margin:14px 10px 8px;padding:14px 16px;background:#f8faf8;border:1px solid #dfe8e4;border-radius:12px}.ovps-expiry-progress-head,.ovps-expiry-progress-foot{display:flex;justify-content:space-between;align-items:center;gap:12px}.ovps-expiry-progress-head{font-size:12px;color:#4e6560}.ovps-expiry-progress-head span{font-weight:800}.ovps-progress-track{height:8px;margin:10px 0;border-radius:999px;background:#e5ebe8;overflow:hidden}.ovps-progress-fill{display:block;height:100%;border-radius:999px;transition:width .3s ease}.ovps-expiry-green .ovps-progress-fill{background:#36a269}.ovps-expiry-amber .ovps-progress-fill{background:#d89b2b}.ovps-expiry-warning .ovps-progress-fill,.ovps-expiry-danger .ovps-progress-fill{background:#e24b4b}.ovps-expiry-expired{background:#fff1f1;border-color:#f0b8b8}.ovps-expiry-expired .ovps-progress-fill{background:#d92f2f}.ovps-expiry-progress-foot{font-size:11px;color:#657774}.ovps-expiry-danger .ovps-expiry-progress-head span,.ovps-expiry-expired .ovps-expiry-progress-head span,.ovps-expiry-expired .ovps-expiry-progress-foot span:first-child{color:#c52e2e}.ovps-copy.is-disabled,.ovps-show-password.is-disabled,.ovps-copy-password.is-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.ovps-expiry-progress + .ovps-control-panel-wrap{margin-top:2px}@media(max-width:680px){.ovps-expiry-progress-head,.ovps-expiry-progress-foot{align-items:flex-start;flex-direction:column;gap:5px}.ovps-expiry-progress{margin-left:4px;margin-right:4px}}

/* v0.4.4 — professional OceanVPS customer dashboard */
.ovps-customer-shell{max-width:1440px;margin:0 auto;padding:24px 28px 40px;display:grid;grid-template-columns:286px minmax(0,1fr);gap:28px;background:#fff}
.ovps-customer-sidebar{position:sticky;top:20px;align-self:start;min-height:calc(100vh - 80px);box-sizing:border-box;padding:28px 24px;background:linear-gradient(180deg,#004d48 0%,#003c38 100%);border-radius:24px;color:#fff;box-shadow:0 18px 45px rgba(0,61,56,.16);display:flex;flex-direction:column}
.ovps-brand{display:flex;align-items:center;gap:10px;font-size:25px;font-weight:800;letter-spacing:-.5px;margin:0 0 32px;color:#fff}.ovps-brand-mark{font-size:34px;line-height:1;color:#4bd4c5;transform:rotate(-8deg)}
.ovps-user-card{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);border-radius:15px;margin-bottom:32px}.ovps-user-card strong{display:block;font-size:15px;color:#fff}.ovps-user-card span{display:block;font-size:12px;color:#b9d3d0;margin-top:4px}.ovps-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#45cbb9;color:#fff;font-weight:800;font-size:18px;flex:none}
.ovps-nav-title{font-size:11px;letter-spacing:1.3px;font-weight:800;color:#8fe1d7;margin-bottom:10px}.ovps-nav{display:grid;gap:5px}.ovps-nav a{display:flex;align-items:center;gap:13px;color:#edf8f7;text-decoration:none;padding:12px 13px;border-radius:11px;font-size:14px;font-weight:600;transition:.18s}.ovps-nav a:hover{background:rgba(255,255,255,.08);transform:translateX(2px)}.ovps-nav a.is-active{background:rgba(62,205,190,.18);box-shadow:inset 3px 0 #42cbbb;color:#fff}.ovps-nav-icon{width:21px;text-align:center;font-size:20px;color:#a9e6de}.ovps-sidebar-bottom{margin-top:auto}.ovps-logout{display:flex;align-items:center;justify-content:center;gap:8px;background:#ff3b40;color:#fff!important;text-decoration:none;border-radius:11px;padding:13px 16px;font-weight:800;margin-top:28px}.ovps-logout:hover{background:#ec2d33}.ovps-help-card{margin-top:20px;padding:18px;border-radius:15px;background:rgba(19,115,108,.5);border:1px solid rgba(105,222,210,.2)}.ovps-help-card strong{font-size:16px}.ovps-help-card p{color:#c4dedb;font-size:12px;line-height:1.55;margin:8px 0 14px}.ovps-help-card a{display:block;text-align:center;background:#14a99d;color:#fff;text-decoration:none;border-radius:9px;padding:10px 8px;font-size:12px;font-weight:800}
.ovps-customer-main{min-width:0;padding:0 2px}.ovps-dashboard-header{height:52px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eef2f0;margin-bottom:24px}.ovps-breadcrumb{display:flex;align-items:center;gap:10px;color:#71817e;font-size:13px}.ovps-breadcrumb strong{color:#006d66}.ovps-breadcrumb b{color:#a5b2af;font-size:18px}.ovps-header-actions{display:flex;align-items:center;gap:22px;color:#29423e}.ovps-notification{position:relative;font-size:22px}.ovps-notification i{position:absolute;top:-8px;right:-9px;min-width:16px;height:16px;border-radius:99px;background:#e7383e;color:#fff;font-style:normal;font-size:9px;display:grid;place-items:center}.ovps-header-user{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700}.ovps-mini-avatar{width:32px;height:32px;border-radius:50%;background:#35bcae;color:#fff;display:grid;place-items:center;font-weight:800}.ovps-header-user b{font-size:15px;color:#72817e}
.ovps-topbar{margin:0 0 28px}.ovps-topbar h1{font-size:43px;letter-spacing:-1.4px;margin:8px 0 5px;color:#071a18}.ovps-topbar p{font-size:16px;color:#5e7773}.ovps-wave{font-size:31px;vertical-align:middle}.ovps-shop-button{background:#006d66!important;border-radius:12px;padding:14px 22px;box-shadow:0 8px 18px rgba(0,109,102,.16)}
.ovps-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.ovps-stat-card{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid #e5ece9;border-radius:16px;padding:18px;box-shadow:0 7px 22px rgba(0,55,51,.05);min-width:0}.ovps-stat-icon{width:48px;height:48px;display:grid;place-items:center;flex:none;border-radius:14px;background:#e5f6f3;color:#00796f;font-size:24px}.ovps-stat-content{min-width:0}.ovps-stat-content small{display:block;color:#647a77;font-size:12px}.ovps-stat-content strong{display:block;font-size:24px;line-height:1.15;color:#0c2926;margin:5px 0 8px}.ovps-stat-content a{font-size:12px;color:#008d83;text-decoration:none;font-weight:700}.ovps-stat-content a span{font-size:15px}
.ovps-welcome-card.ovps-hero-card{display:flex;justify-content:space-between;align-items:center;min-height:185px;padding:30px 38px;background:linear-gradient(115deg,#004f4a,#006b64)!important;border:0!important;border-radius:17px!important;box-shadow:0 14px 32px rgba(0,77,72,.14)!important;color:#fff;margin-bottom:22px;overflow:hidden;position:relative}.ovps-hero-card .ovps-eyebrow{color:#4bd1c4}.ovps-hero-card h2{font-size:31px;margin:12px 0 10px;color:#fff}.ovps-hero-card p{color:#d0e8e5;max-width:600px;margin:0;line-height:1.65}.ovps-hero-art{width:310px;height:150px;position:relative;flex:none}.ovps-server-stack{position:absolute;right:35px;top:30px;width:170px;display:grid;gap:7px}.ovps-server-stack i{height:22px;border-radius:5px;background:linear-gradient(90deg,#102b2a,#1e5450);border:1px solid #2eb6aa;box-shadow:0 4px 10px rgba(0,0,0,.18);position:relative}.ovps-server-stack i:after{content:'•••';position:absolute;right:8px;top:0;color:#39d7c7;letter-spacing:2px}.ovps-shield{position:absolute;right:0;bottom:8px;width:56px;height:64px;display:grid;place-items:center;color:#28d3c1;font-weight:900;font-size:29px;background:#0d3e3b;border:2px solid #28cfc0;border-radius:50% 50% 48% 48%;box-shadow:0 8px 20px rgba(0,0,0,.2)}
.ovps-grid.ovps-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ovps-card{display:flex;align-items:center;gap:15px;position:relative;min-height:104px;padding:18px 52px 18px 18px;border-radius:16px;background:#fff;border:1px solid #e5ece9;box-shadow:0 7px 22px rgba(0,55,51,.05);transition:.18s}.ovps-card:hover{transform:translateY(-3px);border-color:#b7ddd8;box-shadow:0 12px 28px rgba(0,55,51,.09)}.ovps-card-icon{width:48px;height:48px;display:grid;place-items:center;flex:none;border-radius:14px;background:#e7f6f4;color:#007b72;font-size:24px}.ovps-card strong{display:block;color:#122a27;font-size:16px}.ovps-card span{margin-top:6px;line-height:1.5;color:#6e817e;font-size:12px}.ovps-card-arrow{position:absolute;right:17px;bottom:17px;width:33px;height:33px;border:1px solid #27b6aa;border-radius:50%;display:grid;place-items:center;color:#007d73;font-size:18px}.ovps-benefits{display:grid;grid-template-columns:repeat(4,1fr);margin-top:20px;background:#fff;border:1px solid #e2ebe8;border-radius:15px;padding:15px 10px;box-shadow:0 6px 18px rgba(0,55,51,.04)}.ovps-benefit{display:flex;align-items:center;justify-content:center;gap:10px;padding:7px 15px;border-right:1px solid #e8eeec}.ovps-benefit:last-child{border-right:0}.ovps-benefit>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e9f7f4;color:#008a80;font-size:19px}.ovps-benefit strong,.ovps-benefit small{display:block}.ovps-benefit strong{font-size:13px;color:#17413c}.ovps-benefit small{font-size:11px;color:#758783;margin-top:3px}
@media(max-width:1100px){.ovps-customer-shell{grid-template-columns:240px minmax(0,1fr);gap:20px}.ovps-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ovps-grid.ovps-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.ovps-hero-art{width:230px}.ovps-topbar h1{font-size:38px}}
@media(max-width:800px){.ovps-customer-shell{display:block;padding:12px}.ovps-customer-sidebar{position:relative;top:auto;min-height:0;margin-bottom:18px}.ovps-help-card{display:none}.ovps-nav{grid-template-columns:repeat(2,1fr)}.ovps-sidebar-bottom{margin-top:10px}.ovps-dashboard-header{height:auto;padding-bottom:14px}.ovps-hero-art{display:none}.ovps-welcome-card.ovps-hero-card{padding:26px}.ovps-benefits{grid-template-columns:repeat(2,1fr)}.ovps-benefit:nth-child(2){border-right:0}.ovps-benefit:nth-child(-n+2){border-bottom:1px solid #e8eeec;padding-bottom:12px}.ovps-benefit:nth-child(n+3){padding-top:12px}}
@media(max-width:560px){.ovps-customer-shell{padding:8px}.ovps-customer-sidebar{padding:20px;border-radius:18px}.ovps-header-actions{display:none}.ovps-topbar{flex-direction:column;align-items:stretch;gap:18px}.ovps-topbar h1{font-size:34px}.ovps-shop-button{width:100%;text-align:center;box-sizing:border-box}.ovps-stat-grid,.ovps-grid.ovps-shortcuts,.ovps-benefits{grid-template-columns:1fr}.ovps-benefit{border-right:0!important;border-bottom:1px solid #e8eeec!important;padding:12px 8px!important}.ovps-benefit:last-child{border-bottom:0!important}.ovps-nav{grid-template-columns:1fr}.ovps-dashboard-header{margin-bottom:18px}}
/* v0.5.0 admin-controlled dashboard media */
.ovps-brand-logo{display:flex;align-items:center;min-height:42px;margin-bottom:28px}.ovps-brand-logo img{display:block;max-width:190px;max-height:52px;width:auto;height:auto;object-fit:contain}.ovps-hero-image{width:310px;height:150px;display:flex;align-items:center;justify-content:flex-end;flex:none}.ovps-hero-image img{display:block;max-width:100%;max-height:150px;width:auto;height:auto;object-fit:contain;border-radius:14px}.ovps-logout{white-space:normal}
@media(max-width:1100px){.ovps-hero-image{width:230px}.ovps-hero-image img{max-height:130px}}
@media(max-width:800px){.ovps-hero-image{display:none}}

/* v0.6.0 — Ultimate Membership Pro dashboard integration */
.ovps-membership-banner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:24px;margin:0 0 22px;padding:24px 26px;border-radius:18px;border:1px solid #dce9e5;box-shadow:0 10px 28px rgba(0,55,51,.06);overflow:hidden}
.ovps-membership-active{background:linear-gradient(110deg,#f3fbf8,#fff)}
.ovps-membership-promo{grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr) auto;background:linear-gradient(110deg,#fffdf7,#f4fbf8)}
.ovps-membership-banner-main{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:15px}
.ovps-membership-status-dot{color:#2ca56f;font-size:10px}
.ovps-membership-badge{display:inline-flex;align-items:center;gap:6px;background:#e7f8ef;color:#17633e;border:1px solid #bfe6d1;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800;letter-spacing:.6px;white-space:nowrap}
.ovps-membership-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#e7f6f4;font-size:25px}
.ovps-membership-eyebrow{display:block;color:#008a80;font-size:10px;letter-spacing:1.2px;font-weight:800}
.ovps-membership-banner h2{margin:5px 0 5px;font-size:21px;color:#102b27}
.ovps-membership-banner p{margin:0;color:#637773;font-size:13px;line-height:1.5}
.ovps-membership-benefit{min-width:170px;padding-left:20px;border-left:1px solid #dce8e4}
.ovps-membership-benefit strong{display:block;font-size:25px;color:#006d66}
.ovps-membership-benefit span,.ovps-membership-benefit small{display:block;color:#687b77;font-size:11px}
.ovps-membership-benefit small{margin-top:6px}
.ovps-membership-action{display:inline-flex;align-items:center;justify-content:center;background:#006d66;color:#fff!important;text-decoration:none!important;border-radius:10px;padding:12px 16px;font-size:12px;font-weight:800;white-space:nowrap}
.ovps-membership-action:hover{background:#00544e}
.ovps-membership-promo-head h2{font-size:22px;margin:7px 0 5px}
.ovps-membership-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.ovps-membership-mini-plan{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid #e1ebe7;border-radius:11px;background:#fff}
.ovps-membership-mini-icon{font-size:19px}
.ovps-membership-mini-plan strong,.ovps-membership-mini-plan span{display:block}
.ovps-membership-mini-plan strong{font-size:11px;color:#173c36}
.ovps-membership-mini-plan div span{font-size:11px;color:#008a80;font-weight:800;margin-top:3px}
.ovps-membership-page-panel{min-height:300px}
.ovps-membership-page-status{text-align:center;max-width:720px;margin:0 auto;padding:25px}
.ovps-membership-page-icon{width:70px;height:70px;margin:0 auto 14px;display:grid;place-items:center;background:#e7f6f4;border-radius:20px;font-size:34px}
.ovps-membership-page-status h2{font-size:30px;margin:10px 0}
.ovps-membership-page-status p{margin:5px 0 18px}
.ovps-membership-page-discount strong{display:block;font-size:36px;color:#006d66}
.ovps-membership-page-discount span{color:#657b78;font-size:13px}
.ovps-membership-validity{font-weight:700!important;color:#315b54!important}
.ovps-membership-page-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}
.ovps-membership-page-plans>div{padding:16px;border:1px solid #e2ebe8;border-radius:13px;background:#f8fbfa}
.ovps-membership-page-plans span{font-size:23px}.ovps-membership-page-plans strong{display:block;margin:6px 0;color:#183f38}.ovps-membership-page-plans b{color:#008a80}
@media(max-width:1050px){.ovps-membership-banner,.ovps-membership-promo{grid-template-columns:1fr}.ovps-membership-benefit{border-left:0;border-top:1px solid #dce8e4;padding:14px 0 0}.ovps-membership-action{justify-self:start}.ovps-membership-banner-main{grid-template-columns:auto auto 1fr}}
@media(max-width:680px){.ovps-membership-banner-main{grid-template-columns:auto 1fr}.ovps-membership-banner-main .ovps-membership-badge{grid-column:1/-1;justify-self:start}.ovps-membership-plans,.ovps-membership-page-plans{grid-template-columns:1fr}.ovps-membership-banner{padding:18px}.ovps-membership-page-status{padding:10px}}


/* OceanVPS branded login / registration */
.ovps-auth-page{max-width:760px;margin:35px auto 55px;padding:0 18px;box-sizing:border-box}
.ovps-auth-card{background:#fff;border:1px solid #e5ebe7;border-radius:24px;padding:34px 38px;box-shadow:0 18px 45px rgba(0,63,58,.10);box-sizing:border-box}
.ovps-auth-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:25px;color:#003f3a}
.ovps-auth-logo{width:48px;height:48px;border-radius:14px;background:#003f3a;color:#fff;display:grid;place-items:center;font-size:28px;font-weight:800}
.ovps-auth-brand strong,.ovps-auth-brand small{display:block}
.ovps-auth-brand strong{font-size:25px;line-height:1.1}
.ovps-auth-brand small{color:#6d7d7a;font-size:12px;margin-top:4px}
.ovps-auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #e4e9e7;margin:0 0 28px}
.ovps-auth-tabs a{padding:13px 10px;text-align:center;text-decoration:none;color:#71817e;font-weight:800;font-size:13px;letter-spacing:.6px;border-bottom:3px solid transparent;margin-bottom:-1px}
.ovps-auth-tabs a:hover,.ovps-auth-tabs a.is-active{color:#003f3a;border-bottom-color:#0b8a67}
.ovps-auth-heading{text-align:center;margin-bottom:24px}
.ovps-auth-heading h2{margin:0 0 8px;color:#123d39;font-size:29px;line-height:1.2}
.ovps-auth-heading p{margin:0;color:#71817e;font-size:14px;line-height:1.6}
.ovps-auth-alert{border-radius:12px;padding:12px 14px;margin:0 0 18px;font-size:14px;line-height:1.5}
.ovps-auth-error{background:#fff1f1;border:1px solid #f1cccc;color:#a32020}
.ovps-auth-success{background:#edf9f2;border:1px solid #c9e9d4;color:#16713d}
.ovps-auth-form{display:grid;gap:17px}
.ovps-auth-form>label{display:block;color:#294b48;font-size:13px;font-weight:700}
.ovps-auth-form label>span:first-of-type{color:#c52d2d}
.ovps-auth-form input[type=text],.ovps-auth-form input[type=email],.ovps-auth-form input[type=password]{display:block;width:100%;height:48px;margin-top:8px;padding:0 14px;border:1px solid #d7e0dd;border-radius:10px;background:#fff;color:#183f3b;font-size:15px;box-sizing:border-box;outline:none}
.ovps-auth-form input:focus{border-color:#078263;box-shadow:0 0 0 3px rgba(7,130,99,.10)}
.ovps-password-wrap{display:block;position:relative}
.ovps-password-wrap input{padding-right:48px!important}
.ovps-password-toggle{position:absolute;right:8px;top:16px;width:32px;height:32px;border:0;background:transparent;color:#71817e;cursor:pointer;padding:0}
.ovps-auth-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;margin-top:-2px}
.ovps-auth-row a,.ovps-auth-bottom a{color:#006d66;text-decoration:none;font-weight:700}
.ovps-auth-row a:hover,.ovps-auth-bottom a:hover{text-decoration:underline}
.ovps-check{display:flex!important;align-items:center;gap:7px;color:#657571!important;font-weight:500!important}
.ovps-check input{margin:0}
.ovps-auth-submit{width:100%;min-height:50px;border:0;border-radius:11px;background:#006d4f;color:#fff;font-size:14px;font-weight:800;letter-spacing:.3px;cursor:pointer;box-shadow:0 7px 16px rgba(0,109,79,.18);transition:transform .15s,box-shadow .15s}
.ovps-auth-submit:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(0,109,79,.22)}
.ovps-auth-bottom{text-align:center;margin:21px 0 0;color:#71817e;font-size:13px}
@media(max-width:600px){
 .ovps-auth-page{margin:20px auto 35px;padding:0 12px}
 .ovps-auth-card{padding:25px 20px;border-radius:18px}
 .ovps-auth-heading h2{font-size:24px}
 .ovps-auth-row{align-items:flex-start;flex-direction:column}
}


/* v0.6.3 membership welcome block */
.ovps-membership-welcome{
    margin:0 0 14px;
    padding:16px 18px;
    border:1px solid rgba(11,128,93,.16);
    border-radius:14px;
    background:linear-gradient(135deg,rgba(237,252,246,.95),rgba(249,255,252,.98));
    display:flex;
    flex-direction:column;
    gap:5px;
}
.ovps-membership-welcome strong{
    color:#075c45;
    font-size:16px;
    line-height:1.35;
}
.ovps-membership-welcome span{
    color:#45635b;
    font-size:13px;
    line-height:1.55;
}
.ovps-membership-benefit span{
    line-height:1.45;
}
@media (max-width:700px){
    .ovps-membership-welcome{padding:14px 15px}
}

.ovps-service-membership{background:linear-gradient(135deg,#f5fbf9,#fff);border-color:#cfe5df}
.ovps-membership-order-card{padding:22px}
.ovps-membership-order-welcome{display:flex;gap:14px;align-items:center;padding:16px;border:1px solid #dbeae5;border-radius:14px;background:#fff}
.ovps-membership-order-icon{font-size:30px}
.ovps-membership-order-welcome strong{font-size:18px;color:#073f39}
.ovps-membership-order-welcome p{margin:4px 0 0;color:#61746f;font-size:13px}
.ovps-membership-order-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.ovps-membership-order-grid>div{padding:13px;border-radius:12px;background:#f3f8f6}
.ovps-membership-order-grid span{display:block;font-size:10px;letter-spacing:.7px;color:#748783;font-weight:800}
.ovps-membership-order-grid strong{display:block;margin-top:5px;color:#123e37}
.ovps-membership-order-note{margin-top:12px;padding:12px;border-radius:10px;background:#eaf8f0;color:#285e48;font-size:12px}
.ovps-membership-locked{opacity:.65;cursor:not-allowed!important;pointer-events:none}
@media(max-width:680px){.ovps-membership-order-grid{grid-template-columns:1fr}}

/* v0.6.6 — membership dashboard card layout + upgrade states */
.ovps-membership-active{display:block!important;padding:24px 26px!important}
.ovps-membership-banner-main{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:15px;padding-bottom:18px;border-bottom:1px solid #dce9e5}
.ovps-membership-title-block{min-width:0}
.ovps-membership-detail-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.8fr);gap:14px;margin-top:16px}
.ovps-membership-welcome{margin:0!important;min-width:0}
.ovps-membership-benefit{min-width:0!important;padding:16px 18px!important;border:1px solid #dce8e4!important;border-radius:14px;background:#fff}
.ovps-membership-benefit strong{font-size:24px!important}
.ovps-membership-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.ovps-membership-upgrade{display:inline-flex;align-items:center;justify-content:center;border:1px solid #006d66;color:#006d66!important;background:#fff;text-decoration:none!important;border-radius:10px;padding:11px 15px;font-size:12px;font-weight:800;white-space:nowrap}
.ovps-membership-max{display:inline-flex;align-items:center;border-radius:10px;padding:11px 15px;background:#e9f8ef;color:#17633e;font-size:12px;font-weight:800}
.ovps-membership-page-actions{margin-top:16px}
.ovps-membership-page-actions .ovps-inline-button{margin:0}
.ovps-membership-locked{display:inline-flex!important;align-items:center;justify-content:center;box-sizing:border-box;cursor:not-allowed!important;pointer-events:none!important}
@media(max-width:900px){.ovps-membership-detail-row{grid-template-columns:1fr}.ovps-membership-benefit{border-top:1px solid #dce8e4!important}}
@media(max-width:680px){.ovps-membership-active{padding:18px!important}.ovps-membership-banner-main{grid-template-columns:auto 1fr}.ovps-membership-banner-main .ovps-membership-badge{grid-column:1/-1}.ovps-membership-actions{align-items:stretch}.ovps-membership-action,.ovps-membership-upgrade,.ovps-membership-max{width:100%;box-sizing:border-box;text-align:center}}


/* v0.6.8 support ticket system */
.ovps-support-panel{padding:28px}.ovps-support-count{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#e8f7f2;color:#075e52;font-weight:700;font-size:13px}.ovps-support-alert{padding:12px 14px;border-radius:10px;margin:0 0 18px}.ovps-support-error{background:#fff0f0;color:#9d2525;border:1px solid #f0caca}.ovps-support-success{background:#e9f8ef;color:#17633e;border:1px solid #ccebd9}.ovps-support-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:22px}.ovps-support-list,.ovps-support-conversation{border:1px solid #e7e2d5;border-radius:16px;background:#fff;padding:18px}.ovps-support-list h3,.ovps-support-conversation h3,.ovps-support-new h3{margin:0 0 14px;color:#003f3a}.ovps-ticket-row{display:flex;justify-content:space-between;gap:10px;align-items:center;text-decoration:none;color:#111;padding:13px;border:1px solid #ece8df;border-radius:12px;margin:8px 0;background:#fff}.ovps-ticket-row:hover,.ovps-ticket-row.is-active{border-color:#7bb9ae;background:#f5fbf9}.ovps-ticket-row strong,.ovps-ticket-row small{display:block}.ovps-ticket-row small{margin-top:5px;color:#7a8885;font-size:11px}.ovps-ticket-row em{font-style:normal;font-size:11px;font-weight:700}.ovps-ticket-open{color:#087443}.ovps-ticket-pending{color:#9a6200}.ovps-ticket-closed{color:#777}.ovps-conversation-head{padding-bottom:14px;border-bottom:1px solid #e7e2d5}.ovps-conversation-head h3{margin-bottom:5px}.ovps-conversation-head span{font-size:12px;color:#6b7c79}.ovps-message-list{padding:16px 0;max-height:520px;overflow:auto}.ovps-message{max-width:82%;margin-bottom:14px;padding:13px 15px;border-radius:14px;border:1px solid #e5e5e5}.ovps-message.is-customer{margin-left:auto;background:#f2fbf8}.ovps-message.is-admin{margin-right:auto;background:#f4f7fb}.ovps-message-meta{display:flex;justify-content:space-between;gap:15px;font-size:12px;margin-bottom:7px}.ovps-message-meta span{color:#7b8583}.ovps-message-body{white-space:normal;line-height:1.55;color:#293735}.ovps-support-reply textarea,.ovps-support-new textarea,.ovps-support-new input{width:100%;box-sizing:border-box;border:1px solid #d9d7ce;border-radius:10px;padding:12px;margin:7px 0 14px;font:inherit}.ovps-support-reply button{margin-top:2px}.ovps-support-new label{display:block;font-weight:600}.ovps-support-closed,.ovps-support-empty{padding:15px;border-radius:10px;background:#f7f6f1;color:#687572}.ovps-sidebar-bottom{margin-top:20px}.ovps-help-card{margin-top:14px;padding:14px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.ovps-help-card strong{font-size:14px}.ovps-help-card p{font-size:12px;opacity:.75;margin:6px 0 10px}.ovps-help-card a{display:block;color:#fff;text-decoration:none;background:#087b6d;border-radius:9px;padding:9px;text-align:center;font-size:12px;font-weight:700}@media(max-width:900px){.ovps-support-grid{grid-template-columns:1fr}.ovps-message{max-width:92%}}
