/* =========================================================
   KAZEMARU — FINAL UNIFIED VISUAL LAYER
   Keeps existing functionality; normalizes visual language
   across public pages, admin pages, forms, lists and dialogs.
   ========================================================= */
:root{
  --kz-bg:#07060b;
  --kz-bg-2:#0b0911;
  --kz-surface:rgba(18,14,28,.82);
  --kz-surface-strong:rgba(26,20,39,.94);
  --kz-surface-soft:rgba(255,255,255,.035);
  --kz-line:rgba(255,255,255,.09);
  --kz-line-strong:rgba(168,92,255,.34);
  --kz-text:#f8f5ff;
  --kz-muted:#9a93a7;
  --kz-muted-2:#756e81;
  --kz-purple:#9b4dff;
  --kz-purple-2:#c184ff;
  --kz-cyan:#45d8ff;
  --kz-green:#58e6a8;
  --kz-red:#ff5a76;
  --kz-yellow:#ffd45a;
  --kz-radius:20px;
  --kz-shadow:0 28px 80px rgba(0,0,0,.34);
  --kz-ease:cubic-bezier(.2,.8,.2,1);
}

html{background:var(--kz-bg);}
body{
  color:var(--kz-text);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 12% 8%,rgba(139,72,255,.085),transparent 27%),
    radial-gradient(circle at 88% 28%,rgba(59,194,255,.04),transparent 25%),
    var(--kz-bg) !important;
}

/* Shared typography */
.kicker,.admin-collection-kicker,.debts-label,.suggestions-label,.profile-label,.collection-label{
  color:var(--kz-purple-2) !important;
  font-weight:900 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase;
}

h1,h2,h3,h4{color:var(--kz-text);}
p,.subtitle,.muted,.note,.k-message,.collection-admin-sub{color:var(--kz-muted);}

/* Unified controls */
button,input,select,textarea{font-family:inherit;}
input,select,textarea{
  border:1px solid var(--kz-line) !important;
  background:rgba(7,6,11,.78) !important;
  color:var(--kz-text) !important;
  border-radius:13px !important;
  outline:none !important;
  box-shadow:none;
}
input::placeholder,textarea::placeholder{color:#6f687a !important;}
input:focus,select:focus,textarea:focus{
  border-color:rgba(163,78,255,.68) !important;
  box-shadow:0 0 0 3px rgba(155,77,255,.13),0 0 24px rgba(155,77,255,.05) !important;
}

.button,.btn,.k-button,.admin-add-button,.admin-back-button,.collection-review-button,
.debt-button,.edit-save-button,.admin-modal-cancel,.admin-modal-delete,
.schedule-modal-close,.square-control{
  border-radius:13px !important;
  transition:transform .2s var(--kz-ease),border-color .2s ease,background .2s ease,box-shadow .2s ease,opacity .2s ease !important;
}

.button.primary,.btn.primary,.k-button.primary,.admin-add-button,.edit-save-button{
  background:linear-gradient(135deg,#8f3fff,#b55cff) !important;
  border:1px solid rgba(204,158,255,.35) !important;
  color:#fff !important;
  box-shadow:0 12px 30px rgba(134,57,255,.22) !important;
}
.button:hover,.btn:hover,.k-button:hover,.admin-add-button:hover,.admin-back-button:hover,
.collection-review-button:hover,.debt-button:hover,.square-control:hover{
  transform:translateY(-1px);
}
.button.primary:hover,.btn.primary:hover,.k-button.primary:hover,.admin-add-button:hover,.edit-save-button:hover{
  box-shadow:0 16px 38px rgba(143,63,255,.30) !important;
}
.button.ghost,.btn:not(.primary),.k-button.ghost,.admin-back-button,.admin-modal-cancel,.square-control{
  background:rgba(255,255,255,.035) !important;
  color:#d5cde1 !important;
  border:1px solid var(--kz-line) !important;
}
.button.danger,.btn.danger,.admin-modal-delete,.debt-delete-button{
  background:rgba(255,74,105,.085) !important;
  border:1px solid rgba(255,90,118,.20) !important;
  color:#ff9daf !important;
}

/* Shared content shells */
.page,.k-page,.collection-admin-page,.debts-page,.admin-suggestions-page,.users-page{
  position:relative;
}
.page,.k-page{
  padding-top:105px !important;
}
.page > .header,.k-panel,.card,.section.card,.admin-collection-section-head,
.admin-collection-section-head + *, .admin-suggestions-panel,.users-head,
.profile-card,.collection-overview-card,.collection-tools,.schedule-modal{
  border-color:var(--kz-line) !important;
}

.header,.card,.k-panel,.admin-collection-page,.collection-admin-card,.admin-suggestions-panel,
.users-top,.users-head,.profile-card,.debts-header,.debts-toolbar,
.admin-stat,.admin-suggestion-stat,.k-stat-card{
  background:
    linear-gradient(145deg,rgba(27,21,41,.90),rgba(10,9,15,.96)) !important;
  border:1px solid var(--kz-line) !important;
  box-shadow:var(--kz-shadow);
  border-radius:var(--kz-radius) !important;
}

/* Admin collection */
.collection-admin-page{
  width:min(1120px,calc(100% - 32px)) !important;
  margin:0 auto !important;
  padding:105px 0 76px !important;
}
.collection-admin-card{padding:30px !important;}
.collection-admin-title{font-size:clamp(36px,5vw,58px) !important;letter-spacing:-.045em !important;}
.collection-admin-form{gap:16px !important;}
.collection-admin-poster{border-color:rgba(155,77,255,.28) !important;background:rgba(155,77,255,.035) !important;}

/* Admin collection list */
.admin-collection-page{padding:105px 20px 80px !important;min-height:100vh;}
.admin-collection-container{width:min(1120px,100%) !important;margin:auto;}
.admin-collection-top{gap:22px !important;}
.admin-stat{padding:22px !important;}
.admin-stat-value{color:#f7f2fd !important;}
.admin-stat-label{color:var(--kz-muted) !important;}
.admin-stat-icon{filter:saturate(.8);}

/* Admin debts */
.debts-page{padding:105px 20px 80px !important;}
.debts-container{width:min(1180px,100%) !important;}
.debt-card{
  border:1px solid var(--kz-line) !important;
  background:linear-gradient(145deg,rgba(24,19,36,.91),rgba(10,9,14,.97)) !important;
  border-radius:18px !important;
  box-shadow:0 18px 46px rgba(0,0,0,.22) !important;
}
.debt-card:hover{border-color:rgba(161,86,255,.28) !important;transform:translateY(-3px);}
.debt-filter,.debt-search{background:rgba(6,5,9,.82) !important;}
.debt-collection-button,.debt-watch-button{background:rgba(155,77,255,.10) !important;border-color:rgba(155,77,255,.25) !important;color:#d0adff !important;}

/* Admin suggestions */
.admin-suggestions-page{padding:105px 20px 80px !important;}
.admin-suggestions-container{width:min(1160px,100%) !important;margin:auto;}
.admin-suggestions-stat{
  border:1px solid var(--kz-line) !important;
  border-radius:18px !important;
  background:linear-gradient(145deg,rgba(27,21,41,.88),rgba(10,9,15,.95)) !important;
}
.admin-suggestion-search,.admin-suggestion-select{border-radius:13px !important;background:rgba(6,5,10,.82) !important;}

/* Users / settings / statistics */
.profiles-list,.profiles-status,.users-actions,.checks,.actions,.grid,.list{min-width:0;}
.profiles-list > *, .check, .item, .row{
  border-color:var(--kz-line) !important;
  background:rgba(255,255,255,.025) !important;
  border-radius:16px !important;
}
.status,.sys{border-radius:13px !important;}

/* Public pages */
.k-page-hero{margin-bottom:28px !important;}
.k-page h1{letter-spacing:-.05em !important;background:linear-gradient(100deg,#fff 8%,#d1a4ff 53%,#5dd6ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.k-panel{box-shadow:var(--kz-shadow) !important;}
.k-item{background:rgba(8,7,12,.62) !important;border-color:rgba(255,255,255,.07) !important;}
.k-chip{background:rgba(155,77,255,.11) !important;color:#bf8cff !important;}
.k-empty{background:rgba(255,255,255,.015);}
.k-stat-card strong{color:#fff !important;}

/* Collection cards */
.collection-overview-card,.collection-card{
  box-shadow:0 20px 60px rgba(0,0,0,.25) !important;
}
.collection-card:hover{border-color:rgba(160,84,255,.35) !important;}
.collection-filter{backdrop-filter:blur(10px);}

/* Suggestion page */
.suggestion-search-box,.suggestions-info-card,.suggestion-manual,.suggestion-picked,
.suggestion-details,.suggestion-card,.suggestion-search-results{
  border-color:var(--kz-line) !important;
  background:linear-gradient(145deg,rgba(25,20,38,.78),rgba(10,9,15,.92)) !important;
  border-radius:18px !important;
}
.suggestion-tab,.suggestion-search-result{
  border-color:rgba(255,255,255,.075) !important;
  background:rgba(255,255,255,.025) !important;
}
.suggestion-tab.active,.suggestion-search-result:hover{
  border-color:rgba(155,77,255,.32) !important;
  background:linear-gradient(135deg,rgba(140,52,255,.18),rgba(37,170,255,.055)) !important;
}

/* Schedule */
.schedule-modal-backdrop,.movie-modal,.collection-review-modal,.admin-modal-backdrop{
  background:rgba(4,3,8,.76) !important;
  backdrop-filter:blur(8px);
}
.schedule-modal,.movie-modal-window,.collection-review-dialog,.admin-modal-box{
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:22px !important;
  background:
    radial-gradient(circle at 8% 0%,rgba(145,65,255,.10),transparent 32%),
    linear-gradient(145deg,rgba(26,20,39,.98),rgba(9,8,13,.99)) !important;
  box-shadow:0 35px 110px rgba(0,0,0,.5),0 0 60px rgba(128,54,255,.08) !important;
}
.schedule-modal-close,.collection-review-close,.movie-modal-close{
  background:rgba(255,255,255,.035) !important;
  color:#d7cfdf !important;
  border:1px solid var(--kz-line) !important;
}

/* Review UI */
.collection-review-button{
  border:1px solid rgba(155,77,255,.28) !important;
  background:rgba(155,77,255,.10) !important;
  color:#caa2ff !important;
}
.collection-review-summary{color:#c493ff !important;}
.collection-rating-choice{
  border-color:rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.035) !important;
  color:#d9d1e1 !important;
}
.collection-rating-choice.active,.collection-rating-choice:hover{
  background:linear-gradient(135deg,#8b3df2,#aa5cff) !important;
  border-color:rgba(204,170,255,.5) !important;
  color:#fff !important;
}
.collection-review-item{border-color:rgba(255,255,255,.075) !important;background:rgba(255,255,255,.02) !important;}

/* Header / footer */
.site-header{z-index:1000 !important;}
.header-inner{box-shadow:0 20px 65px rgba(0,0,0,.34) !important;}
.site-footer{border-top:1px solid rgba(255,255,255,.06) !important;background:rgba(8,7,12,.72) !important;}
.footer-brand{color:#fff !important;}
.footer-socials a{color:#9e96aa !important;}
.footer-socials a:hover{color:#d1a8ff !important;}

/* Remove browser-looking native select emphasis */
select option{background:#100d17;color:#f7f2fd;}

/* Inline utility styles on older pages: visual normalization */
.top,.topbar,.actions{gap:12px !important;}
.header .top{align-items:flex-end;}
.field,.check,.label{color:#d8d0de !important;}
.field input,.field select,.field textarea,.check input{accent-color:var(--kz-purple);}

/* Scrollbars */
*{
  scrollbar-width:thin;
  scrollbar-color:rgba(155,77,255,.55) rgba(255,255,255,.035);
}
*::-webkit-scrollbar{width:8px;height:8px;}
*::-webkit-scrollbar-track{background:rgba(255,255,255,.02);}
*::-webkit-scrollbar-thumb{background:rgba(155,77,255,.42);border-radius:999px;}
*::-webkit-scrollbar-thumb:hover{background:rgba(174,106,255,.62);}

/* Accessibility / motion */
button:disabled,.button:disabled,.btn:disabled{opacity:.55 !important;cursor:not-allowed !important;transform:none !important;}
:focus-visible{outline:2px solid rgba(193,132,255,.82) !important;outline-offset:2px;}

@media (max-width:900px){
  .page,.k-page,.collection-admin-page{padding-top:88px !important;}
  .admin-collection-page,.debts-page,.admin-suggestions-page{padding-top:88px !important;}
  .k-page-hero{align-items:flex-start !important;flex-direction:column !important;}
  .k-toolbar{grid-template-columns:1fr !important;}
  .collection-admin-form{grid-template-columns:1fr !important;}
  .collection-admin-field.full{grid-column:auto !important;}
}

@media (max-width:640px){
  .header-inner{border-radius:16px !important;padding-inline:12px !important;}
  .page,.k-page,.collection-admin-page{width:min(100% - 20px,1120px) !important;}
  .admin-collection-page,.debts-page,.admin-suggestions-page{padding-inline:10px !important;}
  .header,.card,.k-panel,.collection-admin-card{padding:20px !important;}
  .k-page h1{font-size:clamp(38px,12vw,58px) !important;}
  .collection-admin-title{font-size:clamp(34px,11vw,48px) !important;}
  .admin-collection-top,.debts-header{align-items:flex-start !important;}
  .collection-admin-actions,.actions,.topbar{flex-direction:column !important;align-items:stretch !important;}
  .collection-admin-actions > *, .actions > *, .topbar > *{width:100%;}
}


/* =========================================================
   KAZEMARU — PAGE-SPECIFIC ATMOSPHERIC BACKGROUNDS
   Each page gets its own visual atmosphere while preserving
   the dark KAZEMARU identity and keeping content readable.
   ========================================================= */
body[data-kioshi-page]{
  position:relative;
  min-height:100vh;
  background-color:#07060b !important;
  background-repeat:no-repeat !important;
  background-attachment:fixed !important;
  background-size:cover !important;
}

/* Главная — космический медиахаб */
body.home-body{
  background:
    radial-gradient(ellipse 75% 55% at 18% 16%,rgba(146,83,255,.18),transparent 58%),
    radial-gradient(ellipse 60% 45% at 84% 14%,rgba(58,208,255,.12),transparent 60%),
    radial-gradient(ellipse 55% 40% at 64% 88%,rgba(223,74,185,.08),transparent 62%),
    repeating-radial-gradient(circle at 22% 26%,transparent 0 72px,rgba(173,121,255,.026) 73px 74px),
    linear-gradient(135deg,#07060d 0%,#090713 46%,#05060b 100%) !important;
}

/* Коллекция — кинотеатр / киноплёнка */
body[data-kioshi-page="collection"]{
  background:
    radial-gradient(ellipse at 50% -8%,rgba(255,140,82,.16),transparent 36%),
    radial-gradient(ellipse at 88% 82%,rgba(155,77,255,.15),transparent 34%),
    linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 112px),
    linear-gradient(180deg,rgba(255,179,92,.014) 0 1px,transparent 1px 112px),
    radial-gradient(circle at 12% 22%,rgba(255,188,111,.16) 0 1.5px,transparent 2.5px),
    radial-gradient(circle at 78% 38%,rgba(177,92,255,.13) 0 1.5px,transparent 2.5px),
    linear-gradient(155deg,#0b070b 0%,#08060c 55%,#0d0810 100%) !important;
}

/* Долги — финансовый экран / ledger */
body[data-kioshi-page="debts"]{
  background:
    radial-gradient(ellipse at 82% 8%,rgba(255,196,92,.13),transparent 28%),
    radial-gradient(ellipse at 12% 88%,rgba(255,79,116,.10),transparent 30%),
    linear-gradient(90deg,transparent 0 31px,rgba(255,225,170,.018) 32px,transparent 33px),
    repeating-linear-gradient(0deg,transparent 0 41px,rgba(255,215,151,.022) 42px 43px),
    linear-gradient(136deg,#0a0809 0%,#08070b 52%,#11090c 100%) !important;
}

/* Расписание — таймлайн / цифровые часы */
body[data-kioshi-page="schedule"]{
  background:
    radial-gradient(circle at 14% 18%,rgba(56,194,255,.15),transparent 30%),
    radial-gradient(circle at 84% 76%,rgba(157,91,255,.14),transparent 33%),
    conic-gradient(from 210deg at 78% 24%,transparent 0 14%,rgba(78,201,255,.026) 14.5%,transparent 15.2% 28%,rgba(171,112,255,.022) 28.7%,transparent 29.4% 43%,rgba(78,201,255,.018) 43.7%,transparent 44.5% 100%),
    repeating-linear-gradient(90deg,transparent 0 57px,rgba(82,193,255,.019) 58px 59px),
    repeating-linear-gradient(0deg,transparent 0 57px,rgba(171,113,255,.016) 58px 59px),
    linear-gradient(145deg,#06090f 0%,#07070d 52%,#0b0713 100%) !important;
}

/* Предложка — идеи / сигналы */
body[data-kioshi-page="suggestions"]{
  background:
    radial-gradient(circle at 78% 18%,rgba(255,213,90,.14),transparent 22%),
    radial-gradient(circle at 18% 76%,rgba(79,232,173,.10),transparent 29%),
    radial-gradient(circle at 56% 44%,rgba(180,81,255,.10),transparent 31%),
    radial-gradient(circle at 28% 24%,rgba(255,255,255,.04) 0 1px,transparent 2px),
    radial-gradient(circle at 76% 62%,rgba(255,255,255,.035) 0 1px,transparent 2px),
    linear-gradient(135deg,#0a080d 0%,#07090d 48%,#0c0907 100%) !important;
}

/* Статистика — аналитический / data-вайб */
body[data-kioshi-page="statistics"]{
  background:
    radial-gradient(ellipse at 74% 18%,rgba(77,214,255,.12),transparent 30%),
    radial-gradient(ellipse at 18% 82%,rgba(157,78,255,.12),transparent 32%),
    repeating-radial-gradient(circle at 74% 36%,transparent 0 54px,rgba(120,150,255,.018) 55px 56px),
    repeating-linear-gradient(90deg,transparent 0 47px,rgba(91,170,255,.018) 48px 49px),
    repeating-linear-gradient(0deg,transparent 0 47px,rgba(171,105,255,.014) 48px 49px),
    linear-gradient(145deg,#05070d 0%,#070811 48%,#090615 100%) !important;
  background-size:auto,auto,auto,48px 48px,48px 48px,auto !important;
}

/* Профиль — личное пространство / созвездие */
body[data-kioshi-page="profile"]{
  background:
    radial-gradient(circle at 20% 18%,rgba(65,205,255,.14),transparent 27%),
    radial-gradient(circle at 82% 20%,rgba(248,99,184,.11),transparent 26%),
    radial-gradient(circle at 55% 88%,rgba(169,87,255,.15),transparent 35%),
    radial-gradient(circle at 18% 68%,rgba(255,255,255,.055) 0 1px,transparent 2px),
    radial-gradient(circle at 78% 34%,rgba(255,255,255,.045) 0 1px,transparent 2px),
    linear-gradient(145deg,#08070e 0%,#07060c 55%,#0b0711 100%) !important;
}

/* Админка — control room / система */
body[data-kioshi-page^="admin"]{
  background:
    radial-gradient(ellipse at 88% 10%,rgba(255,90,118,.11),transparent 26%),
    radial-gradient(ellipse at 12% 88%,rgba(98,88,255,.13),transparent 31%),
    linear-gradient(90deg,transparent 0 79px,rgba(121,209,255,.016) 80px,transparent 81px),
    linear-gradient(0deg,transparent 0 79px,rgba(161,107,255,.016) 80px,transparent 81px),
    radial-gradient(circle at 72% 28%,rgba(255,255,255,.035) 0 1px,transparent 2px),
    linear-gradient(145deg,#09080e 0%,#06060a 60%,#0a070d 100%) !important;
}

/* На мобильных убираем fixed-поведение, чтобы фон не создавал лишнюю нагрузку */
@media (max-width:640px){
  body[data-kioshi-page]{background-attachment:scroll !important;}
}
