/* ===========================
   XSVALTEAM Cloud
   REST API Documentation
   =========================== */

:root{

--bg:#0b1220;
--bg2:#10192d;
--panel:#162238;
--panel2:#1b2a44;

--text:#edf2ff;
--muted:#9fb2d0;

--border:#2b3c5f;

--blue:#4f8cff;
--green:#39d98a;
--orange:#ffb648;
--red:#ff6b6b;

--shadow:0 12px 35px rgba(0,0,0,.35);

--radius:16px;

font-family:
Inter,
Segoe UI,
Arial,
sans-serif;

}

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

background:var(--bg);

color:var(--text);

line-height:1.7;

}

a{

text-decoration:none;

color:var(--blue);

}

header{

position:sticky;

top:0;

z-index:1000;

display:flex;

justify-content:space-between;

align-items:center;

padding:18px 40px;

background:rgba(11,18,32,.95);

backdrop-filter:blur(16px);

border-bottom:1px solid var(--border);

}

.logo{

display:flex;

align-items:center;

gap:15px;

}

.logo-icon{

width:48px;

height:48px;

border-radius:14px;

display:flex;

align-items:center;

justify-content:center;

font-size:24px;

background:linear-gradient(
135deg,
#2d66ff,
#3dc8ff
);

box-shadow:var(--shadow);

}

.logo h1{

font-size:22px;

}

.logo span{

font-size:13px;

color:var(--muted);

}

nav{

display:flex;

gap:28px;

}

nav a{

color:#dfe8ff;

font-weight:500;

transition:.25s;

}

nav a:hover{

color:white;

}

.layout{

display:flex;

min-height:calc(100vh - 80px);

}

aside{

width:270px;

padding:30px;

background:var(--bg2);

border-right:1px solid var(--border);

position:sticky;

top:82px;

height:calc(100vh - 82px);

overflow:auto;

}

aside input{

width:100%;

padding:12px;

background:var(--panel);

border:1px solid var(--border);

border-radius:12px;

color:white;

margin-bottom:25px;

}

aside ul{

list-style:none;

}

aside li{

margin-bottom:14px;

}

aside a{

color:var(--muted);

transition:.2s;

}

aside a:hover{

color:white;

padding-left:5px;

}

main{

flex:1;

padding:50px;

}

.hero{

margin-bottom:55px;

}

.hero h2{

font-size:42px;

margin-bottom:15px;

}

.hero p{

font-size:18px;

max-width:760px;

color:var(--muted);

}

.cards{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:24px;

margin-top:40px;

}

.card{

background:var(--panel);

padding:24px;

border-radius:var(--radius);

border:1px solid var(--border);

box-shadow:var(--shadow);

transition:.25s;

}

.card:hover{

transform:translateY(-4px);

}

.card h3{

font-size:28px;

margin-bottom:8px;

}

.card p{

color:var(--muted);

}

section{

margin-bottom:70px;

}

section h2{

font-size:30px;

margin-bottom:18px;

}.code{

background:#0d1728;

border:1px solid var(--border);

border-radius:14px;

padding:22px;

margin:20px 0;

overflow:auto;

box-shadow:var(--shadow);

}

.code pre{

margin:0;

}

.code code{

font-family:
Consolas,
"Courier New",
monospace;

font-size:14px;

color:#d8e6ff;

white-space:pre;

}

.response{

margin-top:20px;

background:#13233c;

border-left:4px solid var(--green);

padding:22px;

border-radius:12px;

box-shadow:var(--shadow);

}

.response h3{

margin-bottom:15px;

font-size:18px;

}

.response pre{

margin:0;

overflow:auto;

}

.response code{

font-family:
Consolas,
monospace;

color:#d7ffe8;

}

.method{

display:inline-flex;

align-items:center;

justify-content:center;

padding:7px 16px;

border-radius:8px;

font-size:13px;

font-weight:700;

letter-spacing:.6px;

margin:15px 0;

color:white;

}

.get{

background:#16a34a;

}

.post{

background:#2563eb;

}

.put{

background:#d97706;

}

.delete{

background:#dc2626;

}

.table{

width:100%;

border-collapse:collapse;

margin-top:25px;

background:var(--panel);

border-radius:14px;

overflow:hidden;

box-shadow:var(--shadow);

}

.table th{

background:#223454;

padding:18px;

text-align:left;

font-weight:600;

}

.table td{

padding:16px 18px;

border-top:1px solid var(--border);

}

.table tr:hover{

background:#1b2c47;

}

.api-list{

margin-top:18px;

padding-left:24px;

}

.api-list li{

margin-bottom:10px;

color:var(--muted);

}

.ok{

color:var(--green);

font-weight:700;

}

.warning{

color:var(--orange);

font-weight:700;

}

.error{

color:var(--red);

font-weight:700;

}

.timeline{

display:flex;

flex-direction:column;

gap:24px;

margin-top:30px;

}

.timeline-item{

background:var(--panel);

padding:24px;

border-radius:14px;

border-left:5px solid var(--blue);

box-shadow:var(--shadow);

}

.timeline-item h3{

margin-bottom:10px;

}

.timeline-item p{

color:var(--muted);

}

footer{

margin-top:80px;

padding:40px;

display:flex;

justify-content:space-between;

align-items:flex-start;

background:var(--bg2);

border-top:1px solid var(--border);

}

.footer-left,
.footer-right{

color:var(--muted);

line-height:1.8;

}

.footer-left strong{

color:white;

font-size:18px;

}

::-webkit-scrollbar{

width:10px;

height:10px;

}

::-webkit-scrollbar-track{

background:#10192d;

}

::-webkit-scrollbar-thumb{

background:#31486f;

border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

background:#45618f;

}

::selection{

background:#3977ff;

color:white;

}/* ===========================
   Анимации
=========================== */

@keyframes fadeUp{

from{

opacity:0;
transform:translateY(20px);

}

to{

opacity:1;
transform:translateY(0);

}

}

.hero,
section,
.card,
.timeline-item{

animation:fadeUp .6s ease;

}

/* ===========================
   Hover эффекты
=========================== */

.card,
.timeline-item,
.code,
.response,
.table{

transition:
transform .25s ease,
box-shadow .25s ease,
border-color .25s ease;

}

.card:hover,
.timeline-item:hover,
.code:hover,
.response:hover{

transform:translateY(-3px);

border-color:var(--blue);

box-shadow:
0 18px 45px rgba(0,0,0,.45);

}

.table tr{

transition:.2s;

}

/* ===========================
   Поиск
=========================== */

#search{

transition:.25s;

}

#search:focus{

outline:none;

border-color:var(--blue);

box-shadow:
0 0 0 3px rgba(79,140,255,.15);

}

/* ===========================
   Красивые ссылки
=========================== */

main a{

position:relative;

}

main a::after{

content:"";

position:absolute;

left:0;
bottom:-2px;

height:2px;
width:0;

background:var(--blue);

transition:.25s;

}

main a:hover::after{

width:100%;

}

/* ===========================
   Выделение активного пункта
=========================== */

aside a.active{

color:white;

font-weight:600;

padding-left:8px;

}

/* ===========================
   Адаптивность
=========================== */

@media (max-width:1100px){

header{

padding:16px 20px;

}

nav{

gap:16px;

}

main{

padding:35px;

}

.hero h2{

font-size:34px;

}

}

/* ===========================
   Планшет
=========================== */

@media (max-width:900px){

.layout{

flex-direction:column;

}

aside{

position:relative;

top:0;

width:100%;

height:auto;

border-right:none;

border-bottom:1px solid var(--border);

}

nav{

display:none;

}

main{

padding:30px 20px;

}

.cards{

grid-template-columns:1fr 1fr;

}

footer{

flex-direction:column;

gap:25px;

}

}

/* ===========================
   Смартфоны
=========================== */

@media (max-width:600px){

.logo h1{

font-size:18px;

}

.logo span{

font-size:12px;

}

.hero h2{

font-size:28px;

}

.hero p{

font-size:16px;

}

.cards{

grid-template-columns:1fr;

}

.card{

padding:20px;

}

section h2{

font-size:24px;

}

.table{

display:block;

overflow:auto;

}

.code{

padding:16px;

}

.response{

padding:16px;

}

footer{

padding:25px 20px;

font-size:14px;

}

}

/* ===========================
   Конец файла
=========================== */