/* =====================================================================
 GELNIKA · Design system V3.16.525 · FRINET TELECOM
 2026-10-21 · CSS only · never changes statuses, access or business actions.
 Modern enterprise UI: restrained red, clear typography, compact controls.
 ===================================================================== */
:root {
 --g525-red:#e33434; --g525-red-dark:#bd242a; --g525-red-soft:#fff1f1;
 --g525-bg:#f5f7fa; --g525-surface:#ffffff; --g525-surface-alt:#fafbfc;
 --g525-line:#e2e7ee; --g525-line-strong:#cfd7e2;
 --g525-ink:#1d2938; --g525-body:#384457; --g525-muted:#667487;
 --g525-radius:12px; --g525-radius-sm:8px;
 --g525-shadow:0 2px 10px rgba(28,43,63,.045);
 --g525-focus:0 0 0 3px rgba(227,52,52,.13);
 --g525-font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
html body:has(.frinet-v281-shell),html body:has(.pt),html body:has(.g15-box){
 font-family:var(--g525-font)!important;color:var(--g525-ink)!important;
 background:var(--g525-bg)!important;font-size:14px!important;-webkit-font-smoothing:antialiased;
}
html body .frinet-v281-shell{background:var(--g525-bg)!important;min-height:100dvh;}
html body .frinet-v281-content{max-width:1480px!important;padding:17px 20px 40px!important;margin-inline:auto!important;color:var(--g525-ink)!important}
html body .frinet-v281-content :is(h1,h2,h3,h4){font-family:var(--g525-font)!important;letter-spacing:-.025em!important;color:var(--g525-ink)!important;line-height:1.26!important}
html body .frinet-v281-content h1{font-size:clamp(22px,2.3vw,28px)!important;font-weight:740!important}
html body .frinet-v281-content h2{font-size:clamp(17px,1.8vw,21px)!important;font-weight:720!important}
html body .frinet-v281-content h3{font-size:16px!important;font-weight:700!important}
html body .frinet-v281-content p{line-height:1.55!important}
html body .frinet-v281-content a:not(.fv28b):not(.button):not([class*="btn"]){text-underline-offset:3px}

/* One compact header: less dead space on mobile, clear active state. */
html body .frinet-v281-top.frinet-v289-top{
 position:relative!important;top:auto!important;z-index:900!important;
 min-height:unset!important;padding:10px clamp(12px,2vw,24px)!important;
 background:rgba(255,255,255,.98)!important;
 border:0!important;border-bottom:1px solid var(--g525-line)!important;
 box-shadow:0 1px 3px rgba(25,42,59,.04)!important;backdrop-filter:none!important;
}
html body .frinet-v281-top .frinet-v281-brand{gap:10px!important;min-width:0!important;}
html body .frinet-v281-top .frinet-v289-user{font-size:12px!important;font-weight:600!important;color:var(--g525-body)!important}
html body .frinet-v281-top .frinet-v281-nav{min-width:0!important;max-width:100%!important;}
html body .frinet-v289-top .plane-primary-tabs-v223,
html body .frinet-v281-top .plane-primary-tabs-v223{
 gap:5px!important;align-items:center!important;padding:3px 0!important;
 background:transparent!important;border:0!important;box-shadow:none!important;
}
html body .frinet-v289-top .plane-primary-tabs-v223>.plane-primary-tab-v223,
html body .frinet-v289-top .plane-primary-tabs-v223>details>summary,
html body .frinet-v281-top .plane-primary-tabs-v223>.plane-primary-tab-v223,
html body .frinet-v281-top .plane-primary-tabs-v223>details>summary{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 gap:5px!important;min-height:36px!important;padding:7px 11px!important;
 border:1px solid transparent!important;border-radius:8px!important;
 background:#fff!important;color:var(--g525-body)!important;
 box-shadow:none!important;font-size:13px!important;font-weight:650!important;
 line-height:20px!important;text-decoration:none!important;white-space:nowrap!important;
 transition:background-color .14s ease,border-color .14s ease,color .14s ease!important;
}
html body .frinet-v289-top .plane-primary-tabs-v223>.plane-primary-tab-v223:hover,
html body .frinet-v289-top .plane-primary-tabs-v223>details>summary:hover{
 background:var(--g525-surface-alt)!important;border-color:var(--g525-line)!important;transform:none!important;
}
html body .frinet-v289-top .plane-primary-tabs-v223>.plane-primary-tab-v223.active,
html body .frinet-v289-top .plane-primary-tabs-v223>details.active>summary{
 background:var(--g525-red)!important;border-color:var(--g525-red)!important;color:#fff!important;
 box-shadow:0 2px 5px rgba(227,52,52,.13)!important;
}
html body .frinet-v289-top #plane-main-menu-summary-v292,
html body .frinet-v289-top .plane-menu-button-v297{
 width:38px!important;min-width:38px!important;height:36px!important;min-height:36px!important;
 padding:6px!important;border:1px solid var(--g525-line)!important;
 border-radius:8px!important;background:white!important;color:var(--g525-body)!important;
 box-shadow:none!important;
}
html body .frinet-v289-top .plane-menu-icon-v297{font-size:18px!important;line-height:1!important}
html body .frinet-v289-top .plane-tools-menu-v223,
html body .frinet-v289-top .plane-client-dd-menu-v291,
html body .frinet-v289-top .g31521-tools-menu{
 border:1px solid var(--g525-line)!important;border-radius:11px!important;
 background:#fff!important;padding:6px!important;
 box-shadow:0 14px 36px rgba(21,32,48,.12)!important;
}
html body .frinet-v289-top .plane-tools-menu-v223 a,
html body .frinet-v289-top .plane-client-dd-menu-v291 a,
html body .frinet-v289-top .g31521-tools-menu a{
 padding:9px 11px!important;border-radius:7px!important;line-height:1.35!important;
 color:var(--g525-body)!important;box-shadow:none!important;
}
html body .frinet-v289-top .plane-tools-menu-v223 a:hover,
html body .frinet-v289-top .plane-client-dd-menu-v291 a:hover{background:#f6f8fb!important;}
html body .frinet-v289-top .plane-tools-menu-v223 small,
html body .frinet-v289-top .plane-client-dd-menu-v291 small{font-size:11px!important;color:var(--g525-muted)!important}

/* Panels: fine borders / no thick coloured frames or oversized radii. */
html body .frinet-v281-content :is(
  .fv28c,.g15-box,.g15-card,.ca220-box,.g132-card,.g168,.ct220-card,.p206-panel,
  .p206-card,.g316261-it-panel,.g316261-it-card,.g171-card,.g176-card,.gpp-card,
  .plane-v290-card,.g83-card,.g226-card,.g229-content
){
 background:#fff!important;border:1px solid var(--g525-line)!important;
 border-radius:var(--g525-radius)!important;box-shadow:var(--g525-shadow)!important;
 padding:clamp(12px,1.6vw,19px)!important;color:var(--g525-body)!important;
}
html body .frinet-v281-content :is(.p206-card,.g15-card,.g132-card,.g316261-it-card):hover{
 transform:none!important;border-color:#d5dde7!important;box-shadow:0 4px 13px rgba(28,43,63,.065)!important;
}
html body .frinet-v281-content :is(.p206-num,.p206-card strong){letter-spacing:-.035em!important}
html body .frinet-v281-content :is(.p206-cards,.g15-grid,.g316261-kpis){gap:10px!important}
html body .frinet-v281-content .p206-card{min-height:unset!important}
html body .frinet-v281-content :is(.g15-box,.g316261-it-panel,.fv28c) :is(h1,h2,h3){margin-top:0!important}

/* Summary bars and accordions: not another giant colored button. */
html body .frinet-v281-content .gelnika-v3124-accordion>summary{
 padding:11px 14px!important;min-height:44px!important;font-size:15px!important;font-weight:690!important;
 border:1px solid var(--g525-line)!important;border-radius:10px!important;
 color:var(--g525-ink)!important;background:#fff!important;
 box-shadow:var(--g525-shadow)!important;
}
html body .frinet-v281-content .gelnika-v3124-accordion[open]>summary{
 border-color:#efb7bb!important;background:#fffafa!important;
}
html body .frinet-v281-content .gelnika-v3124-accordion>summary .gelnika-v3124-chevron{font-size:16px!important;color:var(--g525-red)!important}
html body .frinet-v281-content details>summary{line-height:1.35!important}
html body .frinet-v281-content details>summary:focus-visible{outline:2px solid var(--g525-red)!important;outline-offset:2px!important}

/* Controls: reduce visual size, preserve touch accessibility at <=760px. */
html body .frinet-v281-content :is(button,input[type="button"],input[type="submit"],.button,.fv28b,.g15-btn,.g316261-btn,.ci220-btn,.ct220-btn,.gpp-btn,.pm313-btn,.g132-save,.g168-add),
html body .frinet-v281-content :is(a.fv28b,a.g15-btn,a.g316261-btn,a.ci220-btn,a.ct220-btn,a.pm313-btn,a.gpp-btn){
 min-height:34px!important;padding:7px 12px!important;
 border-radius:8px!important;box-shadow:none!important;
 font-size:12.5px!important;font-weight:680!important;line-height:19px!important;
 letter-spacing:0!important;text-shadow:none!important;
 transition:background-color .14s ease,border-color .14s ease,color .14s ease!important;
}
html body .frinet-v281-content :is(button,.fv28b,.g15-btn,.g316261-btn,.ci220-btn,.ct220-btn,.gpp-btn):hover{
 transform:none!important;box-shadow:0 1px 4px rgba(28,43,63,.09)!important;
}
html body .frinet-v281-content :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),select,textarea){
 width:auto;max-width:100%;min-height:36px!important;padding:8px 10px!important;
 border:1px solid var(--g525-line-strong)!important;border-radius:8px!important;
 background:#fff!important;color:var(--g525-ink)!important;
 font-size:13.5px!important;line-height:20px!important;box-shadow:none!important;
}
html body .frinet-v281-content textarea{min-height:72px!important;resize:vertical!important}
html body .frinet-v281-content :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea):focus{
 border-color:var(--g525-red)!important;box-shadow:var(--g525-focus)!important;outline:0!important;
}
html body .frinet-v281-content :is(input,textarea)::placeholder{color:#919bab!important;opacity:1!important}
html body .frinet-v281-content label{font-weight:600!important;font-size:12.5px!important;color:#465368!important}
html body .frinet-v281-content .plane-v290-periods{gap:5px!important;margin:9px 0 13px!important}
html body .frinet-v281-content .plane-v290-periods :is(a,button){
 min-height:34px!important;padding:7px 11px!important;font-size:12px!important;
 border:1px solid var(--g525-line-strong)!important;border-radius:8px!important;
}
/* Keep the existing semantic green/orange/blue/grey for operational state buttons. */
html body :is(.gelnika-semantic-green,.gelnika-semantic-orange,.gelnika-semantic-blue,.gelnika-semantic-gray,.green,.orange,.red)[class*="btn"]{color:#fff!important}

/* Tables: dense but generous enough for operations; align row actions. */
html body .frinet-v281-content table:not(.g211-sbpm-brand table):not(.g226-meta table){
 border-radius:10px!important;border:1px solid var(--g525-line)!important;
 box-shadow:none!important;background:white!important;
}
html body .frinet-v281-content table thead th{
 padding:10px 12px!important;background:#f8fafc!important;
 color:#536175!important;font-weight:700!important;font-size:11px!important;
 letter-spacing:.03em!important;border-bottom:1px solid var(--g525-line)!important;
}
html body .frinet-v281-content table tbody td{
 padding:9px 12px!important;font-size:12.5px!important;line-height:1.42!important;
 border-bottom:1px solid #eff2f6!important;color:var(--g525-body)!important;
}
html body .frinet-v281-content table tbody tr:hover td{background:#fafbfd!important}
html body .frinet-v281-content :is(.table-wrap,.plane-table-wrap,.g132-scroll){
 max-width:100%!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;
}
html body .frinet-v281-content :is(.plane-v296-filter,.plane-v290-actions,.g171-line-actions){gap:8px!important}

/* Messaging: hierarchy and coloured workflow states preserved. */
html body .frinet-v281-content .ci220-grid{gap:10px!important}
html body .frinet-v281-content .ci220-card{
 padding:14px 16px!important;border-radius:11px!important;
 border:1px solid var(--g525-line)!important;border-left:4px solid var(--g525-line-strong)!important;
 background:white!important;box-shadow:none!important;
}
html body .frinet-v281-content .ci220-card.traffic-red{border-left-color:#e33434!important;background:#fffafa!important}
html body .frinet-v281-content .ci220-card.traffic-orange{border-left-color:#dd9b29!important;background:#fffdf8!important}
html body .frinet-v281-content .ci220-card.traffic-green{border-left-color:#219461!important;background:#fbfffd!important}
html body .frinet-v281-content .ci220-card:hover{transform:none!important;box-shadow:var(--g525-shadow)!important}
html body .frinet-v281-content .ci220-name{font-size:15px!important;font-weight:730!important;color:var(--g525-ink)!important}
html body .frinet-v281-content .ci220-last{font-size:12px!important;line-height:1.55!important;color:var(--g525-body)!important}
html body .frinet-v281-content :is(.ci220-badge,.ci220-traffic){
 border-radius:6px!important;padding:3px 7px!important;
 font-size:10px!important;font-weight:680!important;letter-spacing:0!important;
}
html body .frinet-v281-content .ci220-card-actions{gap:6px!important}
html body .plane-v316147-modalbox{
 border:1px solid var(--g525-line)!important;border-radius:13px!important;
 box-shadow:0 20px 48px rgba(22,34,49,.16)!important;
}

/* Partner cards, tech panels and assignment actions */
html body :is(.g15-box,.g15-card,.g226-card,.g229-content){
 border-radius:11px!important;border-color:var(--g525-line)!important;
 box-shadow:var(--g525-shadow)!important;
}
html body .g15-box :is(input,select,textarea),html body .g226-card :is(input,select,textarea){
 border-radius:8px!important;border-color:var(--g525-line-strong)!important;
}
html body .g226-card button,html body .g15-box button,html body .g229-content button{
 border-radius:8px!important;font-size:12px!important;box-shadow:none!important;
}
html body .g226-card :is(.g226-meta span,.g226-plan form,.g226-terrain form){border-radius:8px!important}
html body .pt{background:var(--g525-bg)!important;color:var(--g525-ink)!important}
html body .pt :is(.pt-card,.pt-section,.pt-v31692-panel,.pt-v31692-hub,.pt-head,.pt-card-v215){
 background:#fff!important;border:1px solid var(--g525-line)!important;border-radius:11px!important;
 box-shadow:var(--g525-shadow)!important;
}
html body .pt :is(.pt-btn,.pt-bt,.pt-v31692-tab,button,a.pt-bt){
 border-radius:8px!important;box-shadow:none!important;font-weight:650!important;
}
html body .pt :is(.pt-btn,.pt-bt,.pt-v31692-tab,button,a.pt-bt):hover{
 transform:none!important;box-shadow:0 1px 4px rgba(28,43,63,.08)!important;
}
html body .pt :is(input,select,textarea){border-radius:8px!important;border-color:var(--g525-line-strong)!important}

/* Accessibility and sane mobile density */
html body .frinet-v281-shell :is(a,button,summary,input,select,textarea):focus-visible,
html body .pt :is(a,button,summary,input,select,textarea):focus-visible{
 outline:2px solid var(--g525-red)!important;outline-offset:2px!important;
}
@media(max-width:990px){
 html body .frinet-v281-content{padding:13px 12px 33px!important}
 html body .frinet-v289-top .plane-primary-tabs-v223{overflow-x:auto!important;scrollbar-width:none!important;gap:4px!important}
 html body .frinet-v289-top .plane-primary-tabs-v223::-webkit-scrollbar{display:none!important}
 html body .frinet-v289-top .plane-primary-tabs-v223>.plane-primary-tab-v223,
 html body .frinet-v289-top .plane-primary-tabs-v223>details>summary{
  font-size:12.5px!important;min-height:38px!important;padding:7px 10px!important;
 }
 html body .frinet-v281-content .plane-v290-card{padding:13px!important}
 html body .frinet-v281-content :is(.plane-v290-actions,.g171-line-actions){flex-wrap:wrap!important}
}
@media(max-width:640px){
 html body .frinet-v281-top.frinet-v289-top{padding:7px 9px!important}
 html body .frinet-v281-top .frinet-v281-brand{padding:5px!important;gap:7px!important}
 html body .frinet-v281-top .frinet-v289-user{font-size:11px!important}
 html body .frinet-v281-content{padding:10px 8px 26px!important}
 html body .frinet-v289-top .plane-primary-tabs-v223{gap:4px!important}
 html body .frinet-v289-top .plane-primary-tabs-v223>.plane-primary-tab-v223,
 html body .frinet-v289-top .plane-primary-tabs-v223>details>summary{
   font-size:12px!important;min-height:40px!important;padding:7px 9px!important;border-radius:8px!important;
 }
 html body .frinet-v289-top #plane-main-menu-summary-v292{min-height:40px!important;height:40px!important}
 html body .frinet-v281-content :is(.fv28c,.g15-box,.g15-card,.ca220-box,.g132-card,.g168,.ct220-card,.p206-panel,.p206-card,.g171-card,.g176-card,.plane-v290-card){
  padding:12px!important;border-radius:10px!important;
 }
 html body .frinet-v281-content :is(button,input[type="button"],input[type="submit"],.fv28b,.g15-btn,.g316261-btn,.ci220-btn,.ct220-btn,.gpp-btn){
  min-height:42px!important;padding:9px 11px!important;font-size:12px!important;
 }
 html body .frinet-v281-content :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  min-height:42px!important;font-size:16px!important;
 }
 html body .frinet-v281-content .g171-line-actions button{min-width:44px!important;min-height:44px!important}
 html body .frinet-v281-content :is(.p206-cards,.g15-grid,.g316261-kpis){gap:8px!important}
 html body .frinet-v281-content .plane-v290-periods{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body .frinet-v281-content .plane-v290-periods :is(a,button){min-height:40px!important}
 html body .frinet-v281-content table{display:table!important;min-width:640px!important}
 html body .frinet-v281-content .ci220-card{padding:12px!important}
 html body .frinet-v281-content :is(h1,h2){overflow-wrap:anywhere!important}
 html body .pt :is(.pt-btn,.pt-bt,button){min-height:42px!important}
}
@media(prefers-reduced-motion:reduce){
 html body .frinet-v281-shell *,html body .pt *{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
