:root{--p-primary:#0d6f86;--p-primary-dark:#084c5c;--p-accent:#f28c28;--p-bg:#eef4f7;--p-surface:#fff;--p-text:#162534;--p-muted:#667788;--p-border:#d7e1e7;--p-danger:#b42318;--p-success:#18794e;--p-shadow:0 18px 50px rgba(21,46,59,.12)}*{box-sizing:border-box}html{min-height:100%;background:var(--p-bg)}body.portal-body{margin:0;min-height:100vh;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--p-text);background:linear-gradient(145deg,#edf5f7 0,#f8fafb 48%,#e9f1f4 100%)}a{color:inherit}.portal-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:24px;padding:14px max(18px,calc((100vw - 1320px)/2));background:rgba(255,255,255,.96);border-bottom:1px solid var(--p-border);backdrop-filter:blur(14px)}.portal-brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:max-content}.portal-brand img{width:40px;height:40px}.portal-brand span{display:flex;flex-direction:column}.portal-brand strong{font-size:20px;color:var(--p-primary-dark)}.portal-brand small{font-size:10px;letter-spacing:.08em;color:var(--p-muted)}.portal-nav{display:flex;gap:4px;flex:1}.portal-nav a{padding:10px 12px;border-radius:8px;text-decoration:none;font-weight:650;color:#385161}.portal-nav a:hover{background:#e7f1f4;color:var(--p-primary)}.portal-logout{border:0;background:#edf2f4;color:#385161;padding:9px 12px;border-radius:8px;font-weight:700;cursor:pointer}.portal-main{width:min(1320px,calc(100% - 32px));margin:28px auto 50px}.portal-footer{display:flex;justify-content:space-between;gap:20px;padding:22px max(18px,calc((100vw - 1320px)/2));background:#102c37;color:#d8e7ec;font-size:12px}.portal-alert{padding:13px 16px;border-radius:10px;margin-bottom:16px;border-left:4px solid}.portal-alert-success{background:#e8f6ef;border-color:var(--p-success)}.portal-alert-danger{background:#fff0ee;border-color:var(--p-danger)}.portal-alert-warning{background:#fff7e8;border-color:var(--p-accent)}.portal-auth-card{min-height:520px;max-width:1000px;margin:7vh auto;display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;background:var(--p-surface);border:1px solid var(--p-border);border-radius:24px;box-shadow:var(--p-shadow)}.portal-auth-card.compact{max-width:780px}.portal-auth-intro,.portal-auth-card>div:first-child{padding:60px;background:linear-gradient(145deg,var(--p-primary-dark),var(--p-primary));color:#fff}.portal-auth-intro h1,.portal-auth-card>div:first-child h1{font-size:42px;line-height:1.08;margin:14px 0}.portal-auth-intro p{font-size:18px;line-height:1.6;color:#d8eef3}.portal-form{display:flex;flex-direction:column;gap:16px;padding:42px}.portal-form.inline,.portal-panel.portal-form{padding:0}.portal-form.compact-form{max-width:620px}.portal-form label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#344d5b}.portal-form input,.portal-form select,.portal-form textarea{width:100%;padding:12px 13px;border:1px solid #becdd5;border-radius:9px;background:#fff;color:var(--p-text);font:inherit}.portal-form input:focus,.portal-form textarea:focus,.portal-form select:focus{outline:3px solid rgba(13,111,134,.16);border-color:var(--p-primary)}.portal-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;background:var(--p-primary);color:#fff;padding:12px 17px;font-weight:750;text-decoration:none;cursor:pointer}.portal-button:hover{background:var(--p-primary-dark)}.portal-button.secondary{background:#e7f1f4;color:var(--p-primary-dark)}.portal-button.danger{background:var(--p-danger)}.portal-text-link{color:var(--p-primary);font-weight:700;text-align:center}.portal-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--p-accent)}.portal-hero{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:34px;border-radius:20px;background:linear-gradient(120deg,#0b5264,#0f829d);color:#fff;box-shadow:var(--p-shadow)}.portal-hero h1{font-size:36px;margin:8px 0}.portal-hero p{max-width:720px;color:#dcf0f4}.portal-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:18px 0}.portal-kpis article{background:#fff;border:1px solid var(--p-border);border-radius:14px;padding:20px}.portal-kpis span{display:block;color:var(--p-muted);font-size:13px}.portal-kpis strong{display:block;margin-top:8px;font-size:26px}.portal-grid{display:grid;gap:18px}.portal-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-panel{background:#fff;border:1px solid var(--p-border);border-radius:16px;padding:22px;box-shadow:0 10px 25px rgba(21,46,59,.06);margin-bottom:18px}.portal-panel h2{margin-top:0}.portal-panel-head,.portal-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.portal-panel-head a{color:var(--p-primary);font-weight:700}.portal-page-head{margin-bottom:18px}.portal-page-head h1{margin:5px 0 3px;font-size:32px}.portal-page-head p{margin:0;color:var(--p-muted)}.portal-head-actions{display:flex;gap:10px;flex-wrap:wrap}.portal-list{display:flex;flex-direction:column}.portal-list a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 5px;border-bottom:1px solid var(--p-border);text-decoration:none}.portal-list a:hover{background:#f5fafb}.portal-list span{display:flex;flex-direction:column}.portal-list small,.portal-table small{display:block;color:var(--p-muted);margin-top:3px}.portal-list.compact a{padding:10px 4px}.portal-actions{display:grid;gap:10px;margin-bottom:20px}.portal-actions a{padding:13px;border:1px solid var(--p-border);border-radius:10px;text-decoration:none;font-weight:700}.portal-actions a:hover{border-color:var(--p-primary);color:var(--p-primary)}.portal-badge{display:inline-flex;min-width:26px;height:26px;align-items:center;justify-content:center;border-radius:20px;background:var(--p-accent);color:#fff;font-size:12px}.portal-status{display:inline-flex;padding:5px 9px;border-radius:20px;background:#e8f1f4;color:#274958;font-size:12px;font-weight:800}.portal-status.large{font-size:14px;padding:8px 12px}.portal-tabs{display:flex;gap:6px;flex-wrap:wrap}.portal-tabs a{padding:9px 11px;border-radius:9px;background:#e9f0f3;text-decoration:none;font-weight:700;font-size:13px}.portal-tabs a.active{background:var(--p-primary);color:#fff}.portal-table-wrap{overflow:auto}.portal-table{width:100%;border-collapse:collapse}.portal-table th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--p-muted);background:#f5f8fa}.portal-table th,.portal-table td{padding:12px;border-bottom:1px solid var(--p-border);vertical-align:top}.portal-table .num{text-align:right;white-space:nowrap}.portal-mini-button{display:inline-flex;padding:7px 10px;border:1px solid var(--p-border);border-radius:8px;background:#fff;text-decoration:none;font-weight:700;cursor:pointer}.portal-totals{margin:20px 0 0 auto;width:min(360px,100%);display:flex;flex-direction:column}.portal-totals span{display:flex;justify-content:space-between;padding:8px}.portal-totals .grand{font-size:19px;border-top:2px solid var(--p-primary)}.portal-details{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.portal-details div{padding:12px;background:#f6f9fa;border-radius:9px}.portal-details dt{font-size:12px;color:var(--p-muted)}.portal-details dd{margin:5px 0 0;font-weight:750}.portal-form-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px}.portal-request-lines{display:flex;flex-direction:column;gap:8px}.portal-request-line{display:grid;grid-template-columns:1fr 150px 100px;gap:10px;padding:12px;border:1px solid var(--p-border);border-radius:10px}.portal-check{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important}.portal-check input{width:auto;margin-top:3px}.portal-choice-actions{display:flex;gap:10px;flex-wrap:wrap}.portal-decision-result{padding:14px;border-left:4px solid var(--p-success);background:#eaf7f0}.portal-conversation{display:flex;flex-direction:column;gap:12px}.portal-message{max-width:78%;padding:13px 15px;border-radius:14px;background:#edf2f4}.portal-message.mine{align-self:flex-end;background:#dff0f4}.portal-message header{display:flex;justify-content:space-between;gap:20px;font-size:12px}.portal-message time{color:var(--p-muted)}.portal-message p{margin-bottom:0;line-height:1.5}.portal-help,.portal-empty{color:var(--p-muted)}@media(max-width:850px){.portal-header{flex-wrap:wrap}.portal-nav{order:3;width:100%;overflow:auto}.portal-main{width:min(100% - 20px,1320px);margin-top:16px}.portal-auth-card{grid-template-columns:1fr;margin:20px auto}.portal-auth-intro,.portal-auth-card>div:first-child{padding:30px}.portal-auth-intro h1{font-size:31px}.portal-form{padding:30px}.portal-kpis{grid-template-columns:repeat(2,1fr)}.portal-grid.two{grid-template-columns:1fr}.portal-page-head{flex-direction:column}.portal-form-grid,.portal-request-line,.portal-details{grid-template-columns:1fr}.portal-footer{flex-direction:column}.portal-header form{margin-left:auto}}@media(max-width:500px){.portal-kpis{grid-template-columns:1fr 1fr}.portal-nav a{font-size:13px}.portal-panel{padding:15px}.portal-table th,.portal-table td{padding:9px}.portal-message{max-width:92%}}
.portal-user-actions{display:flex;align-items:center;gap:8px}.portal-cart-link{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:9px;background:#e5f1f4;color:var(--p-primary-dark);text-decoration:none;font-weight:800;white-space:nowrap}.portal-cart-link b{min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:99px;background:var(--p-accent);color:#fff;font-size:11px}.portal-profile-link{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--p-primary);color:#fff;text-decoration:none;font-weight:900}.portal-home-hero{overflow:hidden}.portal-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.portal-home-hero .portal-button{background:#fff;color:var(--p-primary-dark)}.portal-home-hero .portal-button.secondary{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.38)}.portal-hero-mark{min-width:190px;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.08);box-shadow:inset 0 0 40px rgba(255,255,255,.06)}.portal-hero-mark span{font-size:12px;letter-spacing:.28em}.portal-hero-mark strong{font-size:35px}.portal-hero-mark small{color:#d3ebf0}.portal-kpis{grid-template-columns:repeat(5,1fr)}.portal-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.portal-service-grid>a{display:flex;gap:15px;padding:20px;background:#fff;border:1px solid var(--p-border);border-radius:15px;text-decoration:none;box-shadow:0 8px 22px rgba(21,46,59,.05);transition:.18s}.portal-service-grid>a:hover{transform:translateY(-2px);border-color:var(--p-primary)}.portal-service-grid b{font-size:11px;color:var(--p-accent);padding-top:3px}.portal-service-grid span{display:flex;flex-direction:column;gap:5px}.portal-service-grid strong{font-size:16px}.portal-service-grid small{color:var(--p-muted);line-height:1.45}.portal-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.portal-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.portal-product-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--p-border);border-radius:15px;box-shadow:0 8px 24px rgba(21,46,59,.06)}.portal-product-visual{height:180px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#edf4f6,#f9fbfc);text-decoration:none;overflow:hidden}.portal-product-visual img{width:100%;height:100%;object-fit:contain}.portal-product-visual>span{width:78px;height:78px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:#dbe9ed;color:var(--p-primary);font-size:38px;font-weight:900}.portal-product-card>div,.portal-product-body{display:flex;flex-direction:column;gap:8px;padding:17px;flex:1}.portal-product-card h2,.portal-product-card h3{font-size:16px;line-height:1.3;margin:0}.portal-product-card h2 a,.portal-product-card h3 a{text-decoration:none}.portal-product-card p{margin:0;color:var(--p-muted);line-height:1.45}.portal-product-card small{color:var(--p-muted)}.portal-stock{display:inline-flex;align-items:center;width:max-content;padding:5px 9px;border-radius:99px;font-size:12px!important;font-weight:800}.portal-stock.available{background:#e6f5ed;color:#176c48}.portal-stock.limited{background:#fff4dd;color:#9a5b00}.portal-stock.unavailable{background:#f4eceb;color:#8b3028}.portal-stock.neutral{background:#edf1f3;color:#50636e}.portal-price{font-size:20px;color:var(--p-primary-dark);margin-top:auto}.portal-price small{font-size:11px;font-weight:600}.portal-price-on-request{font-weight:800;color:var(--p-primary);margin-top:auto}.portal-add-form{display:flex;gap:8px;margin-top:5px}.portal-add-form input{min-width:0;width:88px;padding:10px;border:1px solid var(--p-border);border-radius:8px}.portal-add-form.large{align-items:end}.portal-add-form.large label{display:flex;flex-direction:column;gap:6px}.portal-filter-bar{display:grid;grid-template-columns:2fr 1fr auto;gap:12px;align-items:end}.portal-filter-bar label{display:flex;flex-direction:column;gap:6px;font-weight:700}.portal-filter-bar input,.portal-filter-bar select{padding:11px 12px;border:1px solid var(--p-border);border-radius:9px;font:inherit}.portal-pagination{display:flex;justify-content:center;gap:5px;margin:20px}.portal-pagination a{min-width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--p-border);border-radius:8px;text-decoration:none}.portal-pagination a.active{background:var(--p-primary);color:#fff}.portal-product-detail{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:32px}.portal-product-detail-visual{min-height:360px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#f2f7f8;overflow:hidden}.portal-product-detail-visual img{width:100%;height:100%;max-height:460px;object-fit:contain}.portal-product-detail-visual span{font-size:80px;color:var(--p-primary);font-weight:900}.portal-lead{line-height:1.7}.portal-product-price{display:flex;flex-direction:column;padding:18px;margin:18px 0;border-radius:12px;background:#edf6f8}.portal-product-price span,.portal-product-price small{color:var(--p-muted)}.portal-product-price strong{font-size:30px;color:var(--p-primary-dark)}.portal-qty-input{width:100px;padding:9px;border:1px solid var(--p-border);border-radius:8px}.portal-cart-footer{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-top:15px}.portal-empty-state{text-align:center;padding:50px}.portal-recurring-form{grid-template-columns:repeat(3,1fr)}.portal-form-grid label{display:flex;flex-direction:column;gap:6px;font-weight:700}.portal-form-grid input,.portal-form-grid select,.portal-form-grid textarea{padding:11px;border:1px solid var(--p-border);border-radius:8px;font:inherit}.span-all{grid-column:1/-1}.portal-fieldset{border:1px solid var(--p-border);border-radius:12px;padding:15px}.portal-fieldset legend{font-weight:800}.portal-notice{margin-top:18px;padding:15px;background:#fff7e8;border-left:4px solid var(--p-accent)}.portal-notice.success{background:#e8f6ef;border-color:var(--p-success)}.portal-timeline{list-style:none;margin:0;padding:0}.portal-timeline li{position:relative;padding:0 0 22px 28px;border-left:2px solid #d9e5e9}.portal-timeline li:before{content:"";position:absolute;left:-7px;top:3px;width:12px;height:12px;border-radius:50%;background:var(--p-primary)}.portal-timeline time{display:block;color:var(--p-muted);font-size:12px}.portal-timeline p{margin:5px 0 0}.portal-contact-options{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.portal-contact-options .portal-check{font-weight:600}.portal-request-line{grid-template-columns:1fr 130px 1fr}.portal-request-line input{padding:10px;border:1px solid var(--p-border);border-radius:8px}.portal-panel .span-2{grid-column:span 2}@media(max-width:1100px){.portal-catalog-grid{grid-template-columns:repeat(3,1fr)}.portal-kpis{grid-template-columns:repeat(3,1fr)}.portal-service-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.portal-user-actions{margin-left:auto}.portal-service-grid,.portal-product-grid,.portal-catalog-grid{grid-template-columns:repeat(2,1fr)}.portal-product-detail{grid-template-columns:1fr}.portal-filter-bar{grid-template-columns:1fr}.portal-recurring-form{grid-template-columns:1fr 1fr}.portal-hero-mark{display:none}}@media(max-width:580px){.portal-product-grid,.portal-catalog-grid,.portal-service-grid{grid-template-columns:1fr}.portal-kpis{grid-template-columns:1fr 1fr}.portal-cart-footer{flex-direction:column}.portal-recurring-form{grid-template-columns:1fr}.portal-user-actions .portal-logout{display:none}}
