:root{font-family:Arial,Helvetica,sans-serif;color:#142437;background:#f3f6fa;font-size:16px;line-height:1.5;--blue:#144c9c;--line:#dde4ed}*{box-sizing:border-box}body{margin:0}header{background:#102b4e;color:white;min-height:78px;display:flex;align-items:center;justify-content:space-between;padding:16px max(24px,calc((100% - 1240px)/2));gap:20px}.brand{font-size:26px;letter-spacing:1px;color:white;font-weight:700;text-decoration:none;white-space:nowrap}.brand span{font-size:15px;font-weight:400;letter-spacing:0;margin-left:20px;color:#d7e5f5}main{max-width:1288px;margin:40px auto;padding:0 24px}h1{font-size:32px;line-height:1.2;margin:10px 0 12px;overflow-wrap:anywhere}h2{font-size:21px;margin:0 0 20px}h2:not(:first-child){margin-top:32px;border-top:1px solid var(--line);padding-top:28px}h3{font-size:17px}.eyebrow{font-size:13px;letter-spacing:1.5px;color:#52667e;font-weight:bold}.title-row{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}.muted{color:#5c6c7f;font-size:15px}.panel{background:white;border:1px solid var(--line);border-radius:10px;padding:28px;margin-bottom:24px;box-shadow:0 3px 8px #102b4e04}.login{max-width:470px;margin:65px auto}.login h1{margin-bottom:30px}.login button{width:100%;margin-top:10px}label{display:flex;flex-direction:column;gap:7px;font-size:15px;color:#334860;margin-bottom:18px;font-weight:600}input,select,textarea{font:inherit;font-weight:400;color:#142437;background:white;border:1px solid #a8b8ca;border-radius:6px;padding:11px 12px;width:100%;min-height:46px}input:focus,select:focus,textarea:focus{outline:3px solid #bdd7ff;outline-offset:1px;border-color:var(--blue)}button,.button{font:inherit;font-weight:600;background:var(--blue);color:white;border:1px solid var(--blue);padding:11px 18px;border-radius:6px;text-decoration:none;cursor:pointer;display:inline-block;text-align:center}button:hover,.button:hover{background:#103e80;color:white}.secondary{background:white;color:#163c70;border-color:#b4c6dd}.secondary:hover{background:#e8f0fc;color:#163c70}a{color:#164f9a;text-underline-offset:3px}a:focus-visible,button:focus-visible{outline:3px solid #69a2fc;outline-offset:3px}.years{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}.years a{text-decoration:none;color:#42566e;padding:10px 16px;background:#e7edf5;border-radius:6px;font-weight:600}.years a[aria-current]{background:#173e70;color:white}.years span{font-size:13px;opacity:.85;margin-left:9px}.search{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.search label{margin:0}.search .grow{flex:1;min-width:220px}.search a{padding-bottom:10px}.table-meta{font-size:14px;color:#5c6c7f;margin:26px 0 14px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:14px;background:#f3f6fa;color:#53677f;padding:13px 16px;white-space:nowrap}td{padding:16px;border-bottom:1px solid #e7edf5;font-size:15px;vertical-align:top;overflow-wrap:anywhere}td:first-child{min-width:250px}td:nth-child(2){min-width:210px}td:last-child{white-space:nowrap}.name{font-weight:600;text-decoration:none;color:#173e70}small{display:block;color:#687a91;margin-top:4px;font-size:13px}.year{background:#eef3fa;border-radius:4px;padding:3px 7px}.warning{color:#a14212}.pagination{display:flex;justify-content:space-between;gap:16px;padding-top:24px;font-size:14px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.actions{display:flex;align-items:center;gap:24px;margin-top:24px}.notice,.error{padding:16px 20px;border-radius:6px;border-left:4px solid #c48915;background:#fff6df;color:#694917;overflow-wrap:anywhere}.error{background:#fff0ef;border-color:#c23b31;color:#91291f}.back{display:inline-block;margin-bottom:20px;text-decoration:none}.narrow{max-width:700px}dl{display:grid;grid-template-columns:160px 1fr;gap:10px 24px}dt{color:#5c6c7f}dd{margin:0;overflow-wrap:anywhere}.history{padding-left:20px;color:#52667e;font-size:14px}.history li{margin-bottom:8px}.empty{text-align:center;padding:50px 15px}footer{max-width:1288px;margin:24px auto;padding:0 24px;color:#738096;font-size:13px}header form{margin:0}@media(max-width:760px){header{padding:15px 20px}.brand span{display:none}main{margin-top:24px;padding:0 16px}h1{font-size:26px}.title-row{display:block}.title-row .button{margin-top:12px}.panel{padding:18px}.grid{grid-template-columns:1fr}.search{align-items:stretch}.search label{width:100%}.search button{flex:1}.login{margin:30px auto}dl{grid-template-columns:1fr;gap:4px}dd{margin-bottom:12px}}

.cabinet-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 28px}.cabinet-tabs a{padding:12px 18px;border:1px solid #d9e2e8;border-radius:10px;text-decoration:none;background:#fff}.cabinet-tabs a[aria-current=page]{background:#165c51;color:#fff;border-color:#165c51}.certificate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.certificate-card{padding:20px;border:1px solid #d9e2e8;border-radius:12px}.certificate-card h3{margin-top:0;font-size:18px}.membership-status{padding:14px;background:#eef6f3;border-radius:8px}

.cabinet-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;font-weight:700;border:2px solid #cbd8e6;box-shadow:0 2px 5px rgba(18,43,76,.06);color:#164d84}.cabinet-tabs a:hover{background:#edf4fc;border-color:#194f92}.cabinet-tabs a[aria-current=page]{background:#194f92;border-color:#194f92;color:#fff}.cabinet-tabs a:focus-visible,.payment-options a:focus-visible{outline:3px solid #e6b631;outline-offset:3px}.membership-years{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.membership-stars{font-family:Arial,sans-serif;font-size:17px;line-height:1.3;letter-spacing:2px;color:#eebc17}.payment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.payment-options a{display:flex;flex-direction:column;gap:8px;padding:22px;text-decoration:none;border:2px solid #cbd8e6;border-radius:12px;background:#fff;color:#16324f}.payment-options a[aria-current=true]{border-color:#194f92;background:#edf4fc}.payment-options strong{font-size:20px}.payment-options span{font-size:24px;font-weight:700}.payment-form-wrap{max-width:760px;margin:auto}.payment-form-wrap input{max-width:100%}@media(max-width:640px){.cabinet-tabs{display:grid;grid-template-columns:1fr 1fr}.cabinet-tabs a{padding:10px;font-size:14px;text-align:center}.payment-options{grid-template-columns:1fr}.membership-stars{letter-spacing:1px}}
