:root{
    --page:#f6f2eb;
    --page-2:#eef4f7;
    --surface:#ffffff;
    --surface-soft:#fbf8f2;
    --surface-warm:#fffaf1;
    --ink:#162033;
    --text:#344258;
    --muted:#7b8493;
    --navy:#17385c;
    --navy-2:#23527e;
    --gold:#b88741;
    --gold-2:#d8b36f;
    --gold-soft:#fff3d9;
    --line:#e4d9ca;
    --line-2:#d3c2aa;
    --green:#1f8a5b;
    --green-soft:#eaf8ef;
    --red:#c24545;
    --red-soft:#fff0f0;
    --blue:#2d6cb2;
    --blue-soft:#edf5ff;
    --shadow-sm:0 8px 22px rgba(22,32,51,.06);
    --shadow-md:0 18px 48px rgba(22,32,51,.10);
    --shadow-lg:0 32px 90px rgba(22,32,51,.14);
    --radius-sm:14px;
    --radius:22px;
    --radius-lg:32px;
    --font-ui:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --font-display:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
*{box-sizing:border-box}
html{min-height:100%;scroll-behavior:smooth}
body{
    margin:0;
    min-height:100vh;
    font-family:var(--font-ui);
    color:var(--text);
    background:
        linear-gradient(135deg,rgba(255,255,255,.82),rgba(255,255,255,.34)),
        radial-gradient(circle at 0 0,rgba(216,179,111,.22),transparent 30%),
        radial-gradient(circle at 100% 0,rgba(35,82,126,.10),transparent 32%),
        linear-gradient(135deg,var(--page) 0%,#fbfaf7 46%,var(--page-2) 100%);
    letter-spacing:-.01em;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}
a{color:var(--navy-2);text-decoration:none;font-weight:800}
a:hover{color:var(--gold)}
.ambient-bg{
    position:fixed;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:
        linear-gradient(90deg,rgba(184,135,65,.045) 1px,transparent 1px),
        linear-gradient(0deg,rgba(23,56,92,.026) 1px,transparent 1px);
    background-size:64px 64px;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 78%);
}
.container{max-width:1280px;margin:32px auto;padding:0 24px}.auth-container{max-width:1220px;margin:0 auto;padding:0 24px}
/* Header */
.topbar{
    min-height:76px;
    padding:12px 28px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    position:sticky;
    top:0;
    z-index:30;
    background:rgba(255,255,255,.88);
    border-bottom:1px solid rgba(211,194,170,.72);
    backdrop-filter:blur(20px);
    box-shadow:0 10px 32px rgba(22,32,51,.06);
}
.brand{display:flex;align-items:center;gap:13px;color:var(--ink)}.brand:hover{color:var(--ink)}
.brand strong{display:block;font-size:18px;line-height:1;color:var(--ink);letter-spacing:-.03em}.brand span{display:block;margin-top:6px;color:#87622e;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:900}
.logo,.login-emblem,.kiosk-logo{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:#101b2c;
    font-weight:950;
    letter-spacing:.10em;
    background:linear-gradient(145deg,#fff7e8 0%,#e8cf9c 48%,#c08d43 100%);
    border:1px solid rgba(184,135,65,.36);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.84), 0 10px 24px rgba(184,135,65,.18);
}
.logo{width:50px;height:50px;border-radius:17px;font-size:15px}.topbar nav{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.topbar nav a,.user-pill{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    border:1px solid rgba(211,194,170,.82);
    border-radius:999px;
    padding:9px 13px;
    font-size:13px;
    line-height:1;
    color:#334861;
    background:rgba(255,255,255,.76);
    box-shadow:0 5px 14px rgba(22,32,51,.045);
    transition:.16s ease;
    white-space:nowrap;
}
.topbar nav a:hover{transform:translateY(-1px);background:#f4f8fc;border-color:#c6d8e9;color:var(--navy-2)}
.user-pill{background:linear-gradient(135deg,#fff7e7,#efd8aa);color:#65450f;font-weight:900;border-color:rgba(184,135,65,.36)}
.nav-logout{background:#fff6f6!important;border-color:#f0c6c6!important;color:#a63535!important}.nav-logout:hover{background:#ffeded!important;color:#8d2424!important}
/* Layout and cards */
.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.hero-head,.card{
    background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.88));
    border:1px solid rgba(211,194,170,.78);
    border-radius:var(--radius-lg);
    box-shadow:var(--shadow-md);
    position:relative;
    overflow:hidden;
}
.hero-head{padding:30px 32px}.hero-head:before,.hero-head:after,.card.glass-card:before,.stat-card:before{display:none!important;content:none!important}.hero-head:after{display:block!important;content:""!important;position:absolute;left:32px;right:32px;bottom:0;height:3px;background:linear-gradient(90deg,var(--gold),rgba(184,135,65,.08));border-radius:999px}
h1,.page-head h1{margin:.1rem 0;color:var(--ink);font-family:var(--font-display);font-size:35px;line-height:1.08;letter-spacing:-.045em}h2{color:var(--ink);letter-spacing:-.035em}.page-head p{margin:.4rem 0 0;color:var(--muted);max-width:820px;line-height:1.6}.eyebrow{font-size:12px;font-weight:950;letter-spacing:.17em;text-transform:uppercase;color:#9b6b25!important;margin:0 0 10px!important}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;position:relative;z-index:1}.card{padding:24px;margin-bottom:24px}.glass-card{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,250,242,.88))}.muted{color:var(--muted)}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.section-title h2{margin:0;font-size:24px}
/* Premium login */
.auth-page{
    overflow-x:hidden;
    background:
        linear-gradient(135deg,rgba(255,255,255,.78),rgba(255,255,255,.20)),
        radial-gradient(circle at 7% 10%,rgba(216,179,111,.25),transparent 30%),
        radial-gradient(circle at 94% 14%,rgba(35,82,126,.13),transparent 32%),
        linear-gradient(135deg,#f8f3ea 0%,#fbfaf8 48%,#eef5f7 100%);
}
.auth-page .ambient-bg{opacity:.78}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:42px;align-items:center;color:var(--ink)}
.login-hero{
    padding:48px;
    border-radius:38px;
    background:rgba(255,255,255,.36);
    border:1px solid rgba(255,255,255,.58);
    box-shadow:0 30px 90px rgba(22,32,51,.08);
    backdrop-filter:blur(18px);
}
.login-hero:before,.login-hero:after{display:none!important}.login-emblem{width:86px;height:86px;border-radius:28px;font-size:27px;margin-bottom:28px}.login-hero h1{font-size:60px;line-height:1;max-width:760px;margin:0 0 18px}.login-hero p{font-size:18px;color:#626d7d;max-width:690px;line-height:1.65}.login-highlights{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.login-highlights span{border:1px solid rgba(211,194,170,.82);background:rgba(255,255,255,.74);border-radius:999px;padding:11px 16px;color:#34485e;font-weight:900;box-shadow:var(--shadow-sm)}
.login-card{
    margin:0;
    padding:32px;
    border-radius:30px;
    background:#fff;
    border:1px solid rgba(211,194,170,.86);
    box-shadow:0 28px 80px rgba(22,32,51,.13);
    position:relative;
    overflow:visible;
}
.login-card:before{content:"";display:block;width:52px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--gold),var(--gold-2));margin:0 0 22px}.login-card:after{content:"Güvenli resepsiyon erişimi";display:block;margin-top:18px;text-align:center;color:#8a672e;font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:950}.login-card h2{font-size:30px;margin:0 0 22px;color:var(--ink)}.login-card .form{display:grid;gap:14px}.login-card input{height:48px}.login-demo{margin-top:20px;border:1px solid #ecd9b7;border-radius:18px;padding:15px 16px;background:#fff8e9;color:#69490e;line-height:1.72}.login-demo b{display:block;margin-bottom:2px}.login-demo code{background:#fff;color:var(--navy);border:1px solid #ead7b1;border-radius:9px;padding:3px 7px;font-weight:950;white-space:nowrap}
/* Buttons, forms */
.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(211,194,170,.9);background:#fff;color:#33475f;border-radius:999px;padding:11px 17px;font-weight:900;cursor:pointer;min-height:42px;text-decoration:none;box-shadow:var(--shadow-sm);transition:.16s ease}.btn:hover{text-decoration:none;background:#f4f8fc;border-color:#c4d7e8;color:var(--navy-2);transform:translateY(-1px);box-shadow:0 12px 28px rgba(22,32,51,.08)}.btn.primary{background:linear-gradient(135deg,var(--navy),var(--navy-2));border:0;color:#fff}.btn.primary:hover{color:#fff;filter:brightness(1.04)}.btn.danger{background:var(--red-soft);border-color:#f0bcbc;color:#a73535}.btn.danger:hover{background:#ffe8e8;color:#8d2323}.btn.small{padding:7px 11px;min-height:32px;font-size:12px}.btn.wide{width:100%}
.alert{padding:15px 17px;border-radius:18px;margin-bottom:18px;border:1px solid transparent;box-shadow:var(--shadow-sm);font-weight:850}.alert.success{background:var(--green-soft);border-color:#bde8cf;color:#16633f}.alert.error{background:var(--red-soft);border-color:#f3c4c4;color:#971f1f}.alert.info{background:var(--gold-soft);border-color:#efd7a5;color:#6f4d14}
.grid{display:grid;gap:18px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px}.stat-card{background:#fff;border:1px solid rgba(211,194,170,.82);border-radius:24px;padding:22px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--gold),rgba(216,179,111,.25))}.stat-card span{display:block;color:#936728;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.10em}.stat-card strong{font-size:54px;line-height:1.02;display:block;color:var(--ink);letter-spacing:-.06em;margin:5px 0}.stat-card small{color:var(--muted);font-weight:800}.floating-filter{background:rgba(255,255,255,.88);border:1px solid rgba(211,194,170,.78);border-radius:20px;padding:14px;display:inline-flex;box-shadow:var(--shadow-sm);backdrop-filter:blur(18px)}
.inline-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:20px}.inline-form label,.form label{display:flex;flex-direction:column;gap:7px;font-weight:900;font-size:13px;color:#3a4c63}.form input,.form select,.form textarea,.inline-form input,.inline-form select,.kiosk-date input,.mini-user-form input,.mini-user-form select{border:1px solid #d9d0c2;border-radius:15px;padding:12px 14px;font:inherit;font-weight:760;background:#fff;color:var(--text);outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.9);transition:.16s ease}.form input:focus,.form select:focus,.form textarea:focus,.inline-form input:focus,.inline-form select:focus,.kiosk-date input:focus,.mini-user-form input:focus,.mini-user-form select:focus{border-color:#99b5d0;box-shadow:0 0 0 4px rgba(35,82,126,.11)}.form textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:16px 0}.checkbox{flex-direction:row!important;align-items:center!important;font-weight:900}.checkbox input{width:auto}.day-checks{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}.day-checks label{background:#fff;border:1px solid rgba(211,194,170,.88);border-radius:999px;padding:9px 13px;font-weight:900;color:#3a4c63;box-shadow:var(--shadow-sm)}
/* Tables and utility */
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.data-table th,.data-table td{border-bottom:1px solid #eee6da;padding:14px;text-align:left;vertical-align:top}.data-table th{background:#f8f1e5;color:#25364a;white-space:nowrap;position:sticky;top:0;font-weight:950}.data-table th:first-child{border-top-left-radius:16px}.data-table th:last-child{border-top-right-radius:16px}.data-table tbody tr{background:rgba(255,255,255,.72);transition:.15s ease}.data-table tbody tr:hover{background:#fff9ec}.data-table.compact td,.data-table.compact th{text-align:center}.data-table.compact td:first-child,.data-table.compact th:first-child{text-align:left}.calendar-table td strong{font-size:22px;color:var(--ink)}.closed-cell{background:repeating-linear-gradient(135deg,#f4f1eb,#f4f1eb 8px,#ece5da 8px,#ece5da 16px)!important;color:#747d8c}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:950}.badge.booking{background:var(--blue-soft);color:#1b559c}.badge.manual{background:var(--gold-soft);color:#80540f}.badge.paid{background:var(--green-soft);color:#16633f}.badge.unpaid{background:var(--red-soft);color:#971f1f}.badge.admin{background:var(--blue-soft);color:#244e73}.badge.reception{background:var(--gold-soft);color:#765016}.log-list{display:grid;gap:10px}.log-item{border:1px solid rgba(211,194,170,.82);border-radius:18px;padding:13px;display:grid;grid-template-columns:190px 1fr 170px;gap:10px;align-items:center;background:#fff;box-shadow:var(--shadow-sm)}.log-item.ok{border-left:6px solid var(--green)}.log-item.bad{border-left:6px solid var(--red)}pre{white-space:pre-wrap;max-width:640px;background:#f6f1e9;color:#26364a;padding:13px;border-radius:14px;border:1px solid #e1d5c1}.mini-user-form{display:grid;grid-template-columns:1.1fr .85fr 1.1fr auto auto;gap:8px;align-items:center;min-width:760px}.mini-check{display:flex;gap:6px;align-items:center;font-size:12px;font-weight:900;color:#3a4c63}.mini-check input{width:auto}.form.reservation-form{margin-top:14px}
/* Kiosk: tek ekranda 21 oda */
.kiosk-body{min-height:100vh;height:100vh;overflow:hidden;background:linear-gradient(135deg,#f8f3eb 0%,#fbfaf7 48%,#eef5f7 100%);color:var(--text)}.kiosk-header{height:92px;display:flex;justify-content:space-between;align-items:center;padding:18px 28px;gap:18px;border-bottom:1px solid rgba(211,194,170,.72);background:rgba(255,255,255,.78);backdrop-filter:blur(18px)}.kiosk-title{display:flex;align-items:center;gap:14px}.kiosk-header h1{font-size:28px;line-height:1;margin:0;color:var(--ink);letter-spacing:-.04em}.kiosk-header p{color:var(--muted);margin:6px 0 0;font-weight:850}.kiosk-logo{width:58px;height:58px;border-radius:20px;font-size:18px}.kiosk-date{background:#fff;border:1px solid rgba(211,194,170,.86);border-radius:18px;padding:10px 12px;display:flex;gap:12px;align-items:center;box-shadow:var(--shadow-sm)}.kiosk-date label{display:flex;flex-direction:column;gap:5px;color:#3a4c63;font-weight:900;font-size:12px}.kiosk-date input{height:38px;padding:8px 10px;border-radius:12px}.kiosk-date span{background:var(--green-soft);color:#16633f;border:1px solid #bfe8cf;border-radius:999px;padding:8px 11px;font-weight:950;font-size:12px;white-space:nowrap}.kiosk-stats{height:102px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:14px 28px}.kiosk-stats div{background:#fff;border:1px solid rgba(211,194,170,.82);border-radius:20px;padding:13px 16px;box-shadow:var(--shadow-sm);display:grid;grid-template-columns:1fr auto;align-items:center}.kiosk-stats span{color:#8d6224;display:block;font-weight:950;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.kiosk-stats strong{font-size:44px;line-height:1;color:var(--ink);letter-spacing:-.06em}.kiosk-stats small{color:var(--muted);font-weight:850;grid-column:1 / -1;margin-top:2px}.kiosk-grid{height:calc(100vh - 228px);padding:8px 28px 12px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(112px,1fr);gap:12px}.kiosk-type{display:contents}.kiosk-type h2{display:none}.room-grid{display:contents}.room-card{position:relative;border-radius:20px;padding:14px 15px;min-height:0;height:100%;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-sm);transition:.15s ease;border:1px solid rgba(211,194,170,.82);background:#fff;overflow:visible}.room-card:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(22,32,51,.12)}.room-card.free{background:linear-gradient(180deg,#ffffff,#effaf4);color:#115f3e;border-color:#b9dfca}.room-card.occupied{background:linear-gradient(180deg,#ffffff,#fff0f0);color:#9b3030;border-color:#efc0c0}.room-card.booking-room{background:linear-gradient(180deg,#ffffff,#eef6ff);color:#1e578f;border-color:#bfd7f0}.room-card span{font-size:31px;font-weight:950;color:inherit;line-height:1}.room-card strong{font-size:22px;letter-spacing:-.04em;color:inherit}.room-card small{opacity:.96;font-weight:900;line-height:1.3}.room-card .room-type-label{display:block;margin-top:2px;color:#6d7685;font-size:11px;font-style:normal;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.room-card[data-tooltip]:hover:after{content:attr(data-tooltip);white-space:pre-line;position:absolute;left:8px;bottom:calc(100% + 10px);background:#172033;color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:12px;width:285px;z-index:100;box-shadow:0 24px 55px rgba(22,32,51,.30);font-size:13px;line-height:1.45}.kiosk-footer{height:34px;text-align:center;color:#7b8493;padding:5px 0 0;font-weight:850;font-size:12px}
@media(max-width:1280px){.kiosk-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.room-card{padding:12px}.room-card span{font-size:28px}.room-card strong{font-size:20px}.kiosk-header{height:84px}.kiosk-stats{height:92px}.kiosk-grid{height:calc(100vh - 210px)}}
@media(max-width:1040px){.login-shell{grid-template-columns:1fr;min-height:auto;padding:28px 0}.login-hero{padding:30px}.login-hero h1{font-size:46px}.stats-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.page-head{flex-direction:column}.log-item{grid-template-columns:1fr}.topbar{height:auto;align-items:flex-start;flex-direction:column;padding:18px}.topbar nav{justify-content:flex-start}.mini-user-form{grid-template-columns:1fr;min-width:280px}.kiosk-body{height:auto;overflow:auto}.kiosk-header{height:auto;flex-direction:column;align-items:flex-start;padding:18px}.kiosk-stats{height:auto;grid-template-columns:repeat(2,1fr);padding:14px 18px}.kiosk-grid{height:auto;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:126px;padding:8px 18px 18px}.kiosk-footer{height:auto;padding:0 0 22px}}
@media(max-width:560px){.container{margin:18px auto;padding:0 16px}.auth-container{padding:0 16px}.card,.hero-head{border-radius:22px;padding:18px}.stats-grid{grid-template-columns:1fr}.page-head h1,h1{font-size:29px}.login-hero h1{font-size:36px}.login-card{padding:22px}.topbar nav a,.user-pill{font-size:12px;padding:8px 9px}.login-highlights span{width:100%}.kiosk-stats{grid-template-columns:1fr}.kiosk-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:120px}.kiosk-header h1{font-size:24px}.kiosk-date{flex-direction:column;align-items:flex-start;width:100%}.kiosk-date label{width:100%}.kiosk-date input{width:100%}}
