
/* ==========================================================
   CHEF CONTROL — FINAL MOBILE UI
   ========================================================== */

:root{
--cc-bg:#f5f6f3;
--cc-card:#ffffff;
--cc-text:#172019;
--cc-soft:#5f6963;
--cc-muted:#7b847e;
--cc-line:#e2e6e2;

--cc-green:#215f46;
--cc-green-active:#194b38;
--cc-green-soft:#eaf2ed;

--cc-red:#d94141;
--cc-red-soft:#fdecec;

--cc-yellow:#b88314;
--cc-yellow-soft:#fff5d8;

--cc-radius:18px;
--cc-radius-button:14px;
--cc-max:620px;
}


/* Не трогаем утверждённый экран входа */

body:not(.cc-final-reference){
background:var(--cc-bg)!important;
color:var(--cc-text)!important;
-webkit-text-size-adjust:100%!important;
text-size-adjust:100%!important;
}


/* ОСНОВНАЯ МОБИЛЬНАЯ ОБЛАСТЬ */

body:not(.cc-final-reference) :is(
.wrap,
.container,
.content,
main
){
width:100%!important;
max-width:var(--cc-max)!important;
margin-left:auto!important;
margin-right:auto!important;
padding-left:16px!important;
padding-right:16px!important;
box-sizing:border-box!important;
}


/* ТИПОГРАФИКА */

body:not(.cc-final-reference) h1{
font-size:clamp(30px,8vw,38px)!important;
line-height:1.04!important;
font-weight:850!important;
letter-spacing:-.035em!important;
}

body:not(.cc-final-reference) h2{
font-size:clamp(23px,6vw,29px)!important;
line-height:1.08!important;
font-weight:850!important;
}

body:not(.cc-final-reference) h3{
font-size:20px!important;
line-height:1.15!important;
font-weight:820!important;
}

body:not(.cc-final-reference) :is(
p,
.sub,
.desc,
.subtitle,
.message,
.restaurant,
.employee-role,
.user-role,
.item-description,
.check-description
){
font-size:16px!important;
line-height:1.38!important;
color:var(--cc-soft)!important;
}

body:not(.cc-final-reference) :is(
.label,
.status-title,
.stat-label,
small
){
font-size:14px!important;
line-height:1.3!important;
color:var(--cc-muted)!important;
}


/* КАРТОЧКИ */

body:not(.cc-final-reference) :is(
.card,
.panel,
.tile,
.block,
.section-card,
.item-card,
.employee-card,
.user-card
){
background:var(--cc-card)!important;
border:1px solid var(--cc-line)!important;
border-radius:var(--cc-radius)!important;
box-shadow:none!important;
margin-bottom:12px!important;
}

body:not(.cc-final-reference) .card{
padding:16px!important;
}


/* ПОЛЯ */

body:not(.cc-final-reference) :is(
input,
select,
textarea
){
font-size:16px!important;
color:var(--cc-text)!important;
background:#fff!important;
border:1px solid #d9dfda!important;
border-radius:14px!important;
box-shadow:none!important;
outline:none!important;
}

body:not(.cc-final-reference) :is(
input,
select
){
min-height:52px!important;
padding:0 15px!important;
}

body:not(.cc-final-reference) textarea{
min-height:88px!important;
padding:13px 15px!important;
}

body:not(.cc-final-reference) :is(
input,
select,
textarea
):focus{
border-color:var(--cc-green)!important;
box-shadow:0 0 0 3px rgba(33,95,70,.09)!important;
}


/* КНОПКИ — ЕДИНЫЙ РАЗМЕР */

body:not(.cc-final-reference) button,
body:not(.cc-final-reference) .btn{
min-height:50px!important;
padding:10px 16px!important;
border-radius:var(--cc-radius-button)!important;
font-size:16px!important;
line-height:1.15!important;
font-weight:800!important;
box-shadow:none!important;
}


/* ГЛАВНЫЕ КНОПКИ */

body:not(.cc-final-reference) :is(
.btn-primary,
.primary,
.primary-btn,
.open-btn,
.resolve,
.save-btn,
.submit-btn,
.start-btn,
button[type="submit"]
){
background:var(--cc-green)!important;
border-color:var(--cc-green)!important;
color:#fff!important;
}

body:not(.cc-final-reference) :is(
.btn-primary,
.primary,
.primary-btn,
.open-btn,
.resolve,
.save-btn,
.submit-btn,
.start-btn,
button[type="submit"]
):active{
background:var(--cc-green-active)!important;
transform:scale(.985)!important;
}


/* НЕАКТИВНАЯ КНОПКА */

body:not(.cc-final-reference) button:disabled{
background:#bdc7c0!important;
color:#fff!important;
opacity:1!important;
}


/* ГРУППЫ ДЕЙСТВИЙ */

body:not(.cc-final-reference) :is(
.actions,
.button-row,
.form-actions,
.employee-actions
){
display:grid!important;
grid-template-columns:repeat(
auto-fit,
minmax(135px,1fr)
)!important;
gap:9px!important;
}


/* КНОПКА КОНТРОЛЬ СЕГОДНЯ */

body:not(.cc-final-reference) #brandTodayButton{
position:relative!important;
left:auto!important;
right:auto!important;
top:auto!important;
bottom:auto!important;

width:calc(100% - 32px)!important;
max-width:588px!important;

height:52px!important;
min-height:52px!important;

margin:8px auto 14px!important;

background:#183f30!important;
color:#fff!important;

border-radius:14px!important;
box-shadow:none!important;
}


/* КНОПКА ПОМОЩИ */

body:not(.cc-final-reference) .chef-help-button{
position:relative!important;
right:auto!important;
bottom:auto!important;

width:auto!important;
min-height:42px!important;

margin:12px auto!important;

background:#e9efeb!important;
color:#235b43!important;

border-radius:21px!important;
box-shadow:none!important;
}


/* СТАТУСЫ */

body:not(.cc-final-reference) .status{
padding:11px!important;
background:#f8f9f7!important;
border:1px solid var(--cc-line)!important;
border-radius:13px!important;
}

body:not(.cc-final-reference) .value{
font-size:28px!important;
font-weight:900!important;
}

body:not(.cc-final-reference) :is(
.badge,
.status-badge,
.chip
){
font-size:13px!important;
padding:6px 9px!important;
border-radius:999px!important;
}


/* СТАТУСНЫЕ ЦВЕТА */

body:not(.cc-final-reference) :is(
.green,
.success,
.status-success
){
color:#237a4d!important;
}

body:not(.cc-final-reference) :is(
.red,
.danger,
.critical,
.status-danger
){
color:var(--cc-red)!important;
}

body:not(.cc-final-reference) :is(
.warning,
.yellow,
.status-warning
){
color:var(--cc-yellow)!important;
}


/* ФОТО */

body:not(.cc-final-reference) :is(
.photo-preview,
.photo-card,
.preview
){
border-radius:16px!important;
overflow:hidden!important;
border:1px solid var(--cc-line)!important;
box-shadow:none!important;
}

body:not(.cc-final-reference) :is(
.photo-preview,
.photo-card,
.preview
) img{
width:100%!important;
display:block!important;
object-fit:cover!important;
}


/* КНОПКА ДОБАВИТЬ ФОТО */

body:not(.cc-final-reference) :is(
.camera,
.photo-button,
.add-photo,
.upload-photo
){
min-height:50px!important;
background:#f5f7f5!important;
color:var(--cc-green)!important;
border:1px dashed #bfcac2!important;
border-radius:13px!important;
}


/* ТАБЛИЦЫ */

body:not(.cc-final-reference) table{
font-size:14px!important;
}

body:not(.cc-final-reference) th{
font-size:13px!important;
color:var(--cc-muted)!important;
}


/* НИЖНЯЯ НАВИГАЦИЯ */

body:not(.cc-final-reference) :is(
.bottom-nav,
.bottom-navigation,
.tabbar,
.tab-bar,
.mobile-nav
){
background:rgba(255,255,255,.97)!important;
border-top:1px solid var(--cc-line)!important;
box-shadow:none!important;
padding-bottom:env(safe-area-inset-bottom)!important;
}


/* НИЖНЯЯ ПОДПИСЬ */

body:not(.cc-final-reference) :is(
.chef-credit,
.chef-login-credit,
.chef-final-credit
){
max-width:var(--cc-max)!important;
margin:20px auto 0!important;
padding:
14px 16px
calc(14px + env(safe-area-inset-bottom))
!important;

font-size:12px!important;
color:#8a938c!important;

border-top:1px solid var(--cc-line)!important;
}


/* iPHONE */

@media(max-width:600px){

body:not(.cc-final-reference) .summary{
gap:8px!important;
}

body:not(.cc-final-reference) .stat{
padding:12px!important;
}

body:not(.cc-final-reference) .row{
gap:8px!important;
}

}


/* ОЧЕНЬ УЗКИЕ ЭКРАНЫ */

@media(max-width:390px){

body:not(.cc-final-reference) :is(
.actions,
.button-row,
.form-actions
){
grid-template-columns:1fr!important;
}

body:not(.cc-final-reference) h1{
font-size:29px!important;
}

}



/* ==========================================================
   CLEAN BRANDING
   ========================================================== */

#ccDeveloperTop{
position:fixed;
z-index:9999;

top:calc(6px + env(safe-area-inset-top));
left:50%;

transform:translateX(-50%);

max-width:calc(100% - 30px);

padding:5px 11px;

border-radius:999px;

background:rgba(255,255,255,.82);

-webkit-backdrop-filter:blur(10px);
backdrop-filter:blur(10px);

border:1px solid rgba(0,0,0,.05);

font-family:
-apple-system,
BlinkMacSystemFont,
"Segoe UI",
sans-serif;

font-size:11px!important;
line-height:1.2!important;

font-weight:650!important;

letter-spacing:.01em;

color:#58635d!important;

white-space:nowrap;

box-shadow:none!important;

pointer-events:none;
}


/* На тёмном экране входа */

body.cc-final-reference #ccDeveloperTop{
background:rgba(15,18,16,.48);
border-color:rgba(255,255,255,.12);
color:rgba(255,255,255,.82)!important;
}


/* Старые брендовые блоки */

.chef-credit,
.chef-login-credit,
.chef-final-credit,
.chef-clean-footer,
.cc-login-single-credit,
.cc-final-credit,
.chef-brand-name,
.chef-brand-sub{
display:none!important;
}


/* Старые логотипы/бренд-тексты */

.chef-login-brand{
display:none!important;
}


/* CHEF_CONTROL_DEVELOPER_LABEL_SCROLL_FIX */

#ccDeveloperTop,
.developer{
position:absolute!important;
top:calc(8px + env(safe-area-inset-top))!important;
z-index:20!important;
}



/* ==========================================================
   CHEF CONTROL — MINIMAL UI V1
   ========================================================== */

:root{

--cc-bg:#f6f7f5;
--cc-card:#ffffff;

--cc-text:#172019;
--cc-text-2:#5f6963;
--cc-text-3:#8a928d;

--cc-green:#245c46;
--cc-green-dark:#194532;
--cc-green-soft:#edf4ef;

--cc-red:#b84343;
--cc-red-soft:#faeeee;

--cc-yellow:#9a741d;
--cc-yellow-soft:#faf4df;

--cc-border:#e1e5e1;

--cc-radius:16px;
--cc-radius-small:12px;

--cc-page:620px;

}


/* ---------- BASE ---------- */

html{
background:var(--cc-bg)!important;
}

body{

margin:0!important;

background:
var(--cc-bg)!important;

color:
var(--cc-text)!important;

font-family:
-apple-system,
BlinkMacSystemFont,
"SF Pro Text",
"Segoe UI",
Arial,
sans-serif!important;

font-size:16px!important;

line-height:1.45!important;

-webkit-font-smoothing:
antialiased;

text-rendering:
optimizeLegibility;

}


/* Убираем старую декоративную типографику */

body *,
button,
input,
select,
textarea{

font-family:
-apple-system,
BlinkMacSystemFont,
"SF Pro Text",
"Segoe UI",
Arial,
sans-serif!important;

}


/* ---------- PAGE WIDTH ---------- */

main,
.container,
.shell,
.page,
.content{

max-width:
var(--cc-page)!important;

margin-left:auto!important;
margin-right:auto!important;

}


/* ---------- HEADINGS ---------- */

h1{

font-size:
clamp(30px,7vw,38px)!important;

line-height:
1.08!important;

font-weight:
800!important;

letter-spacing:
-.035em!important;

color:
var(--cc-text)!important;

margin-bottom:
10px!important;

}


h2{

font-size:
22px!important;

line-height:
1.2!important;

font-weight:
750!important;

letter-spacing:
-.02em!important;

color:
var(--cc-text)!important;

}


h3{

font-size:
18px!important;

font-weight:
750!important;

color:
var(--cc-text)!important;

}


/* ---------- SECONDARY TEXT ---------- */

.sub,
.subtitle,
.description,
.help,
.note,
.meta,
small{

color:
var(--cc-text-2)!important;

}


/* ---------- CARDS ---------- */

.card,
.section,
.panel,
.restaurant,
.employee,
.shift,
.stat,
.metric,
.photo-card,
.check-card,
[class*="card"]{

background:
var(--cc-card)!important;

border:
1px solid var(--cc-border)!important;

border-radius:
var(--cc-radius)!important;

box-shadow:
none!important;

}


/* ---------- BUTTONS ---------- */

button,
.button,
.btn{

min-height:
46px;

border-radius:
var(--cc-radius-small)!important;

font-size:
15px!important;

font-weight:
700!important;

letter-spacing:
-.01em!important;

box-shadow:
none!important;

transition:
opacity .15s ease,
transform .1s ease!important;

}


button:active,
.button:active,
.btn:active{

transform:
scale(.985);

}


/* PRIMARY */

button.primary,
.btn-primary,
.save,
.open,
.events-button{

background:
var(--cc-green)!important;

color:#fff!important;

border:
0!important;

}


/* SECONDARY */

button.secondary,
.btn-secondary,
.cancel,
.refresh{

background:
var(--cc-card)!important;

color:
var(--cc-text)!important;

border:
1px solid var(--cc-border)!important;

}


/* ---------- INPUTS ---------- */

input,
select,
textarea{

background:
#fff!important;

color:
var(--cc-text)!important;

border:
1px solid var(--cc-border)!important;

border-radius:
var(--cc-radius-small)!important;

box-shadow:
none!important;

font-size:
16px!important;

outline:none!important;

}


input,
select{

min-height:
50px!important;

}


input:focus,
select:focus,
textarea:focus{

border-color:
var(--cc-green)!important;

box-shadow:
0 0 0 3px
rgba(36,92,70,.08)!important;

}


/* ---------- PROGRESS ---------- */

progress,
.progress,
.progress-bar{

border-radius:
999px!important;

overflow:hidden!important;

}


.progress > *,
.progress-fill,
.progress-bar > *{

background:
var(--cc-green)!important;

}


/* ---------- STATUS ---------- */

.ok,
.success,
.completed{

color:
var(--cc-green)!important;

}


.warning{

color:
var(--cc-yellow)!important;

}


.error,
.danger,
.critical{

color:
var(--cc-red)!important;

}


/* ---------- TABLE / DIVIDERS ---------- */

hr{

border:0!important;

border-top:
1px solid var(--cc-border)!important;

}


/* ---------- DEVELOPER LABEL ---------- */

#ccDeveloperTop,
.developer{

background:
rgba(255,255,255,.94)!important;

border:
1px solid var(--cc-border)!important;

border-radius:
999px!important;

color:
var(--cc-text-2)!important;

font-size:
11px!important;

font-weight:
650!important;

letter-spacing:
.01em!important;

box-shadow:
none!important;

}


/* ---------- MOBILE ---------- */

@media(max-width:640px){

body{

font-size:
16px!important;

}

main,
.container,
.shell,
.page,
.content{

padding-left:
16px!important;

padding-right:
16px!important;

}

h1{

font-size:
34px!important;

}

}


/* ---------- REMOVE VISUAL NOISE ---------- */

.shadow,
[class*="shadow"]{

box-shadow:
none!important;

}


.gradient,
[class*="gradient"]{

background-image:
none!important;

}



/* ==========================================================
   CHEF CONTROL — MINIMAL UI V2
   WORK SCREENS
   ========================================================== */


/* ---------- GENERAL WORK PAGES ---------- */

body.cc-opening,
body.cc-closing,
body.cc-brand-dashboard,
body.cc-employees{

background:#f6f7f5!important;
color:#172019!important;

}


/* больше воздуха сверху */

body.cc-opening main,
body.cc-closing main,
body.cc-brand-dashboard main,
body.cc-employees main,
body.cc-opening .shell,
body.cc-closing .shell,
body.cc-brand-dashboard .shell,
body.cc-employees .shell{

padding-top:
calc(58px + env(safe-area-inset-top))!important;

}


/* ---------- BACK / TOP CONTROLS ---------- */

body.cc-opening .back,
body.cc-closing .back,
body.cc-brand-dashboard .back,
body.cc-employees .back{

color:#245c46!important;
font-weight:700!important;
text-decoration:none!important;

}


/* ---------- TITLES ---------- */

body.cc-opening h1,
body.cc-closing h1,
body.cc-brand-dashboard h1,
body.cc-employees h1{

margin-top:22px!important;
margin-bottom:10px!important;

font-size:34px!important;
font-weight:800!important;
line-height:1.08!important;

letter-spacing:-.035em!important;

}


/* ---------- CARDS ---------- */

body.cc-opening .section,
body.cc-opening .card,

body.cc-closing .section,
body.cc-closing .card,

body.cc-brand-dashboard .restaurant,
body.cc-brand-dashboard .stat,

body.cc-employees .employee,
body.cc-employees .stat{

background:#fff!important;

border:
1px solid #e1e5e1!important;

border-radius:
16px!important;

box-shadow:
none!important;

}


/* ---------- OPENING / CLOSING SECTIONS ---------- */

body.cc-opening a.section,
body.cc-closing a.section,
body.cc-opening .section,
body.cc-closing .section{

min-height:88px!important;

padding:
16px 18px!important;

margin-bottom:
10px!important;

}


/* заголовок секции */

body.cc-opening .section-title,
body.cc-closing .section-title,
body.cc-opening .section strong,
body.cc-closing .section strong{

font-size:18px!important;
font-weight:750!important;
line-height:1.25!important;

}


/* цифры прогресса */

body.cc-opening .section small,
body.cc-closing .section small,
body.cc-opening .section .meta,
body.cc-closing .section .meta{

font-size:13px!important;
color:#7b847e!important;

}


/* ---------- MAIN PROGRESS ---------- */

body.cc-opening .progress,
body.cc-closing .progress{

height:9px!important;

background:#e9eeea!important;

border-radius:999px!important;

overflow:hidden!important;

}


body.cc-opening .progress-fill,
body.cc-closing .progress-fill{

background:#245c46!important;
border-radius:999px!important;

}


/* ---------- REQUIRED PHOTOS ---------- */

body.cc-opening #requiredPhotoPanel,
body.cc-closing #requiredPhotoPanel{

padding:16px!important;

margin:
14px 0 18px!important;

background:#fff!important;

border:
1px solid #e1e5e1!important;

border-radius:
16px!important;

box-shadow:none!important;

}


body.cc-opening #requiredPhotoPanel .rp-title,
body.cc-closing #requiredPhotoPanel .rp-title{

font-size:17px!important;
font-weight:800!important;

}


body.cc-opening #requiredPhotoPanel .rp-item,
body.cc-closing #requiredPhotoPanel .rp-item{

padding:
14px 0!important;

}


body.cc-opening #requiredPhotoPanel .rp-name,
body.cc-closing #requiredPhotoPanel .rp-name{

font-size:15px!important;
font-weight:700!important;

}


body.cc-opening #requiredPhotoPanel .rp-state,
body.cc-closing #requiredPhotoPanel .rp-state{

font-size:12px!important;

}


body.cc-opening #requiredPhotoPanel .rp-upload,
body.cc-closing #requiredPhotoPanel .rp-upload{

min-width:118px!important;
height:42px!important;

padding:0 12px!important;

border-radius:11px!important;

background:#245c46!important;

font-size:13px!important;
font-weight:700!important;

}


/* красный крест делаем спокойнее */

body.cc-opening #requiredPhotoPanel .rp-state:not(.ok),
body.cc-closing #requiredPhotoPanel .rp-state:not(.ok){

color:#9a5555!important;

}


/* ---------- BRAND DASHBOARD ---------- */

body.cc-brand-dashboard .summary{

gap:8px!important;

}


body.cc-brand-dashboard .stat{

padding:14px 12px!important;

}


body.cc-brand-dashboard .stat .value{

font-size:26px!important;
font-weight:800!important;

}


body.cc-brand-dashboard .restaurant{

padding:16px!important;
margin-bottom:10px!important;

}


body.cc-brand-dashboard .restaurant .name{

font-size:18px!important;
font-weight:800!important;

}


body.cc-brand-dashboard .events-button,
body.cc-brand-dashboard .daily-report-button,
body.cc-brand-dashboard .employee-management-button,
body.cc-brand-dashboard .schedule-button{

height:48px!important;

margin-bottom:9px!important;

border-radius:13px!important;

font-size:14px!important;
font-weight:700!important;

}


/* ---------- EMPLOYEES ---------- */

body.cc-employees .stats{

gap:8px!important;

}


body.cc-employees .employee{

padding:15px!important;
margin-bottom:9px!important;

}


body.cc-employees .employee-name{

font-size:17px!important;
font-weight:800!important;

}


body.cc-employees .meta{

font-size:12px!important;
line-height:1.45!important;

}


body.cc-employees .edit{

height:42px!important;

margin-top:10px!important;

background:#245c46!important;

border-radius:11px!important;

font-size:13px!important;
font-weight:700!important;

}


/* ---------- BADGES ---------- */

body.cc-employees .status,
body.cc-brand-dashboard .badge,
body.cc-brand-dashboard .day-status{

border-radius:999px!important;

font-size:10px!important;

font-weight:750!important;

padding:5px 8px!important;

}


/* ---------- MODALS ---------- */

body.cc-employees .modal-box,
body.cc-opening .cc-photo-gate-box,
body.cc-closing .cc-photo-gate-box{

border-radius:20px!important;

border:
1px solid #e1e5e1!important;

box-shadow:
0 18px 45px rgba(20,30,24,.14)!important;

}


/* ---------- REMOVE DECORATIVE ICONS ---------- */

body.cc-opening .cc-remove-top-side,
body.cc-closing .cc-remove-top-side,
body.cc-brand-dashboard .cc-remove-top-side,
body.cc-employees .cc-remove-top-side{

display:none!important;

}


/* ---------- IPHONE COMPACT ---------- */

@media(max-width:430px){

body.cc-opening main,
body.cc-closing main,
body.cc-brand-dashboard main,
body.cc-employees main,
body.cc-opening .shell,
body.cc-closing .shell,
body.cc-brand-dashboard .shell,
body.cc-employees .shell{

padding-left:14px!important;
padding-right:14px!important;

}


body.cc-opening h1,
body.cc-closing h1,
body.cc-brand-dashboard h1,
body.cc-employees h1{

font-size:32px!important;

}


body.cc-opening #requiredPhotoPanel .rp-item,
body.cc-closing #requiredPhotoPanel .rp-item{

gap:8px!important;

}


body.cc-opening #requiredPhotoPanel .rp-upload,
body.cc-closing #requiredPhotoPanel .rp-upload{

min-width:108px!important;

}

}



/* ==========================================================
   CHEF CONTROL — MINIMAL UI V3 FINAL
   ========================================================== */


/* ---------- LOGIN ---------- */

body.cc-login{

background:#f6f7f5!important;

min-height:100vh!important;

color:#172019!important;

}


body.cc-login main,
body.cc-login .container,
body.cc-login .login-container,
body.cc-login .login-card{

max-width:560px!important;

margin-left:auto!important;
margin-right:auto!important;

}


/* убираем боковой визуальный шум */

body.cc-login .cc-remove-top-side{
display:none!important;
}

body.cc-login [class*="logo"],
body.cc-login [class*="avatar"],
body.cc-login [class*="profile"],
body.cc-login [class*="user-icon"]{

box-shadow:none!important;

}


/* центральная подпись */

body.cc-login #ccDeveloperTop,
body.cc-login .developer{

position:absolute!important;

top:
calc(12px + env(safe-area-inset-top))!important;

left:50%!important;

transform:
translateX(-50%)!important;

font-size:11px!important;

font-weight:650!important;

padding:6px 11px!important;

background:#fff!important;

border:
1px solid #e3e7e3!important;

white-space:nowrap!important;

}


/* основной блок входа */

body.cc-login form,
body.cc-login .login-form{

background:transparent!important;

border:0!important;

box-shadow:none!important;

padding:0!important;

}


/* заголовок */

body.cc-login h1{

font-size:
clamp(34px,8vw,46px)!important;

line-height:1.02!important;

font-weight:800!important;

letter-spacing:-.045em!important;

margin-top:
28px!important;

margin-bottom:
10px!important;

}


/* подпись */

body.cc-login h1 + *,
body.cc-login .subtitle{

color:#69736d!important;

}


/* labels */

body.cc-login label{

display:block!important;

margin:
17px 0 7px!important;

font-size:14px!important;

font-weight:700!important;

color:#28322c!important;

}


/* selects / pin */

body.cc-login select,
body.cc-login input{

height:54px!important;

border:
1px solid #dfe4df!important;

border-radius:14px!important;

padding:
0 15px!important;

background:#fff!important;

font-size:16px!important;

color:#172019!important;

box-shadow:none!important;

}


/* вход */

body.cc-login button[type="submit"],
body.cc-login .login-button,
body.cc-login .primary{

width:100%!important;

height:54px!important;

margin-top:20px!important;

border:0!important;

border-radius:14px!important;

background:#245c46!important;

color:#fff!important;

font-size:16px!important;

font-weight:750!important;

box-shadow:none!important;

}


body.cc-login button:disabled{

background:#cbd2cd!important;

color:#fff!important;

opacity:1!important;

}


/* ---------- EMPLOYEE HOME ---------- */

body.cc-work-dashboard{

background:#f6f7f5!important;

}


body.cc-work-dashboard main,
body.cc-work-dashboard .container,
body.cc-work-dashboard .shell{

max-width:620px!important;

padding:
calc(58px + env(safe-area-inset-top))
14px
calc(30px + env(safe-area-inset-bottom))!important;

}


/* приветствие */

body.cc-work-dashboard h1{

font-size:32px!important;

line-height:1.08!important;

font-weight:800!important;

letter-spacing:-.035em!important;

}


/* рабочие карточки */

body.cc-work-dashboard .card,
body.cc-work-dashboard .action-card,
body.cc-work-dashboard [class*="card"]{

background:#fff!important;

border:
1px solid #e1e5e1!important;

border-radius:16px!important;

box-shadow:none!important;

padding:16px!important;

margin-bottom:10px!important;

}


/* крупное действие */

body.cc-work-dashboard a,
body.cc-work-dashboard button{

text-decoration:none!important;

}


/* зелёные рабочие кнопки */

body.cc-work-dashboard .primary,
body.cc-work-dashboard .open,
body.cc-work-dashboard .start,
body.cc-work-dashboard .action-primary{

background:#245c46!important;

color:#fff!important;

border:0!important;

border-radius:13px!important;

}


/* вторичные */

body.cc-work-dashboard .secondary,
body.cc-work-dashboard .action-secondary{

background:#fff!important;

color:#245c46!important;

border:
1px solid #dfe4df!important;

}


/* ---------- CLEAN STATUS COLORS ---------- */

body.cc-work-dashboard .green,
body.cc-opening .green,
body.cc-closing .green{

background:#edf4ef!important;
color:#245c46!important;

}


body.cc-work-dashboard .red,
body.cc-opening .red,
body.cc-closing .red{

background:#faeeee!important;
color:#a74343!important;

}


body.cc-work-dashboard .yellow,
body.cc-opening .yellow,
body.cc-closing .yellow{

background:#faf4df!important;
color:#92701b!important;

}


/* ---------- REMOVE EXCESS DECORATION ---------- */

body.cc-login *,
body.cc-work-dashboard *,
body.cc-opening *,
body.cc-closing *,
body.cc-brand-dashboard *,
body.cc-employees *{

text-shadow:none!important;

}


/* никакого чрезмерного градиента */

body.cc-login [style*="gradient"],
body.cc-work-dashboard [style*="gradient"]{

background-image:none!important;

}


/* ---------- BETTER TAP TARGETS ---------- */

body.cc-login button,
body.cc-work-dashboard button,
body.cc-opening button,
body.cc-closing button,
body.cc-brand-dashboard button,
body.cc-employees button{

-webkit-tap-highlight-color:
transparent!important;

}


/* ---------- IPHONE ---------- */

@media(max-width:430px){

body.cc-login main,
body.cc-login .container,
body.cc-login .login-container{

padding-left:18px!important;
padding-right:18px!important;

}


body.cc-login h1{

font-size:38px!important;

}


body.cc-work-dashboard h1{

font-size:30px!important;

}

}


/* ---------- FINAL TOP CLEANUP ---------- */

#ccDeveloperTop,
.developer{

box-shadow:none!important;

}


/* всё, что ранее определили как боковой декор */

.cc-remove-top-side{

display:none!important;

}


/* ==========================================================
   LOGIN CENTER ALIGN PATCH
   ========================================================== */

body.cc-login{
  background:#f6f7f5!important;
}

body.cc-login main,
body.cc-login .container,
body.cc-login .login-container,
body.cc-login .login-card{
  max-width:560px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-top:calc(88px + env(safe-area-inset-top))!important;
  padding-left:18px!important;
  padding-right:18px!important;
}

/* верхняя подпись */
body.cc-login #ccDeveloperTop,
body.cc-login .developer{
  position:static!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  transform:none!important;
  margin:0 auto 20px auto!important;
  display:table!important;
  text-align:center!important;
}

/* общий блок */
body.cc-login form,
body.cc-login .login-form{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
}

/* тексты по центру */
body.cc-login h1,
body.cc-login .subtitle,
body.cc-login p,
body.cc-login .description{
  text-align:center!important;
}

body.cc-login h1{
  margin-top:8px!important;
  margin-bottom:14px!important;
}

body.cc-login .subtitle{
  margin-bottom:26px!important;
  color:#69736d!important;
}

/* подписи к полям */
body.cc-login label{
  text-align:center!important;
  margin:16px 0 8px!important;
}

/* поля и кнопка */
body.cc-login select,
body.cc-login input,
body.cc-login button[type="submit"],
body.cc-login .login-button,
body.cc-login .primary{
  width:100%!important;
  text-align:center!important;
}

body.cc-login select,
body.cc-login input{
  height:56px!important;
  border-radius:16px!important;
}

body.cc-login button[type="submit"],
body.cc-login .login-button,
body.cc-login .primary{
  height:56px!important;
  border-radius:16px!important;
  margin-top:22px!important;
}

/* нижнюю пустую полоску/лишний блок прячем, если есть */
body.cc-login .footer-spacer,
body.cc-login .bottom-spacer,
body.cc-login .login-extra-empty{
  display:none!important;
}

@media (max-width:430px){
  body.cc-login main,
  body.cc-login .container,
  body.cc-login .login-container,
  body.cc-login .login-card{
    padding-top:calc(108px + env(safe-area-inset-top))!important;
  }

  body.cc-login h1{
    font-size:38px!important;
    line-height:1.05!important;
  }
}



/* ==========================================================
   CHEF CONTROL — LOGIN COMPACT ONE SCREEN V3
   ========================================================== */

body.cc-login-centered-v2{
    min-height:100dvh!important;
    background:#f6f7f5!important;
}


/* общий блок выше и компактнее */

body.cc-login-centered-v2 .cc-login-shell-v2{
    width:100%!important;
    max-width:600px!important;

    margin:0 auto!important;

    padding:
        calc(70px + env(safe-area-inset-top))
        18px
        22px!important;
}


/* подпись разработчика снова наверх */

body.cc-login-centered-v2 #ccDeveloperTop,
body.cc-login-centered-v2 .developer{
    position:absolute!important;

    top:
        calc(12px + env(safe-area-inset-top))!important;

    left:50%!important;

    transform:
        translateX(-50%)!important;

    margin:0!important;

    padding:4px 10px!important;

    font-size:10px!important;
    line-height:1.2!important;

    font-weight:650!important;

    white-space:nowrap!important;

    z-index:30!important;
}


/* главный заголовок */

body.cc-login-centered-v2 h1{
    max-width:560px!important;

    margin:
        0 auto
        8px!important;

    font-size:31px!important;
    line-height:1.02!important;

    font-weight:800!important;

    letter-spacing:-.035em!important;

    text-align:center!important;
}


/* подзаголовок */

body.cc-login-centered-v2 .subtitle,
body.cc-login-centered-v2 .description,
body.cc-login-centered-v2 h1 + p{
    margin:
        0 auto
        18px!important;

    font-size:17px!important;
    line-height:1.25!important;

    text-align:center!important;
}


/* форма */

body.cc-login-centered-v2 form,
body.cc-login-centered-v2 .login-form{
    width:100%!important;
    max-width:560px!important;

    margin:
        18px auto
        0!important;

    padding:0!important;
}


/* подписи */

body.cc-login-centered-v2 label{
    margin:
        11px 0
        6px!important;

    font-size:17px!important;
    line-height:1.15!important;

    font-weight:750!important;

    text-align:center!important;
}


/* поля */

body.cc-login-centered-v2 select,
body.cc-login-centered-v2 input{
    height:50px!important;

    min-height:50px!important;

    padding:
        0 13px!important;

    border-radius:14px!important;

    font-size:15px!important;

    text-align:center!important;
    text-align-last:center!important;
}


/* PIN */

body.cc-login-centered-v2 input[type="password"]{
    letter-spacing:.14em!important;
}


/* кнопка */

body.cc-login-centered-v2 button[type="submit"],
body.cc-login-centered-v2 .login-button{
    height:50px!important;
    min-height:50px!important;

    margin-top:16px!important;

    border-radius:14px!important;

    font-size:16px!important;
}


/* дополнительные пустые элементы снизу */

body.cc-login-centered-v2 .footer-spacer,
body.cc-login-centered-v2 .bottom-spacer,
body.cc-login-centered-v2 .login-extra-empty{
    display:none!important;
}


/* iPhone */

@media(max-width:430px){

    body.cc-login-centered-v2 .cc-login-shell-v2{
        padding-top:
            calc(66px + env(safe-area-inset-top))!important;

        padding-left:16px!important;
        padding-right:16px!important;
    }

    body.cc-login-centered-v2 h1{
        font-size:29px!important;
    }

    body.cc-login-centered-v2 .subtitle,
    body.cc-login-centered-v2 .description,
    body.cc-login-centered-v2 h1 + p{
        font-size:16px!important;
        margin-bottom:14px!important;
    }

    body.cc-login-centered-v2 form,
    body.cc-login-centered-v2 .login-form{
        margin-top:14px!important;
    }

    body.cc-login-centered-v2 label{
        font-size:16px!important;
        margin-top:9px!important;
    }

    body.cc-login-centered-v2 select,
    body.cc-login-centered-v2 input{
        height:48px!important;
        min-height:48px!important;
    }

    body.cc-login-centered-v2 button[type="submit"],
    body.cc-login-centered-v2 .login-button{
        height:49px!important;
        min-height:49px!important;
        margin-top:14px!important;
    }

}


/* ==========================================================
   LOGIN EXTRA COMPACT -20%
   ========================================================== */

body.cc-login-centered-v2 .cc-login-shell-v2{
    padding-top:
        calc(54px + env(safe-area-inset-top))!important;

    padding-bottom:
        16px!important;
}

/* разработчик */
body.cc-login-centered-v2 #ccDeveloperTop,
body.cc-login-centered-v2 .developer{
    top:
        calc(9px + env(safe-area-inset-top))!important;

    padding:
        3px 8px!important;

    font-size:
        9px!important;
}

/* заголовок */
body.cc-login-centered-v2 h1{
    font-size:
        25px!important;

    line-height:
        1.02!important;

    margin-bottom:
        6px!important;
}

/* подзаголовок */
body.cc-login-centered-v2 .subtitle,
body.cc-login-centered-v2 .description,
body.cc-login-centered-v2 h1 + p{
    font-size:
        14px!important;

    margin-bottom:
        10px!important;
}

/* форма */
body.cc-login-centered-v2 form,
body.cc-login-centered-v2 .login-form{
    margin-top:
        9px!important;
}

/* подписи */
body.cc-login-centered-v2 label{
    font-size:
        14px!important;

    margin:
        7px 0
        5px!important;
}

/* поля */
body.cc-login-centered-v2 select,
body.cc-login-centered-v2 input{
    height:
        42px!important;

    min-height:
        42px!important;

    font-size:
        14px!important;

    border-radius:
        12px!important;
}

/* кнопка */
body.cc-login-centered-v2 button[type="submit"],
body.cc-login-centered-v2 .login-button{
    height:
        43px!important;

    min-height:
        43px!important;

    margin-top:
        10px!important;

    font-size:
        14px!important;

    border-radius:
        12px!important;
}

/* меньше расстояния между блоками */
body.cc-login-centered-v2 .field,
body.cc-login-centered-v2 .form-group{
    margin-bottom:
        6px!important;
}

@media(max-width:430px){

    body.cc-login-centered-v2 .cc-login-shell-v2{
        padding-top:
            calc(52px + env(safe-area-inset-top))!important;
    }

    body.cc-login-centered-v2 h1{
        font-size:
            24px!important;
    }

    body.cc-login-centered-v2 .subtitle,
    body.cc-login-centered-v2 .description,
    body.cc-login-centered-v2 h1 + p{
        font-size:
            13px!important;
    }

}


/* CHEF_CONTROL_DEVELOPER_LABEL_TOP_V4 */

body.cc-login-centered-v2 #ccDeveloperTop,
body.cc-login-centered-v2 .developer{
    position:fixed!important;

    top:
        calc(8px + env(safe-area-inset-top))!important;

    bottom:auto!important;

    left:50%!important;
    right:auto!important;

    transform:
        translateX(-50%)!important;

    margin:0!important;

    z-index:9999!important;

    padding:4px 10px!important;

    font-size:10px!important;
    line-height:1.2!important;

    background:
        rgba(255,255,255,.96)!important;

    border:
        1px solid #e1e5e1!important;

    border-radius:999px!important;

    white-space:nowrap!important;
}


/* CHEF CONTROL LOGIN FINAL CLEAN V11 */

body.cc-login-final-v10 #ccDeveloperFinal{
    display:block!important;
    position:fixed!important;

    top:calc(8px + env(safe-area-inset-top))!important;
    left:50%!important;
    transform:translateX(-50%)!important;

    width:max-content!important;
    max-width:92vw!important;

    margin:0!important;
    padding:4px 10px!important;

    z-index:99999!important;

    font-size:10px!important;
    line-height:1.2!important;
    font-weight:700!important;

    color:#657069!important;
    background:#fff!important;

    border:1px solid #e0e5e1!important;
    border-radius:999px!important;

    opacity:1!important;
    visibility:visible!important;
    white-space:nowrap!important;
}


/* чуть опускаем весь основной контент,
   чтобы он не пересекался с подписью */

body.cc-login-final-v10 .cc-login-final-shell{
    padding-top:
        calc(62px + env(safe-area-inset-top))!important;
}


/* ещё компактнее вертикальные интервалы */

body.cc-login-final-v10 h1{
    margin-bottom:4px!important;
}

body.cc-login-final-v10 .subtitle,
body.cc-login-final-v10 .description,
body.cc-login-final-v10 h1 + p{
    margin-bottom:7px!important;
}

body.cc-login-final-v10 form,
body.cc-login-final-v10 .login-form{
    margin-top:5px!important;
}

body.cc-login-final-v10 label{
    margin-top:5px!important;
    margin-bottom:3px!important;
}


/* убираем пустой овальный блок после кнопки */

body.cc-login-final-v10 button[type="submit"] ~ div:empty,
body.cc-login-final-v10 .login-button ~ div:empty,
body.cc-login-final-v10 form > div:empty:last-child{
    display:none!important;
}
