@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#212121;background-color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd,figure,blockquote{margin:0}ul,ol{list-style:none}dl{margin:0}dt{font-weight:500}dd{margin-left:0}a{color:#2e7d32;text-decoration:none;transition:color .25s ease}a:hover{color:#4caf50}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}svg{overflow:visible}button,input,optgroup,select,textarea{margin:0;padding:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;background:transparent;border:0}button{cursor:pointer}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border:0}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{height:auto}input[type=color]{height:40px;border:1px solid #E0E0E0;border-radius:8px;cursor:pointer}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator,input[type=week]::-webkit-calendar-picker-indicator{cursor:pointer;border-radius:4px;margin-right:2px;opacity:.6;transition:opacity .25s ease}input[type=date]::-webkit-calendar-picker-indicator:hover,input[type=datetime-local]::-webkit-calendar-picker-indicator:hover,input[type=month]::-webkit-calendar-picker-indicator:hover,input[type=time]::-webkit-calendar-picker-indicator:hover,input[type=week]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=checkbox],input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#2E7D32}select{cursor:pointer}textarea{resize:vertical;overflow:auto;vertical-align:top}textarea::-webkit-resizer{display:none}input[type=file]{cursor:pointer}input[type=file]::-webkit-file-upload-button{padding:10px 1rem;font-family:inherit;font-size:inherit;color:#212121;background-color:#f5f5f5;border:1px solid #E0E0E0;border-radius:8px;cursor:pointer;transition:all .25s ease}input[type=file]::-webkit-file-upload-button:hover{background-color:#eee}input[type=file]::file-selector-button{padding:10px 1rem;font-family:inherit;font-size:inherit;color:#212121;background-color:#f5f5f5;border:1px solid #E0E0E0;border-radius:8px;cursor:pointer;transition:all .25s ease}input[type=file]::file-selector-button:hover{background-color:#eee}label{cursor:pointer}:disabled,[disabled]{opacity:.6;cursor:not-allowed}table{border-collapse:collapse;border-spacing:0}th,td{padding:0;text-align:left;vertical-align:top}code,kbd,pre,samp{font-family:Fira Code,Source Code Pro,monospace;font-size:.875em}pre{overflow:auto;background-color:#f5f5f5;padding:1rem;border-radius:8px;scrollbar-width:thin;scrollbar-color:#BDBDBD #F5F5F5}pre::-webkit-scrollbar-track{background-color:#f5f5f5}pre::-webkit-scrollbar-thumb{background-color:#bdbdbd;border-radius:4px}pre::-webkit-scrollbar-thumb:hover{background-color:#757575}blockquote{border-left:4px solid #2E7D32;padding-left:1rem;margin:1rem 0;color:#757575;font-style:italic}hr{display:block;height:1px;margin:1rem 0;padding:0;border:0;background-color:#e0e0e0;color:#e0e0e0}legend{margin-bottom:.5rem;padding:0;font-size:inherit;font-weight:500;line-height:inherit;color:inherit;white-space:normal}fieldset{margin:0;padding:0;border:0}details summary{cursor:pointer;-webkit-user-select:none;user-select:none}details summary:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}dialog{padding:0;border:0;background-color:#fff;color:#212121}dialog::backdrop{background-color:#1a1a1a80}.no-js{display:none}html{overflow-y:scroll}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#212121;background-color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative}body.overflow-hidden{overflow:hidden}h1,.h1{font-size:2.25rem;font-weight:800;line-height:1.2;color:#212121;margin-bottom:1rem}h2,.h2{font-size:1.875rem;font-weight:700;line-height:1.2;color:#212121;margin-bottom:1rem}h3,.h3{font-size:1.5rem;font-weight:700;line-height:1.2;color:#212121;margin-bottom:.75rem}h4,.h4{font-size:1.25rem;font-weight:600;line-height:1.2;color:#212121;margin-bottom:.75rem}h5,.h5{font-size:1.125rem;font-weight:600;line-height:1.2;color:#212121;margin-bottom:.5rem}h6,.h6{font-size:1rem;font-weight:600;line-height:1.2;color:#212121;margin-bottom:.5rem}p{margin-bottom:1rem;color:#212121;line-height:1.5}p:last-child{margin-bottom:0}small,.small{font-size:.875rem;color:#757575}strong,.strong{font-weight:600;color:#212121}em,.em{font-style:italic}mark,.mark{background-color:#ff8f0033;padding:2px 4px;border-radius:4px;color:inherit}a{color:#2e7d32;text-decoration:none;transition:all .25s ease}a:hover{color:#4caf50;text-decoration:underline}a:active{color:#1b5e20}a:focus-visible{outline:2px solid #2E7D32;outline-offset:2px;border-radius:2px}a.link-secondary{color:#ff8f00}a.link-secondary:hover{color:#ffb300}a.link-secondary:active{color:#e65100}a.link-accent{color:#00897b}a.link-accent:hover{color:#00bcd4}a.link-muted{color:#757575}a.link-muted:hover{color:#212121}ul,ol{margin-bottom:1rem;padding-left:1.5rem}ul{list-style:disc outside}ol{list-style:decimal outside}li{margin-bottom:.5rem;color:#212121}li:last-child{margin-bottom:0}ul ul,ul ol,ol ul,ol ol{margin-top:.5rem;margin-bottom:0;padding-left:1rem}dl{margin-bottom:1rem}dt{font-weight:600;margin-top:.5rem;color:#212121}dt:first-child{margin-top:0}dd{margin-left:1.5rem;margin-bottom:.5rem;color:#757575}blockquote{margin-bottom:1rem;padding:1rem 1rem 1rem 1.5rem;border-left:4px solid #2E7D32;background-color:#2e7d3208;border-radius:4px;color:#757575;font-style:italic}blockquote p{margin-bottom:0}blockquote cite{display:block;margin-top:.5rem;font-style:normal;color:#757575}blockquote cite:before{content:"— "}code{padding:2px 6px;background-color:#f5f5f5;border:1px solid #E0E0E0;border-radius:4px;font-family:Fira Code,Source Code Pro,monospace;font-size:.9em;color:#d73e1d}pre{margin-bottom:1rem;padding:1rem;background-color:#212121;border-radius:8px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#757575 #424242}pre::-webkit-scrollbar{width:8px;height:8px}pre::-webkit-scrollbar-track{background-color:#424242}pre::-webkit-scrollbar-thumb{background-color:#757575;border-radius:4px}pre::-webkit-scrollbar-thumb:hover{background-color:#9e9e9e}pre code{padding:0;background-color:transparent;border:0;color:#e8e8e8;font-size:.875em;line-height:1.625}table{width:100%;border-collapse:collapse;border-spacing:0;background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}table caption{padding:1rem;font-size:.875rem;font-weight:500;text-align:left;color:#757575;background-color:#fafafa;border-bottom:1px solid #E0E0E0}thead{background-color:#fafafa}thead th{padding:.75rem 1rem;font-weight:600;text-align:left;color:#212121;border-bottom:2px solid #E0E0E0;font-size:.875rem}tbody tr{border-bottom:1px solid #E0E0E0;transition:background-color .25s ease}tbody tr:hover{background-color:#fafafa}tbody tr:last-child{border-bottom:0}tbody td{padding:.75rem 1rem;color:#212121}tfoot{background-color:#fafafa;border-top:2px solid #E0E0E0}tfoot th,tfoot td{padding:.75rem 1rem;font-weight:500;color:#757575;font-size:.875rem}button,.button,[type=button],[type=reset],[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}button:disabled,button.disabled,.button:disabled,.button.disabled,[type=button]:disabled,[type=button].disabled,[type=reset]:disabled,[type=reset].disabled,[type=submit]:disabled,[type=submit].disabled{opacity:.5;cursor:not-allowed;pointer-events:none}button:focus-visible,.button:focus-visible,[type=button]:focus-visible,[type=reset]:focus-visible,[type=submit]:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),textarea,select{display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file])::placeholder,textarea::placeholder,select::placeholder{color:#9e9e9e}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):hover:not(:disabled),textarea:hover:not(:disabled),select:hover:not(:disabled){border-color:#bdbdbd}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):focus,textarea:focus,select:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):disabled,textarea:disabled,select:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):invalid,textarea:invalid,select:invalid{border-color:#f44336}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):invalid:focus,textarea:invalid:focus,select:invalid:focus{border-color:#f44336;box-shadow:0 0 0 3px #f443361a}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]).success,textarea.success,select.success{border-color:#4caf50}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]).success:focus,textarea.success:focus,select.success:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]).error,textarea.error,select.error{border-color:#f44336}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]).error:focus,textarea.error:focus,select.error:focus{border-color:#f44336;box-shadow:0 0 0 3px #f443361a}select{display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}select::placeholder{color:#9e9e9e}select:hover:not(:disabled){border-color:#bdbdbd}select:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}select:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236B7280'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.25rem;padding-right:3.25rem}select::-ms-expand{display:none}textarea{display:block;width:100%;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease;resize:vertical;line-height:1.5}textarea::placeholder{color:#9e9e9e}textarea:hover:not(:disabled){border-color:#bdbdbd}textarea:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}textarea:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}textarea{min-height:48px}input[type=range]{width:100%;height:6px;padding:0;background:linear-gradient(to right,#e0e0e0,#e0e0e0);border-radius:3px;outline:0;-webkit-appearance:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background-color:#2e7d32;cursor:pointer;transition:all .25s ease}input[type=range]::-webkit-slider-thumb:hover{box-shadow:0 0 0 8px #2e7d321a}input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background-color:#2e7d32;border:0;cursor:pointer;transition:all .25s ease}input[type=range]::-moz-range-thumb:hover{box-shadow:0 0 0 8px #2e7d321a}input[type=checkbox],input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#2E7D32;vertical-align:middle}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}input[type=file]{display:block;width:100%;cursor:pointer}label{display:block;margin-bottom:.5rem;font-weight:500;color:#212121;cursor:pointer}label.label-required:after{content:" *";color:#f44336}label.label-optional:after{content:" (Optional)";color:#757575;font-weight:400}hr{margin:1.5rem 0;border:0;border-top:1px solid #E0E0E0;background-color:transparent}hr.hr-accent{border-top-color:#ff8f00}hr.hr-muted{border-top-color:#eee}img{max-width:100%;height:auto;display:block}img.img-fluid{width:100%;height:auto}img.img-thumbnail{padding:4px;border:1px solid #E0E0E0;border-radius:8px;background-color:#fff;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}img.img-rounded{border-radius:12px}img.img-circle{border-radius:50%}picture{display:block}figure{margin:0 0 1rem;text-align:center}figcaption{margin-top:.5rem;font-size:.875rem;color:#757575;font-style:italic}abbr[title]{border-bottom:1px dotted #E0E0E0;cursor:help;text-decoration:none}.form-help,.form-hint,.field-help{display:block;margin-top:.5rem;font-size:.875rem;color:#757575}.form-error,.field-error{display:block;margin-top:.5rem;font-size:.875rem;color:#f44336}.form-success,.field-success{display:block;margin-top:.5rem;font-size:.875rem;color:#4caf50}.text-primary{color:#212121}.text-secondary{color:#757575}.text-muted{color:#bdbdbd}.text-success{color:#4caf50}.text-warning{color:#ff9800}.text-error,.text-danger{color:#f44336}.text-info{color:#2196f3}.font-weight-light{font-weight:300}.font-weight-normal{font-weight:400}.font-weight-medium{font-weight:500}.font-weight-semibold{font-weight:600}.font-weight-bold{font-weight:700}.text-italic{font-style:italic}.text-underline{text-decoration:underline}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-break{word-wrap:break-word;word-break:break-word}.app-layout{display:flex;min-height:100vh;background-color:#fff}.app-layout.sidebar-collapsed .main-content{margin-left:70px}@media (max-width: 767px){.app-layout{display:flex;flex-direction:column}.app-layout.sidebar-collapsed .main-content{margin-left:0}}.main-content{flex:1;display:flex;flex-direction:column;background-color:#fff;margin-left:260px;min-height:100vh;transition:margin-left .25s ease}@media (max-width: 767px){.main-content{margin-left:0}}.header{background-color:#fff;border-bottom:1px solid #E0E0E0;padding:1rem 1.5rem;height:64px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;flex-shrink:0}@media (max-width: 767px){.header{height:56px;padding:.75rem 1rem}}.header__left{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.header__menu-btn{display:none}@media (max-width: 767px){.header__menu-btn{display:block}}.header__menu-toggle{display:none;background:none;border:none;color:#212121;font-size:1.25rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .25s ease}@media (max-width: 767px){.header__menu-toggle{display:flex}}.header__menu-toggle:hover{color:#2e7d32}.header__title{display:flex;flex-direction:column;gap:.25rem;min-width:0;margin-bottom:0;flex:1}.header__title .page-title{font-size:1.25rem;font-weight:700;line-height:1.2;color:#212121;margin:0}.header__title .page-subtitle{font-size:.875rem;color:#757575}.header__breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#757575}@media (max-width: 767px){.header__breadcrumb{display:none}}.header__breadcrumb .breadcrumb-item{display:flex;align-items:center;gap:.5rem}.header__breadcrumb .breadcrumb-item a{color:#2e7d32}.header__breadcrumb .breadcrumb-item a:hover{color:#4caf50}.header__breadcrumb .breadcrumb-item:after{content:"/";color:#e0e0e0}.header__breadcrumb .breadcrumb-item:last-child{color:#212121;font-weight:500}.header__breadcrumb .breadcrumb-item:last-child:after{display:none}.header__right{display:flex;align-items:center;gap:1.5rem;flex-shrink:0}@media (max-width: 767px){.header__right{gap:.75rem}}.header__actions{display:flex;align-items:center;gap:.75rem}.header__action-btn{width:40px;height:40px;border-radius:8px;background-color:#f5f5f5;border:1px solid #E0E0E0;color:#212121;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s ease;position:relative}.header__action-btn:hover{background-color:#eee}.header__action-btn.has-notification:after{content:"";position:absolute;top:4px;right:4px;width:10px;height:10px;background-color:#f44336;border-radius:50%;border:2px solid #FFFFFF}.header__action-btn svg{width:18px;height:18px}.header__user{display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:all .25s ease;padding:.5rem;border-radius:8px}.header__user:hover{background-color:#f5f5f5}@media (max-width: 767px){.header__user{gap:.5rem}}.header__user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#2e7d32,#00897b);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;flex-shrink:0}.header__user-avatar img{width:100%;height:100%;object-fit:cover}@media (max-width: 767px){.header__user-info{display:none}}.header__user-info .user-name{font-size:.875rem;font-weight:600;color:#212121}.header__user-info .user-role{font-size:.75rem;color:#757575}.header__user-menu{position:relative}.header__user-btn{display:flex;align-items:center;gap:.75rem;background:none;border:none;cursor:pointer;padding:.5rem;border-radius:8px;transition:background-color .25s ease}.header__user-btn:hover{background-color:#f5f5f5}@media (max-width: 767px){.header__user-btn{gap:.5rem}}.header__user-name{font-size:.875rem;font-weight:500;color:#212121}@media (max-width: 767px){.header__user-name{display:none}}.header__dropdown-icon{color:#757575;transition:transform .25s ease}.header__dropdown-icon--open{transform:rotate(180deg)}.header__dropdown-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.header__dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;min-width:180px;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;z-index:1000;padding:.25rem 0}.header__dropdown-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:none;border:none;cursor:pointer;font-size:.875rem;color:#212121;transition:background-color .25s ease}.header__dropdown-item:hover{background-color:#f5f5f5}.header__dropdown-item--danger{color:#f44336}.header__dropdown-item--danger:hover{background-color:#f4433614}.page-container{flex:1;padding:1.5rem;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#BDBDBD #F5F5F5}.page-container::-webkit-scrollbar{width:8px;height:8px}.page-container::-webkit-scrollbar-track{background-color:#f5f5f5}.page-container::-webkit-scrollbar-thumb{background-color:#bdbdbd;border-radius:4px}.page-container::-webkit-scrollbar-thumb:hover{background-color:#757575}@media (max-width: 767px){.page-container{padding:1rem}}@media (min-width: 1536px){.page-container{max-width:1920px;margin:0 auto}}.page-content{width:100%;max-width:100%;padding:20px}@media (max-width: 767px){.page-content{padding:10px}}@media (min-width: 1024px){.header{padding:1.5rem}.page-container{padding:2rem}}.sidebar{background-color:#fff;color:#212121;width:260px;position:fixed;left:0;top:0;height:100vh;display:flex;flex-direction:column;border-right:1px solid #EEEEEE;z-index:1030;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#E0E0E0 #F5F5F5}.sidebar::-webkit-scrollbar{width:4px;height:4px}.sidebar::-webkit-scrollbar-track{background-color:#f5f5f5}.sidebar::-webkit-scrollbar-thumb{background-color:#e0e0e0;border-radius:2px}.sidebar::-webkit-scrollbar-thumb:hover{background-color:#2e7d32}.sidebar{transition:width .25s ease}@media (max-width: 767px){.sidebar{width:280px;transform:translate(-100%);z-index:1050;transition:transform .25s ease;box-shadow:none}.sidebar.sidebar--mobile-open{transform:translate(0);box-shadow:0 20px 25px #0000001a,0 10px 10px #0000000a}}.sidebar--collapsed{width:70px}@media (max-width: 767px){.sidebar--collapsed{width:280px}}.sidebar--collapsed .sidebar__header{padding:.75rem;justify-content:center}.sidebar--collapsed .sidebar__logo{justify-content:center}.sidebar--collapsed .sidebar__brand{display:none}.sidebar--collapsed .sidebar__toggle{position:static;margin:0}.sidebar--collapsed .sidebar__section{padding:.5rem}.sidebar--collapsed .sidebar__section-label{display:none}.sidebar--collapsed .sidebar__item{justify-content:center;padding:.75rem}.sidebar--collapsed .sidebar__item span{display:none}.sidebar--collapsed .sidebar__cta{padding:0 .5rem .5rem}.sidebar--collapsed .sidebar__cta-btn{padding:.75rem}.sidebar--collapsed .sidebar__cta-btn span{display:none}.sidebar--collapsed .sidebar__footer{padding:.75rem .5rem}.sidebar--collapsed .sidebar__logout{justify-content:center}.sidebar--collapsed .sidebar__logout span{display:none}@media (max-width: 767px){.sidebar--collapsed .sidebar__brand{display:inline}.sidebar--collapsed .sidebar__section-label{display:block}.sidebar--collapsed .sidebar__section{padding:0 .75rem}.sidebar--collapsed .sidebar__item{justify-content:flex-start;padding:.75rem 1rem}.sidebar--collapsed .sidebar__item span{display:inline}.sidebar--collapsed .sidebar__cta{padding:0 .75rem .5rem}.sidebar--collapsed .sidebar__cta-btn{padding:.75rem 1rem}.sidebar--collapsed .sidebar__cta-btn span{display:inline}.sidebar--collapsed .sidebar__footer{padding:.75rem}.sidebar--collapsed .sidebar__logout{justify-content:flex-start}.sidebar--collapsed .sidebar__logout span{display:inline}.sidebar--collapsed .sidebar__header{padding:1.25rem 1.25rem 1rem;justify-content:space-between}}.sidebar__header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.25rem 1rem;flex-shrink:0}.sidebar__logo{display:flex;align-items:center;gap:.75rem;min-width:0}.sidebar__logo-icon{width:36px;height:36px;border-radius:8px;background:#2e7d32;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;color:#fff;flex-shrink:0}.sidebar__brand{font-size:1.125rem;font-weight:700;color:#212121;white-space:nowrap}.sidebar__toggle{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:#757575;cursor:pointer;border-radius:4px;transition:all .25s ease;flex-shrink:0}.sidebar__toggle:hover{background-color:#f5f5f5;color:#212121}@media (max-width: 767px){.sidebar__toggle{display:none}}.sidebar__cta{padding:0 .75rem .5rem;flex-shrink:0}.sidebar__cta-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.75rem 1rem;border-radius:8px;background-color:#2e7d321a;color:#2e7d32;font-size:.875rem;font-weight:600;text-decoration:none;border:1px dashed rgba(46,125,50,.3);transition:all .15s ease}.sidebar__cta-btn svg{flex-shrink:0}.sidebar__cta-btn:hover{background-color:#2e7d32;color:#fff;border-color:#2e7d32}.sidebar__nav{flex:1;padding:.5rem 0;display:flex;flex-direction:column;gap:.5rem}.sidebar__section{padding:0 .75rem;display:flex;flex-direction:column;gap:.25rem}.sidebar__section-label{padding:.5rem .75rem;font-size:.75rem;font-weight:600;color:#9e9e9e;text-transform:uppercase;letter-spacing:.02em}.sidebar__item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;color:#757575;text-decoration:none;font-size:.875rem;font-weight:500;transition:all .15s ease;border:none;background:none;cursor:pointer;width:100%;text-align:left}.sidebar__item svg{flex-shrink:0;width:20px;height:20px}.sidebar__item:hover{background-color:#f5f5f5;color:#212121}.sidebar__item--active{background-color:#2e7d32;color:#fff;font-weight:600}.sidebar__item--active:hover{background-color:#4caf50;color:#fff}.sidebar__footer{padding:.75rem;border-top:1px solid #EEEEEE;flex-shrink:0}.sidebar__logout{color:#757575}.sidebar__logout:hover{background-color:#f4433614;color:#f44336}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;z-index:1049}.calendar{background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;overflow:hidden;display:flex;flex-direction:column}.calendar__header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #E0E0E0;background:linear-gradient(135deg,#2e7d3208,#00897b08)}@media (max-width: 767px){.calendar__header{padding:1rem;flex-wrap:wrap}}.calendar__header-title{font-size:1.5rem;font-weight:700;line-height:1.2;color:#212121;margin:0;color:#2e7d32;display:flex;align-items:center;gap:.75rem}.calendar__header-title .month{font-weight:700}.calendar__header-title .year{font-weight:600;color:#757575}.calendar__nav{display:flex;width:100%;align-items:center;gap:1rem}.calendar__nav-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.calendar__nav-btn:disabled,.calendar__nav-btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.calendar__nav-btn:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.calendar__nav-btn{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.calendar__nav-btn:hover:not(:disabled){background-color:#2e7d3214}.calendar__nav-btn:active:not(:disabled){background-color:#2e7d321f}.calendar__nav-btn{padding:10px .75rem;min-width:auto;width:40px;height:40px}.calendar__nav-btn:hover{background-color:#2e7d321a}.calendar__nav-btn:active{background-color:#2e7d3233}.calendar__nav-btn svg{width:18px;height:18px}.calendar__today-btn{margin-right:auto}@media (max-width: 767px){.calendar__today-btn{margin-left:0;order:3;flex-basis:100%;margin-top:.5rem}}.calendar__controls{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #E0E0E0;background-color:#fafafa}@media (max-width: 767px){.calendar__controls{padding:.75rem;gap:.5rem;flex-wrap:wrap}}.calendar__view-switcher{display:flex;gap:.5rem}.calendar__view-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.calendar__view-btn:disabled,.calendar__view-btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.calendar__view-btn:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.calendar__view-btn{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.calendar__view-btn:hover:not(:disabled){background-color:#2e7d3214}.calendar__view-btn:active:not(:disabled){background-color:#2e7d321f}.calendar__view-btn{padding:6px 1rem;font-size:.875rem}.calendar__view-btn.active{background-color:#2e7d32;color:#fff}.calendar__view-btn.active:hover:not(:disabled){background-color:#4caf50;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.calendar__view-btn.active:active:not(:disabled){background-color:#1b5e20}.calendar__filters{display:flex;align-items:center;gap:.75rem;margin-left:auto;flex-wrap:wrap}@media (max-width: 767px){.calendar__filters{margin-left:0;flex-basis:100%}}.calendar__filter-label{font-size:.875rem;font-weight:500;color:#757575}.calendar__filter-select{display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.calendar__filter-select::placeholder{color:#9e9e9e}.calendar__filter-select:hover:not(:disabled){border-color:#bdbdbd}.calendar__filter-select:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.calendar__filter-select:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.calendar__filter-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236B7280'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.25rem;padding-right:3.25rem}.calendar__filter-select::-ms-expand{display:none}.calendar__filter-select{max-width:200px;font-size:.875rem;height:36px;padding:6px 1rem}.calendar__legend{display:flex;gap:1rem;margin-left:auto;flex-wrap:wrap}@media (max-width: 767px){.calendar__legend{gap:.75rem;flex-basis:100%;margin-left:0}}.calendar__legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#757575}.calendar__legend-item .legend-color{width:12px;height:12px;border-radius:4px}.calendar__grid{padding:1rem;display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;flex:1;align-content:start}@media (max-width: 767px){.calendar__grid{padding:.5rem;gap:2px}}.calendar__weekday{display:flex;align-items:center;justify-content:center;padding:.75rem;font-weight:600;color:#2e7d32;font-size:.875rem;text-transform:uppercase;letter-spacing:.02em;border-bottom:2px solid #E0E0E0}@media (max-width: 767px){.calendar__weekday{padding:.5rem;font-size:.75rem}}.calendar__day{aspect-ratio:1;border:1px solid #E0E0E0;border-radius:8px;padding:.5rem;cursor:pointer;transition:all .25s ease;background-color:#fff;position:relative;display:flex;flex-direction:column;min-height:100px}@media (max-width: 767px){.calendar__day{min-height:60px;padding:.25rem}}.calendar__day:hover{background-color:#2e7d320d;border-color:#2e7d32;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.calendar__day.other-month{background-color:#fafafa;color:#9e9e9e}.calendar__day.other-month .calendar__day-number{color:#bdbdbd}.calendar__day.selected{background-color:#ff8f001a;border-color:#ff8f00;border-width:2px}.calendar__day.today{background:linear-gradient(135deg,#2e7d3214,#00897b14);border-color:#2e7d32;border-width:2px}.calendar__day.today .calendar__day-number{background-color:#2e7d32;color:#fff;border-radius:4px;padding:2px 6px;font-weight:700;width:fit-content}.calendar__day.has-reservations:after{content:"";position:absolute;bottom:.5rem;left:.5rem;right:.5rem;height:3px;background:linear-gradient(90deg,#2e7d32,#1565c0,#e65100);border-radius:2px}.calendar__day.fully-occupied{border-color:#f44336;background-color:#f443360d}.calendar__day.fully-occupied:before{content:"🏨";position:absolute;top:.25rem;right:.25rem;font-size:1rem}.calendar__day.partially-occupied{border-color:#ff9800}.calendar__day-number{font-weight:600;font-size:1rem;color:#212121}@media (max-width: 767px){.calendar__day-number{font-size:.875rem}}.calendar__day-content{flex:1;display:flex;flex-direction:column;gap:.25rem;margin-top:.25rem;overflow:hidden}.calendar__occupancy{position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#4caf50,#ff9800,#f44336);border-radius:0 0 8px 8px}.calendar__occupancy.occupancy-0,.calendar__occupancy.occupancy-25{background-color:#4caf50}.calendar__occupancy.occupancy-50{background-color:#ff9800}.calendar__occupancy.occupancy-75{background-color:#ff6f00}.calendar__occupancy.occupancy-100{background-color:#f44336}.calendar__occupancy-label{font-size:.75rem;color:#757575;position:absolute;bottom:.25rem;right:.25rem}@media (max-width: 767px){.calendar__occupancy-label{display:none}}.calendar__reservation-chip{display:inline-block;padding:2px 6px;border-radius:3px;font-size:.75rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.calendar__reservation-chip.reservation-confirmed{background-color:#2e7d3233;color:#2e7d32}.calendar__reservation-chip.reservation-pending{background-color:#f9a82533;color:#f9a825}.calendar__reservation-chip.reservation-checkin{background-color:#1565c033;color:#1565c0}.calendar__reservation-chip.reservation-checkout{background-color:#e6510033;color:#e65100}@media (max-width: 767px){.calendar__reservation-chip{display:none}}.timeline-view{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#BDBDBD #F5F5F5}.timeline-view::-webkit-scrollbar{width:8px;height:8px}.timeline-view::-webkit-scrollbar-track{background-color:#f5f5f5}.timeline-view::-webkit-scrollbar-thumb{background-color:#bdbdbd;border-radius:4px}.timeline-view::-webkit-scrollbar-thumb:hover{background-color:#757575}@media (max-width: 767px){.timeline-view{padding:.5rem;gap:0}}.timeline-view__header{display:flex;position:sticky;top:0;background-color:#fff;z-index:10;border-bottom:2px solid #E0E0E0;padding-bottom:.5rem}.timeline-view__time-grid{display:flex;gap:0;flex-shrink:0;margin-left:200px}@media (max-width: 767px){.timeline-view__time-grid{margin-left:100px}}.timeline-view__day-header{flex:0 0 60px;text-align:center;font-size:.75rem;font-weight:600;color:#757575;padding:.5rem}.timeline-view__day-header .day-number{display:block;font-size:1.125rem;color:#212121}.timeline-view__day-header .day-name{display:block;text-transform:uppercase;letter-spacing:.02em}.timeline-view__room-row{display:flex;gap:.5rem;padding:.75rem;border-bottom:1px solid #E0E0E0;align-items:stretch;transition:background-color .25s ease}.timeline-view__room-row:hover{background-color:#fafafa}.timeline-view__room-row:last-child{border-bottom:0}@media (max-width: 767px){.timeline-view__room-row{padding:.5rem}}.timeline-view__room-label{flex:0 0 200px;display:flex;flex-direction:column;justify-content:center;padding-right:1rem;border-right:2px solid #E0E0E0;min-width:200px}@media (max-width: 767px){.timeline-view__room-label{flex-basis:100px;min-width:100px;padding-right:.5rem}}.timeline-view__room-label .room-number{font-weight:700;color:#2e7d32;font-size:1rem}.timeline-view__room-label .room-type{font-size:.75rem;color:#757575}.timeline-view__room-label .room-capacity{font-size:.75rem;color:#9e9e9e}.timeline-view__days{display:flex;gap:0;flex:1;position:relative}.timeline-view__day-column{flex:0 0 60px;border-right:1px solid #E0E0E0;position:relative;min-height:80px}.timeline-view__day-column:last-child{border-right:0}.timeline-view__day-column.today{background-color:#2e7d3205}.timeline-view__bar{position:absolute;top:50%;transform:translateY(-50%);height:60%;min-height:32px;border-radius:4px;padding:.5rem;color:#fff;font-size:.75rem;font-weight:500;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s ease;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;border:2px solid rgba(255,255,255,.3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 767px){.timeline-view__bar{font-size:.75rem;padding:.25rem}}.timeline-view__bar:hover{box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border-color:#fff}.timeline-view__bar.status-confirmed{background:linear-gradient(135deg,#2e7d32,#4caf50)}.timeline-view__bar.status-checkin{background:linear-gradient(135deg,#1565c0,#00bcd4)}.timeline-view__bar.status-checkout{background:linear-gradient(135deg,#e65100,#ffb300)}.timeline-view__bar.status-pending{background:linear-gradient(135deg,#f9a825,#ffd54f);color:#212121;border-color:#f9a8254d}.timeline-view__bar.status-cancelled{background:linear-gradient(135deg,#c62828,#e57373);opacity:.6}@media (max-width: 767px){.calendar__grid{min-height:500px}.timeline-view{min-height:400px}}.reservation-form{background-color:transparent;padding:0}.reservation-form form{display:contents}.reservation-form__section{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.reservation-form__section:last-child{margin-bottom:0}@media (max-width: 767px){.reservation-form__section{grid-template-columns:1fr;gap:1rem;margin-bottom:1.5rem}}.reservation-form__section .section-title{grid-column:1/-1;font-size:1.125rem;font-weight:600;line-height:1.2;color:#212121;padding-bottom:.5rem;border-bottom:2px solid #E0E0E0;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem;width:100%}.form-group textarea{min-height:100px}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236B7280'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.25rem;padding-right:3.25rem}.form-group .form-help{font-size:.75rem;color:#757575;margin-top:.25rem}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:#f44336}.form-group.has-error input:focus,.form-group.has-error select:focus,.form-group.has-error textarea:focus{border-color:#f44336;box-shadow:0 0 0 3px #f443361a}.form-group.has-error .form-error{color:#f44336;font-size:.75rem;margin-top:.25rem}.form-group.has-success input,.form-group.has-success select,.form-group.has-success textarea{border-color:#4caf50}.form-group.has-success input:focus,.form-group.has-success select:focus,.form-group.has-success textarea:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}@media (max-width: 767px){.form-row{grid-template-columns:1fr}}.form-row .form-group{margin-bottom:0}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #E0E0E0}@media (max-width: 767px){.form-actions{flex-direction:column;margin-top:1.5rem}}.form-actions button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.form-actions button:disabled,.form-actions button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.form-actions button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.form-actions .btn-primary{background-color:#2e7d32;color:#fff}.form-actions .btn-primary:hover:not(:disabled){background-color:#4caf50;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.form-actions .btn-primary:active:not(:disabled){background-color:#1b5e20}.form-actions .btn-secondary{background-color:#ff8f00;color:#fff}.form-actions .btn-secondary:hover:not(:disabled){background-color:#ffb300;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.form-actions .btn-secondary:active:not(:disabled){background-color:#e65100}.form-actions .btn-cancel{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.form-actions .btn-cancel:hover:not(:disabled){background-color:#2e7d3214}.form-actions .btn-cancel:active:not(:disabled){background-color:#2e7d321f}.reservation-card{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05);transition:all .25s ease;display:flex;flex-direction:column;gap:1rem}.reservation-card:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-2px)}.reservation-card__header{display:flex;align-items:center;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #E0E0E0}.reservation-card__title{display:flex;flex-direction:column;gap:.25rem;flex:1}.reservation-card__title .reservation-id{font-size:.875rem;color:#757575;font-weight:500}.reservation-card__title .guest-name{font-size:1.125rem;font-weight:700;line-height:1.2;color:#212121;margin:0}.reservation-card__status{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:4px;font-size:.875rem;font-weight:600;white-space:nowrap}.reservation-card__status .status-dot{width:8px;height:8px;border-radius:50%}.reservation-card__status.status-confirmed{background-color:#2e7d321a;color:#2e7d32}.reservation-card__status.status-confirmed .status-dot{background-color:#2e7d32}.reservation-card__status.status-pending{background-color:#f9a8251a;color:#f9a825}.reservation-card__status.status-pending .status-dot{background-color:#f9a825}.reservation-card__status.status-checkin{background-color:#1565c01a;color:#1565c0}.reservation-card__status.status-checkin .status-dot{background-color:#1565c0}.reservation-card__status.status-checkout{background-color:#e651001a;color:#e65100}.reservation-card__status.status-checkout .status-dot{background-color:#e65100}.reservation-card__status.status-cancelled{background-color:#c628281a;color:#c62828}.reservation-card__status.status-cancelled .status-dot{background-color:#c62828}.reservation-card__body{display:flex;flex-direction:column;gap:.75rem}.reservation-info{display:flex;align-items:center;gap:.75rem;font-size:.875rem}.reservation-info .info-icon{width:20px;height:20px;color:#2e7d32;flex-shrink:0}.reservation-info .info-label{color:#757575;font-weight:500}.reservation-info .info-value{color:#212121;font-weight:600}.reservation-dates{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background-color:#2e7d320d;border-radius:8px;border-left:4px solid #2E7D32}.reservation-dates .date-item{display:flex;justify-content:space-between;align-items:center}.reservation-dates .date-item .date-label{font-size:.75rem;color:#757575;text-transform:uppercase;letter-spacing:.02em;font-weight:600}.reservation-dates .date-item .date-value{font-size:1rem;color:#212121;font-weight:600}.reservation-dates .date-duration{font-size:.75rem;color:#757575;padding-top:.5rem;border-top:1px solid rgba(46,125,50,.2);margin-top:.5rem}.reservation-room-info{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:#fafafa;border-radius:8px}.reservation-room-info .room-icon{width:40px;height:40px;border-radius:8px;background:linear-gradient(135deg,#2e7d32,#00897b);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.125rem;flex-shrink:0}.reservation-room-info .room-details{flex:1}.reservation-room-info .room-details .room-number{font-size:.875rem;font-weight:600;color:#212121}.reservation-room-info .room-details .room-type{font-size:.75rem;color:#757575}.reservation-room-info .room-price{font-size:1.125rem;font-weight:700;color:#2e7d32}.reservation-card__footer{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid #E0E0E0}.reservation-card__footer button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.reservation-card__footer button:disabled,.reservation-card__footer button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.reservation-card__footer button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.reservation-card__footer button.btn-primary{background-color:#2e7d32;color:#fff}.reservation-card__footer button.btn-primary:hover:not(:disabled){background-color:#4caf50;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.reservation-card__footer button.btn-primary:active:not(:disabled){background-color:#1b5e20}.reservation-card__footer button.btn-secondary{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.reservation-card__footer button.btn-secondary:hover:not(:disabled){background-color:#2e7d3214}.reservation-card__footer button.btn-secondary:active:not(:disabled){background-color:#2e7d321f}.reservation-card__footer button.btn-danger{background-color:#f44336;color:#fff}.reservation-card__footer button.btn-danger:hover:not(:disabled){background-color:#f32c1e;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.reservation-card__footer button.btn-danger:active:not(:disabled){background-color:#ea1c0d}.reservation-list{display:flex;flex-direction:column;gap:1rem;background-color:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}@media (max-width: 767px){.reservation-list{padding:1rem;gap:.75rem}}.reservation-list .list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center}.reservation-list .list-empty .empty-icon{width:80px;height:80px;font-size:3rem;margin-bottom:1rem;opacity:.5}.reservation-list .list-empty .empty-title{font-size:1.25rem;font-weight:700;line-height:1.2;color:#212121;margin-bottom:.5rem}.reservation-list .list-empty .empty-description{color:#757575;margin-bottom:1.5rem}.reservation-list .list-empty .empty-action{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.reservation-list .list-empty .empty-action:disabled,.reservation-list .list-empty .empty-action.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.reservation-list .list-empty .empty-action:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.reservation-list .list-empty .empty-action{background-color:#2e7d32;color:#fff}.reservation-list .list-empty .empty-action:hover:not(:disabled){background-color:#4caf50;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.reservation-list .list-empty .empty-action:active:not(:disabled){background-color:#1b5e20}.reservation-list__item{background-color:#fff;padding:1rem;border-radius:12px;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;border:1px solid rgba(0,0,0,.05);cursor:pointer;transition:all .25s ease}.reservation-list__item:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translate(4px)}.reservation-list__item.expanded{background-color:#2e7d3205}.reservation-detail{background-color:#fff;border-radius:12px;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;overflow:hidden}.reservation-detail__header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#2e7d32,#00897b);color:#fff}@media (max-width: 767px){.reservation-detail__header{padding:1rem;flex-direction:column;align-items:flex-start;gap:1rem}}.reservation-detail__header .detail-title{font-size:1.5rem;font-weight:700;line-height:1.2;color:#212121;margin:0;color:#fff}.reservation-detail__header .detail-actions{display:flex;gap:.75rem}.reservation-detail__header .detail-actions button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.reservation-detail__header .detail-actions button:disabled,.reservation-detail__header .detail-actions button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.reservation-detail__header .detail-actions button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.reservation-detail__header .detail-actions button{background-color:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.reservation-detail__header .detail-actions button:hover{background-color:#ffffff4d}.reservation-detail__content{padding:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}@media (max-width: 767px){.reservation-detail__content{padding:1rem;grid-template-columns:1fr;gap:1.5rem}}.reservation-detail__section{display:flex;flex-direction:column;gap:1rem}.reservation-detail__section .section-heading{font-size:1.125rem;font-weight:600;line-height:1.2;color:#212121;margin:0;padding-bottom:.5rem;border-bottom:2px solid #E0E0E0}.reservation-detail__section .detail-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.75rem 0;border-bottom:1px solid #E0E0E0}.reservation-detail__section .detail-row:last-child{border-bottom:0;padding-bottom:0}.reservation-detail__section .detail-row .row-label{font-size:.875rem;color:#757575;font-weight:500;flex:0 0 40%}.reservation-detail__section .detail-row .row-value{font-size:1rem;color:#212121;font-weight:600;flex:1;text-align:right}.reservation-timeline{display:flex;flex-direction:column;gap:1rem}.reservation-timeline .timeline-item{display:flex;gap:1rem;padding:.75rem 0 .75rem 1rem;border-left:3px solid #E0E0E0;position:relative}.reservation-timeline .timeline-item:before{content:"";position:absolute;left:-8px;top:12px;width:12px;height:12px;border-radius:50%;background-color:#e0e0e0;border:3px solid #FFFFFF}.reservation-timeline .timeline-item.active:before{background-color:#2e7d32;border-color:#2e7d32}.reservation-timeline .timeline-item.completed:before{background-color:#4caf50;border-color:#4caf50}.reservation-timeline .timeline-item .timeline-content{flex:1}.reservation-timeline .timeline-item .timeline-content .timeline-time{font-size:.75rem;color:#757575;font-weight:500}.reservation-timeline .timeline-item .timeline-content .timeline-description{font-size:.875rem;color:#212121;margin-top:.25rem}.guest-info{display:flex;flex-direction:column;gap:1rem;padding:1rem;background-color:#fafafa;border-radius:8px}.guest-info .guest-header{display:flex;align-items:center;gap:.75rem}.guest-info .guest-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#ff8f00,#ffb300);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.25rem;flex-shrink:0}.guest-info .guest-name{font-weight:700;color:#212121}.guest-info .guest-email{font-size:.875rem;color:#757575}.guest-info .guest-details{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background-color:#fff;border-radius:8px;border:1px solid #E0E0E0}.guest-info .guest-details .detail-item{display:flex;justify-content:space-between}.guest-info .guest-details .detail-item .label{color:#757575;font-size:.875rem}.guest-info .guest-details .detail-item .value{color:#212121;font-weight:500}.price-breakdown{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background-color:#fff8e1;border-radius:8px;border:1px solid #E0E0E0}.price-breakdown .price-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;font-size:.875rem}.price-breakdown .price-row.total{border-top:2px solid #E0E0E0;padding-top:.75rem;margin-top:.75rem;font-weight:700;font-size:1.125rem;color:#2e7d32}.price-breakdown .price-row.total .price-value{color:#2e7d32}.price-breakdown .price-row .price-label{color:#757575}.price-breakdown .price-row .price-value{color:#212121;font-weight:600}.price-breakdown .price-row.discount .price-value{color:#4caf50}.price-breakdown .price-row.tax .price-value{color:#ff9800}.admin-panel{background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;overflow:hidden}.admin-panel__header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #E0E0E0;background:linear-gradient(135deg,#2e7d320d,#00897b0d)}@media (max-width: 767px){.admin-panel__header{padding:1rem;flex-direction:column;align-items:flex-start;gap:1rem}}.admin-panel__header .panel-title{font-size:1.5rem;font-weight:700;line-height:1.2;color:#212121;margin:0}.admin-panel__header .panel-actions{display:flex;gap:.75rem}@media (max-width: 767px){.admin-panel__header .panel-actions{width:100%}.admin-panel__header .panel-actions button{flex:1}}.admin-panel__content{padding:1.5rem}@media (max-width: 767px){.admin-panel__content{padding:1rem}}.admin-panel__tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #E0E0E0}@media (max-width: 767px){.admin-panel__tabs{gap:0;margin-bottom:1rem;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#BDBDBD #F5F5F5}.admin-panel__tabs::-webkit-scrollbar{width:8px;height:8px}.admin-panel__tabs::-webkit-scrollbar-track{background-color:#f5f5f5}.admin-panel__tabs::-webkit-scrollbar-thumb{background-color:#bdbdbd;border-radius:4px}.admin-panel__tabs::-webkit-scrollbar-thumb:hover{background-color:#757575}.admin-panel__tabs::-webkit-scrollbar{height:4px}}.admin-panel__tab{padding:1rem 1.5rem;cursor:pointer;font-weight:500;color:#757575;border-bottom:3px solid transparent;transition:all .25s ease;white-space:nowrap}.admin-panel__tab:hover{color:#2e7d32}.admin-panel__tab.active{color:#2e7d32;border-bottom-color:#2e7d32}@media (max-width: 767px){.admin-panel__tab{padding:.75rem 1rem;font-size:.875rem}}.user-form{display:flex;flex-direction:column;gap:2rem}.user-form__section{display:flex;flex-direction:column;gap:1rem}.user-form__section .section-heading{font-size:1.125rem;font-weight:600;line-height:1.2;color:#212121;margin:0;padding-bottom:.5rem;border-bottom:2px solid #E0E0E0}.user-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}@media (max-width: 767px){.user-form__grid{grid-template-columns:1fr}}.user-form__fields{display:flex;flex-direction:column;gap:1rem}.form-group label{font-size:.875rem;font-weight:600;color:#212121}.form-group label .required{color:#f44336}.form-group label .optional{color:#757575;font-weight:400}.form-group input,.form-group select,.form-group textarea{display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:#9e9e9e}.form-group input:hover:not(:disabled),.form-group select:hover:not(:disabled),.form-group textarea:hover:not(:disabled){border-color:#bdbdbd}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.form-group textarea{display:block;width:100%;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease;resize:vertical;line-height:1.5}.form-group textarea::placeholder{color:#9e9e9e}.form-group textarea:hover:not(:disabled){border-color:#bdbdbd}.form-group textarea:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.form-group textarea:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.form-group textarea{min-height:100px;resize:vertical}.form-group select{display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.form-group select::placeholder{color:#9e9e9e}.form-group select:hover:not(:disabled){border-color:#bdbdbd}.form-group select:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.form-group select:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236B7280'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.25rem;padding-right:3.25rem}.form-group select::-ms-expand{display:none}.form-group .form-hint{font-size:.75rem;color:#757575}.room-form{display:flex;flex-direction:column;gap:2rem}.room-form__section{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;background-color:#fafafa;border-radius:8px;border:1px solid #E0E0E0}.room-form__section .section-heading{font-size:1.125rem;font-weight:600;line-height:1.2;color:#212121;margin:0;padding-bottom:.5rem;border-bottom:2px solid #E0E0E0}.room-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}@media (max-width: 767px){.room-form__grid{grid-template-columns:1fr}}.room-amenities{display:flex;flex-direction:column;gap:.5rem}.room-amenities .amenity-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:#fff;border-radius:4px;border:1px solid #E0E0E0;cursor:pointer;transition:all .25s ease}.room-amenities .amenity-item input[type=checkbox]{cursor:pointer}.room-amenities .amenity-item:hover{background-color:#2e7d3205;border-color:#2e7d32}.room-amenities .amenity-item.selected{background-color:#2e7d320d;border-color:#2e7d32}.room-amenities .amenity-item .amenity-icon{width:24px;height:24px;font-size:1.125rem}.room-amenities .amenity-item .amenity-name{flex:1;font-weight:500;color:#212121}.room-card{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05);display:flex;flex-direction:column;gap:1rem;transition:all .25s ease}.room-card:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-4px)}.room-card .room-card__status{width:100%}.room-card__image{width:100%;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background-color:#eee;position:relative}.room-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.room-card__image:hover img{transform:scale(1.05)}.room-card__image .image-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#f5f5f5,#eee);color:#9e9e9e;font-size:2.25rem}.room-card__image .image-badge{position:absolute;top:.75rem;right:.75rem;padding:.5rem .75rem;background-color:#2e7d32;color:#fff;border-radius:4px;font-size:.75rem;font-weight:700}.room-card__header{display:flex;align-items:center;justify-content:space-between;align-items:flex-start;gap:.75rem}.room-card__header .room-title{display:flex;flex-direction:column;gap:.25rem}.room-card__header .room-title .room-number{font-size:1.125rem;font-weight:700;line-height:1.2;color:#212121;margin:0}.room-card__header .room-title .room-type{font-size:.875rem;color:#757575}.room-card__header .room-price{display:flex;flex-direction:column;text-align:right;gap:.25rem}.room-card__header .room-price .price-value{font-size:1.25rem;font-weight:700;color:#2e7d32}.room-card__header .room-price .price-label{font-size:.75rem;color:#757575}.room-card__info{display:flex;gap:1rem;padding:.75rem;background-color:#fafafa;border-radius:4px;border:1px solid #E0E0E0}@media (max-width: 767px){.room-card__info{flex-wrap:wrap}}.room-card__info .info-item{display:flex;align-items:center;gap:.5rem;flex:1;min-width:120px}.room-card__info .info-item .info-icon{width:20px;height:20px;color:#2e7d32;flex-shrink:0}.room-card__info .info-item .info-text{display:flex;flex-direction:column;gap:2px}.room-card__info .info-item .info-text .label{font-size:.75rem;color:#757575;font-weight:500}.room-card__info .info-item .info-text .value{font-size:.875rem;color:#212121;font-weight:600}.room-card__description{color:#757575;font-size:.875rem;line-height:1.625}.room-card__amenities{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background-color:#fff8e1;border-radius:4px;border:1px solid #E0E0E0}.room-card__amenities .amenities-title{font-size:.875rem;font-weight:600;color:#212121}.room-card__amenities .amenities-list{display:flex;flex-wrap:wrap;gap:.5rem}.room-card__amenities .amenities-list .amenity-tag{display:inline-flex;align-items:center;gap:.25rem;padding:4px 8px;font-weight:500;border-radius:4px;white-space:nowrap;background-color:#eee;color:#212121;font-size:.75rem}.room-card__actions{display:flex;gap:.5rem;padding-top:.75rem;border-top:1px solid #E0E0E0}.room-card__actions button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.room-card__actions button:disabled,.room-card__actions button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.room-card__actions button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.room-card__actions button{flex:1;font-size:.875rem}.room-card__actions button.btn-primary{background-color:#2e7d32;color:#fff}.room-card__actions button.btn-primary:hover:not(:disabled){background-color:#4caf50;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.room-card__actions button.btn-primary:active:not(:disabled){background-color:#1b5e20}.room-card__actions button.btn-secondary{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.room-card__actions button.btn-secondary:hover:not(:disabled){background-color:#2e7d3214}.room-card__actions button.btn-secondary:active:not(:disabled){background-color:#2e7d321f}.room-card__actions button.btn-danger{background-color:#f44336;color:#fff}.room-card__actions button.btn-danger:hover:not(:disabled){background-color:#f32c1e;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.room-card__actions button.btn-danger:active:not(:disabled){background-color:#ea1c0d}.permission-list{display:flex;flex-direction:column;gap:.75rem}.permission-item{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background-color:#fafafa;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.permission-item input[type=checkbox]{margin-top:4px;cursor:pointer}.permission-item:hover{background-color:#2e7d3205;border-color:#2e7d32}.permission-item.disabled{opacity:.5;cursor:not-allowed}.permission-item.disabled input[type=checkbox]{cursor:not-allowed}.permission-item .permission-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.permission-item .permission-content .permission-name{font-weight:600;color:#212121}.permission-item .permission-content .permission-description{font-size:.875rem;color:#757575}.permission-item .permission-category{padding:4px 8px;background-color:#2e7d32;color:#fff;font-size:.75rem;font-weight:700;border-radius:4px;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.data-table{width:100%;border-collapse:collapse;background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.data-table thead{background:linear-gradient(135deg,#2e7d3214,#00897b14)}.data-table thead th{padding:1rem;text-align:left;font-weight:600;color:#2e7d32;font-size:.875rem;text-transform:uppercase;letter-spacing:.02em;border-bottom:2px solid #E0E0E0;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .25s ease}.data-table thead th:hover{background-color:#2e7d321f}.data-table thead th.sortable{cursor:pointer}.data-table thead th.sortable:after{content:" ↕";opacity:.5}.data-table thead th.sortable.sorted-asc:after{content:" ↑";opacity:1}.data-table thead th.sortable.sorted-desc:after{content:" ↓";opacity:1}.data-table tbody tr{border-bottom:1px solid #E0E0E0;transition:all .25s ease}.data-table tbody tr:hover{background-color:#2e7d3205}.data-table tbody tr:last-child{border-bottom:0}.data-table tbody tr.selected{background-color:#2e7d320d}.data-table tbody td{padding:1rem;color:#212121;font-size:.875rem}.table-cell-badge{display:inline-flex;align-items:center;gap:.25rem;padding:4px 8px;font-size:.75rem;font-weight:500;background-color:#eee;color:#212121;border-radius:4px;white-space:nowrap}.table-cell-actions{display:flex;gap:.5rem}.table-cell-actions button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.table-cell-actions button:disabled,.table-cell-actions button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.table-cell-actions button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.table-cell-actions button{padding:6px .75rem;font-size:.75rem}.table-cell-actions button.btn-edit{background-color:#ff8f00;color:#fff}.table-cell-actions button.btn-edit:hover:not(:disabled){background-color:#ffb300;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.table-cell-actions button.btn-edit:active:not(:disabled){background-color:#e65100}.table-cell-actions button.btn-delete{background-color:#f44336;color:#fff}.table-cell-actions button.btn-delete:hover:not(:disabled){background-color:#f32c1e;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.table-cell-actions button.btn-delete:active:not(:disabled){background-color:#ea1c0d}.table-cell-actions button.btn-view{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.table-cell-actions button.btn-view:hover:not(:disabled){background-color:#2e7d3214}.table-cell-actions button.btn-view:active:not(:disabled){background-color:#2e7d321f}.upload-area{position:relative;padding:3rem;border:2px dashed #E0E0E0;border-radius:12px;background-color:#fafafa;cursor:pointer;transition:all .25s ease;text-align:center}@media (max-width: 767px){.upload-area{padding:2rem}}.upload-area:hover{border-color:#2e7d32;background-color:#2e7d3205}.upload-area.drag-over{border-color:#ff8f00;background-color:#ff8f000d}.upload-area input[type=file]{display:none}.upload-icon{width:64px;height:64px;margin:0 auto .75rem;font-size:3rem;opacity:.5}.upload-text{display:flex;flex-direction:column;gap:.25rem}.upload-text .upload-title{font-weight:600;color:#212121}.upload-text .upload-subtitle{font-size:.875rem;color:#757575}.upload-text .upload-hint{font-size:.75rem;color:#9e9e9e;margin-top:.5rem}.upload-previews{display:flex;flex-direction:column;gap:.75rem}.upload-previews .preview-item{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:#fafafa;border-radius:8px;border:1px solid #E0E0E0}.upload-previews .preview-image{width:80px;height:80px;border-radius:8px;overflow:hidden;background-color:#fff;border:1px solid #E0E0E0;flex-shrink:0}.upload-previews .preview-image img{width:100%;height:100%;object-fit:cover}.upload-previews .preview-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.upload-previews .preview-info .filename{font-weight:500;color:#212121;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-previews .preview-info .filesize{font-size:.75rem;color:#757575}.upload-previews .preview-actions{display:flex;gap:.5rem}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:linear-gradient(135deg,#1b5e20,#00897b,#ff8f00);position:relative;overflow:hidden}.login-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 50%,rgba(255,143,0,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,137,123,.1) 0%,transparent 50%),radial-gradient(circle at 40% 0%,rgba(46,125,50,.1) 0%,transparent 50%);pointer-events:none}.login-page:after{content:"";position:absolute;bottom:0;left:0;right:0;height:200px;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120"><defs><linearGradient id="wave" x1="0" x2="0" y1="0" y2="1"><stop offset="0" style="stop-color:rgba(255,255,255,0.05);stop-opacity:1"/><stop offset="1" style="stop-color:rgba(255,255,255,0.1);stop-opacity:1"/></linearGradient></defs><path d="M0,64L48,80C96,96,192,128,288,128C384,128,480,96,576,90.7C672,85,768,107,864,112C960,117,1056,107,1104,101.3L1152,96L1152,120L1104,120C1056,120,960,120,864,120C768,120,672,120,576,120C480,120,384,120,288,120C192,120,96,120,48,120L0,120Z" fill="url(%23wave)"/></svg>') repeat-x;background-size:300px 120px;animation:wave 15s linear infinite;pointer-events:none}@keyframes wave{0%{background-position:0 0}to{background-position:300px 0}}.login-page__content{position:relative;z-index:10;width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:2rem}.login-page__decoration{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center;color:#fff}.login-page__decoration .decoration-emoji{font-size:3rem;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.login-page__decoration .decoration-title{font-size:1.5rem;font-weight:700;line-height:1.2;color:#212121;margin:0;color:#fff}.login-page__decoration .decoration-subtitle{font-size:1rem;color:#ffffffe6;line-height:1.625}.login-card{background-color:#fff;padding:2rem;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05);width:100%;border-radius:16px;box-shadow:0 25px 50px #00000026;position:relative;overflow:hidden}@media (max-width: 767px){.login-card{padding:1.5rem}}.login-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2e7d32,#00897b,#ff8f00)}.login-card__logo{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-bottom:1.5rem}.login-card__icon{width:80px;height:80px;border-radius:12px;background:linear-gradient(135deg,#ff8f00,#ffb300);display:flex;align-items:center;justify-content:center;font-size:2.25rem;color:#fff;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.login-card__brand{text-align:center}.login-card__brand .brand-name{font-size:1.5rem;font-weight:700;line-height:1.2;color:#212121;margin:0 0 .25rem;color:#2e7d32}.login-card__brand .brand-tagline{font-size:.875rem;color:#757575}.login-form{display:flex;flex-direction:column;gap:1rem}.login-form__group{display:flex;flex-direction:column;gap:.5rem}.login-form__group label{font-size:.875rem;font-weight:600;color:#212121;display:flex;align-items:center;gap:.5rem}.login-form__group input{display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.login-form__group input::placeholder{color:#9e9e9e}.login-form__group input:hover:not(:disabled){border-color:#bdbdbd}.login-form__group input:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.login-form__group input:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.login-form__group input{padding:10px 1rem}.login-form__group input:focus{outline:none;border-color:#ff8f00;box-shadow:0 0 0 3px #ff8f001a}.login-form__group .input-icon{position:relative}.login-form__group .input-icon svg{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#757575;pointer-events:none}.login-form__group .input-icon input{padding-left:2.5rem}.login-form__remember{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.login-form__remember input[type=checkbox]{cursor:pointer;accent-color:#FF8F00}.login-form__remember label{cursor:pointer;color:#757575;margin:0;font-weight:400}.login-form__forgot{text-align:right}.login-form__forgot a{font-size:.875rem;color:#ff8f00;text-decoration:none;transition:color .25s ease}.login-form__forgot a:hover{color:#e65100;text-decoration:underline}.login-form__submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.login-form__submit:disabled,.login-form__submit.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.login-form__submit:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.login-form__submit{background-color:#ff8f00;color:#fff}.login-form__submit:hover:not(:disabled){background-color:#ffb300;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.login-form__submit:active:not(:disabled){background-color:#e65100}.login-form__submit{width:100%;height:48px;font-size:1rem;font-weight:600;margin-top:1rem;position:relative;overflow:hidden}.login-form__submit:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background-color:#fff3;transition:left .25s ease}.login-form__submit:hover:before{left:100%}.login-form__submit:disabled{opacity:.6;cursor:not-allowed}.login-form__submit .spinner{display:none;margin-right:.5rem}.login-form__submit.loading{pointer-events:none}.login-form__submit.loading .spinner{display:inline-block;animation:spin 1s linear infinite}.login-form__submit.loading .text{opacity:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-form__divider{display:flex;align-items:center;gap:.75rem;margin:1.5rem 0;color:#757575}.login-form__divider:before,.login-form__divider:after{content:"";flex:1;height:1px;background-color:#e0e0e0}.login-form__divider span{font-size:.875rem;font-weight:500}.login-form__oauth{display:flex;flex-direction:column;gap:.75rem}.login-form__oauth .oauth-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.login-form__oauth .oauth-button:disabled,.login-form__oauth .oauth-button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.login-form__oauth .oauth-button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.login-form__oauth .oauth-button{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.login-form__oauth .oauth-button:hover:not(:disabled){background-color:#2e7d3214}.login-form__oauth .oauth-button:active:not(:disabled){background-color:#2e7d321f}.login-form__oauth .oauth-button{height:44px;border:1px solid #E0E0E0;gap:.75rem}.login-form__oauth .oauth-button:hover{background-color:#fafafa;border-color:#2e7d32}.login-form__oauth .oauth-button .oauth-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:1.125rem}.login-card__footer{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #E0E0E0;text-align:center}.login-card__footer .footer-text{font-size:.875rem;color:#757575}.login-card__footer .footer-text a{color:#ff8f00;font-weight:600;text-decoration:none;transition:color .25s ease}.login-card__footer .footer-text a:hover{color:#e65100;text-decoration:underline}.login-error{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:#f443361a;border:1px solid rgba(244,67,54,.3);border-radius:8px;margin-bottom:1rem;color:#f44336;font-size:.875rem;animation:slideDown .3s cubic-bezier(0,0,.2,1)}.login-error .error-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.login-error .error-message{flex:1}.login-error .error-close{background:none;border:none;color:#f44336;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:opacity .25s ease}.login-error .error-close:hover{opacity:.7}.login-success{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:#4caf501a;border:1px solid rgba(76,175,80,.3);border-radius:8px;margin-bottom:1rem;color:#4caf50;font-size:.875rem;animation:slideDown .3s cubic-bezier(0,0,.2,1)}.login-success .success-icon{width:20px;height:20px;flex-shrink:0}.forgot-password-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);max-height:90vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#BDBDBD #F5F5F5}.forgot-password-modal::-webkit-scrollbar{width:8px;height:8px}.forgot-password-modal::-webkit-scrollbar-track{background-color:#f5f5f5}.forgot-password-modal::-webkit-scrollbar-thumb{background-color:#bdbdbd;border-radius:4px}.forgot-password-modal::-webkit-scrollbar-thumb:hover{background-color:#757575}.forgot-password-modal{z-index:1050;background-color:#fff;border-radius:12px;padding:2rem;max-width:420px;box-shadow:0 25px 50px #00000026}@media (max-width: 767px){.forgot-password-modal{padding:1.5rem;width:90vw}}.forgot-password-modal .modal-header{margin-bottom:1.5rem}.forgot-password-modal .modal-header .modal-title{font-size:1.25rem;font-weight:700;line-height:1.2;color:#212121;margin:0 0 .5rem}.forgot-password-modal .modal-header .modal-description{font-size:.875rem;color:#757575}.forgot-password-modal .modal-body{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.forgot-password-modal .modal-footer{display:flex;gap:.75rem;padding-top:1.5rem;border-top:1px solid #E0E0E0}.forgot-password-modal .modal-footer button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.forgot-password-modal .modal-footer button:disabled,.forgot-password-modal .modal-footer button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.forgot-password-modal .modal-footer button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.forgot-password-modal .modal-footer button{flex:1}.forgot-password-modal .modal-footer button.btn-primary{background-color:#ff8f00;color:#fff}.forgot-password-modal .modal-footer button.btn-primary:hover:not(:disabled){background-color:#ffb300;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.forgot-password-modal .modal-footer button.btn-primary:active:not(:disabled){background-color:#e65100}.forgot-password-modal .modal-footer button.btn-cancel{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.forgot-password-modal .modal-footer button.btn-cancel:hover:not(:disabled){background-color:#2e7d3214}.forgot-password-modal .modal-footer button.btn-cancel:active:not(:disabled){background-color:#2e7d321f}.two-factor-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:linear-gradient(135deg,#1b5e20,#00897b,#ff8f00)}.two-factor-page .card{background-color:#fff;padding:2rem;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05);width:100%;max-width:420px;border-radius:16px;box-shadow:0 25px 50px #00000026}.two-factor-page .card-title{font-size:1.25rem;font-weight:700;line-height:1.2;color:#212121;margin:0 0 .5rem;text-align:center}.two-factor-page .card-subtitle{font-size:.875rem;color:#757575;text-align:center;margin-bottom:1.5rem}.two-factor-form{display:flex;flex-direction:column;gap:1rem}.two-factor-form .code-inputs{display:flex;gap:.75rem;justify-content:center}.two-factor-form .code-inputs input{width:56px;height:56px;text-align:center;font-size:1.5rem;font-weight:700;border:2px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.two-factor-form .code-inputs input:focus{outline:none;border-color:#ff8f00;box-shadow:0 0 0 3px #ff8f001a}.two-factor-form .code-inputs input.filled{border-color:#ff8f00;background-color:#ff8f000d}.two-factor-form .form-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.two-factor-form .form-actions button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.two-factor-form .form-actions button:disabled,.two-factor-form .form-actions button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.two-factor-form .form-actions button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.two-factor-form .form-actions button.btn-verify{background-color:#ff8f00;color:#fff}.two-factor-form .form-actions button.btn-verify:hover:not(:disabled){background-color:#ffb300;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.two-factor-form .form-actions button.btn-verify:active:not(:disabled){background-color:#e65100}.two-factor-form .form-actions button.btn-cancel{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.two-factor-form .form-actions button.btn-cancel:hover:not(:disabled){background-color:#2e7d3214}.two-factor-form .form-actions button.btn-cancel:active:not(:disabled){background-color:#2e7d321f}@media (max-width: 767px){.login-page{padding:1rem}.login-page:after{height:150px}.login-page__decoration{gap:.5rem}.login-page__decoration .decoration-emoji{font-size:2.25rem}.login-page__decoration .decoration-title{font-size:1.25rem}.login-page__decoration .decoration-subtitle{font-size:.875rem}.login-card:before{height:3px}}.btn,button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.btn:disabled,.btn.disabled,button:disabled,button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn:focus-visible,button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.btn-primary{background-color:#2e7d32;color:#fff}.btn-primary:hover:not(:disabled){background-color:#4caf50;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.btn-primary:active:not(:disabled){background-color:#1b5e20}.btn-secondary{background-color:#ff8f00;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#ffb300;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.btn-secondary:active:not(:disabled){background-color:#e65100}.btn-danger{background-color:#f44336;color:#fff}.btn-danger:hover:not(:disabled){background-color:#f32c1e;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.btn-danger:active:not(:disabled){background-color:#ea1c0d}.btn-ghost{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.btn-ghost:hover:not(:disabled){background-color:#2e7d3214}.btn-ghost:active:not(:disabled){background-color:#2e7d321f}.btn-text{background-color:transparent;color:#2e7d32}.btn-text:hover:not(:disabled){background-color:#2e7d3214}.btn-text:active:not(:disabled){background-color:#2e7d321f}.btn-sm{min-height:32px;padding:6px .75rem;font-size:.875rem}.btn-lg{min-height:48px;padding:12px 1.5rem;font-size:1.125rem}.btn-full{width:100%}.btn-icon{width:40px;height:40px;padding:0;min-width:40px}.btn-icon.btn-sm{width:32px;height:32px;min-width:32px}.btn-icon.btn-lg{width:48px;height:48px;min-width:48px}.btn-loading{pointer-events:none;opacity:.8}.btn-group{display:flex;gap:.5rem}.btn-group .btn{flex:1}.btn-group .btn:not(:last-child){margin-right:-1px}.btn-group .btn:not(:first-child):not(:last-child){border-radius:0}.btn-group .btn:first-child{border-radius:8px 0 0 8px}.btn-group .btn:last-child{border-radius:0 8px 8px 0}.input,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]){display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.input::placeholder,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file])::placeholder{color:#9e9e9e}.input:hover:not(:disabled),input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):hover:not(:disabled){border-color:#bdbdbd}.input:focus,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.input:disabled,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.input--sm{height:32px;padding:6px 1rem;font-size:.875rem}.input--lg{height:48px;padding:12px 1rem;font-size:1.125rem}.select{display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.select::placeholder{color:#9e9e9e}.select:hover:not(:disabled){border-color:#bdbdbd}.select:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.select:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236B7280'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.25rem;padding-right:3.25rem}.select::-ms-expand{display:none}.textarea{display:block;width:100%;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease;resize:vertical;line-height:1.5}.textarea::placeholder{color:#9e9e9e}.textarea:hover:not(:disabled){border-color:#bdbdbd}.textarea:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.textarea:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.textarea{min-height:100px}.input-wrapper{position:relative;display:flex;align-items:center}.input-wrapper .input-icon{position:absolute;left:.75rem;color:#757575;pointer-events:none}.input-wrapper .input-icon svg{width:18px;height:18px}.input-wrapper input,.input-wrapper select,.input-wrapper textarea{padding-left:2.5rem}.input-wrapper.input-wrapper--right .input-icon{left:auto;right:.75rem}.input-wrapper.input-wrapper--right input,.input-wrapper.input-wrapper--right select,.input-wrapper.input-wrapper--right textarea{padding-left:1rem;padding-right:2.5rem}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:4px 8px;font-size:.75rem;font-weight:500;background-color:#eee;color:#212121;border-radius:4px;white-space:nowrap}.badge-lg{width:calc(100% - 10px);left:5px;top:5px;justify-content:center;border-radius:0}.badge--primary{display:inline-flex;align-items:center;gap:.25rem;padding:4px 8px;font-size:.75rem;font-weight:500;background-color:#2e7d32;color:#fff;border-radius:4px;white-space:nowrap}.badge--secondary{display:inline-flex;align-items:center;gap:.25rem;padding:4px 8px;font-size:.75rem;font-weight:500;background-color:#ff8f00;color:#fff;border-radius:4px;white-space:nowrap}.badge--success{display:inline-flex;align-items:center;gap:.25rem;padding:4px 8px;font-size:.75rem;font-weight:500;background-color:#4caf50;color:#fff;border-radius:4px;white-space:nowrap}.badge--warning{display:inline-flex;align-items:center;gap:.25rem;padding:4px 8px;font-size:.75rem;font-weight:500;background-color:#ff9800;color:#fff;border-radius:4px;white-space:nowrap}.badge--danger,.badge--error{display:inline-flex;align-items:center;gap:.25rem;padding:4px 8px;font-size:.75rem;font-weight:500;background-color:#f44336;color:#fff;border-radius:4px;white-space:nowrap}.badge--info{display:inline-flex;align-items:center;gap:.25rem;padding:4px 8px;font-size:.75rem;font-weight:500;background-color:#2196f3;color:#fff;border-radius:4px;white-space:nowrap}.badge--lg{padding:8px 12px;font-size:.875rem}.badge--outline{background-color:transparent;border:1px solid #E0E0E0;color:#212121}.badge--outline.badge--primary{border-color:#2e7d32;color:#2e7d32}.badge--outline.badge--success{border-color:#4caf50;color:#4caf50}.card{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05)}.card--plain{background-color:transparent;box-shadow:none;padding:0;border:none}.card--bordered{border:1px solid #E0E0E0;box-shadow:none}.card--interactive{cursor:pointer;transition:all .25s ease}.card--interactive:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-2px)}.card__header{padding:1.5rem;border-bottom:1px solid #E0E0E0}.card__header .card__title{font-size:1.125rem;font-weight:700;line-height:1.2;color:#212121;margin:0}.card__header .card__subtitle{font-size:.875rem;color:#757575;margin-top:.25rem}.card__body{padding:1.5rem}.card__footer{padding:1.5rem;border-top:1px solid #E0E0E0;background-color:#fafafa}.modal__overlay{width:100%;height:100%;position:fixed;top:0;left:0;right:0;bottom:0;background-color:#1a1a1a80;z-index:1040;animation:fadeIn .25s ease}.modal{z-index:1040;border-radius:12px;width:100%;height:100%;position:fixed;top:0;left:0;overflow-y:auto;animation:slideUp .25s ease cubic-bezier(0,0,.2,1)}.modal .modal__content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);max-height:90vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#BDBDBD #F5F5F5}.modal .modal__content::-webkit-scrollbar{width:8px;height:8px}.modal .modal__content::-webkit-scrollbar-track{background-color:#f5f5f5}.modal .modal__content::-webkit-scrollbar-thumb{background-color:#bdbdbd;border-radius:4px}.modal .modal__content::-webkit-scrollbar-thumb:hover{background-color:#757575}.modal .modal__content{z-index:1050;background-color:#fff;width:90vw}@media (max-width: 767px){.modal .modal__content{width:100%;height:100%;max-height:initial}}@media (min-width: 768px){.modal .modal__content{max-width:600px;max-height:90vh}}.modal__header{padding:1.5rem;border-bottom:1px solid #E0E0E0;display:flex;justify-content:space-between;align-items:center;gap:1rem}.modal__header .modal__title{font-size:1.25rem;font-weight:700;line-height:1.2;color:#212121;margin:0}.modal__header .modal__close{background:none;border:none;width:32px;height:32px;color:#757575;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center}.modal__header .modal__close:hover{color:#212121;background-color:#f5f5f5}.modal__header .modal__close svg{width:20px;height:20px}.modal__body{padding:1.5rem}.modal__footer{padding:1.5rem;border-top:1px solid #E0E0E0;background-color:#fafafa;display:flex;justify-content:flex-end;gap:.75rem}.modal__footer button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.modal__footer button:disabled,.modal__footer button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.modal__footer button:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.toast{position:fixed;padding:1rem 1.5rem;border-radius:8px;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;display:flex;align-items:center;gap:.75rem;min-width:300px;max-width:500px;z-index:1080;animation:slideInRight .25s ease cubic-bezier(0,0,.2,1)}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@media (max-width: 767px){.toast{min-width:auto;width:calc(100% - 1rem);left:.5rem;right:.5rem}}.toast.toast--top-right{top:1.5rem;right:1.5rem}@media (max-width: 767px){.toast.toast--top-right{top:1rem;right:0;left:0}}.toast.toast--bottom-right{bottom:1.5rem;right:1.5rem}@media (max-width: 767px){.toast.toast--bottom-right{bottom:1rem;right:0;left:0}}.toast.toast--top-left{top:1.5rem;left:1.5rem}.toast.toast--bottom-left{bottom:1.5rem;left:1.5rem}.toast .toast__icon{width:20px;height:20px;flex-shrink:0}.toast .toast__message{flex:1;font-size:.875rem;color:#fff}.toast .toast__close{background:none;border:none;color:#fff;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast .toast__close:hover{opacity:.8}.toast--success{background:linear-gradient(135deg,#4caf50,#66bb6a)}.toast--error{background:linear-gradient(135deg,#f44336,#ef5350)}.toast--warning{background:linear-gradient(135deg,#ff9800,#ffb74d);color:#212121}.toast--warning .toast__message{color:#212121}.toast--info{background:linear-gradient(135deg,#2196f3,#42a5f5)}.spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:200px;height:100%;width:100%;gap:.75rem}.spinner__message{color:#757575;font-size:.875rem}.spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#2e7d32;animation:spin .8s linear infinite}.spinner.spinner--sm{width:16px;height:16px;border-width:2px}.spinner.spinner--lg{width:32px;height:32px;border-width:4px}.spinner.spinner--primary{border-color:#2e7d3233;border-top-color:#2e7d32}.spinner.spinner--secondary{border-color:#ff8f0033;border-top-color:#ff8f00}.spinner.spinner--white{border-color:#fff3;border-top-color:#fff}.loader{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2rem}.loader .loader__spinner{width:24px;height:24px;border:3px solid rgba(46,125,50,.2);border-top-color:#2e7d32;border-radius:50%;animation:spin .8s linear infinite}.loader .loader__text{color:#757575;font-size:.875rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem;background-color:#fafafa;border-radius:12px;border:2px dashed #E0E0E0}.empty-state__icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state__title{font-size:1.25rem;font-weight:700;line-height:1.2;color:#212121;margin:0 0 .5rem}.empty-state__description{color:#757575;margin-bottom:1.5rem;max-width:400px}.empty-state__action{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.empty-state__action:disabled,.empty-state__action.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.empty-state__action:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.search-bar{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.search-bar:focus-within{border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.search-bar .search-icon{width:18px;height:18px;color:#757575;flex-shrink:0}.search-bar input{flex:1;background:none;border:none;color:#212121;font-size:1rem}.search-bar input::placeholder{color:#9e9e9e}.search-bar input:focus{outline:none}.search-bar .search-clear{background:none;border:none;color:#757575;cursor:pointer;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .25s ease}.search-bar .search-clear:hover{color:#212121}.avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2e7d32,#00897b);color:#fff;font-weight:700;font-size:1rem;flex-shrink:0;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.avatar--sm{width:32px;height:32px;font-size:.875rem}.avatar.avatar--lg{width:56px;height:56px;font-size:1.125rem}.avatar.avatar--xl{width:80px;height:80px;font-size:1.5rem}.avatar.avatar--primary{background:linear-gradient(135deg,#2e7d32,#4caf50)}.avatar.avatar--secondary{background:linear-gradient(135deg,#ff8f00,#ffb300)}.avatar.avatar--success{background:linear-gradient(135deg,#4caf50,#66bb6a)}.avatar-group{display:flex;gap:-8px;align-items:center}.avatar-group .avatar{border:2px solid #FFFFFF;margin-left:-8px}.avatar-group .avatar:first-child{margin-left:0}.avatar-group.avatar-group--sm .avatar{margin-left:-6px}.stat-card{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05);display:flex;align-items:flex-start;gap:1rem;transition:all .25s ease}.stat-card:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-4px)}.stat-card__icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;background:linear-gradient(135deg,#2e7d321a,#00897b1a)}.stat-card__content{flex:1}.stat-card__content .stat-label{font-size:.875rem;color:#757575;font-weight:500}.stat-card__content .stat-value{font-size:1.5rem;font-weight:700;line-height:1.2;color:#212121;margin:.25rem 0 0}.stat-card__content .stat-change{font-size:.875rem;margin-top:.25rem}.stat-card__content .stat-change.positive{color:#4caf50}.stat-card__content .stat-change.positive:before{content:"↑ "}.stat-card__content .stat-change.negative{color:#f44336}.stat-card__content .stat-change.negative:before{content:"↓ "}.dropdown{position:relative;display:inline-block}.dropdown__trigger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.dropdown__trigger:disabled,.dropdown__trigger.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.dropdown__trigger:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.dropdown__trigger{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.dropdown__trigger:hover:not(:disabled){background-color:#2e7d3214}.dropdown__trigger:active:not(:disabled){background-color:#2e7d321f}.dropdown__menu{position:absolute;top:calc(100% + .5rem);left:0;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;z-index:1000;min-width:200px;overflow:hidden;animation:slideDown .25s ease cubic-bezier(0,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown__menu.dropdown__menu--right{left:auto;right:0}.dropdown__item{padding:.75rem 1rem;color:#212121;cursor:pointer;transition:all .25s ease;text-decoration:none;display:block;width:100%;text-align:left;background:none;border:none}.dropdown__item:hover{background-color:#fafafa;color:#2e7d32}.dropdown__item.active{background-color:#2e7d321a;color:#2e7d32;font-weight:600}.dropdown__item.disabled{opacity:.5;cursor:not-allowed}.dropdown__item.disabled:hover{background-color:transparent}.dropdown__item.destructive{color:#f44336}.dropdown__item.destructive:hover{background-color:#f443361a;color:#f44336}.dropdown__divider{height:1px;background-color:#e0e0e0;margin:.5rem 0}.tabs{display:flex;flex-direction:column;gap:1rem}.tabs__nav{display:flex;gap:0;border-bottom:2px solid #E0E0E0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#BDBDBD #F5F5F5}.tabs__nav::-webkit-scrollbar{width:8px;height:8px}.tabs__nav::-webkit-scrollbar-track{background-color:#f5f5f5}.tabs__nav::-webkit-scrollbar-thumb{background-color:#bdbdbd;border-radius:4px}.tabs__nav::-webkit-scrollbar-thumb:hover{background-color:#757575}@media (max-width: 767px){.tabs__nav{gap:0}}.tabs__button{padding:1rem 1.5rem;background:none;border:none;color:#757575;cursor:pointer;font-weight:500;border-bottom:3px solid transparent;transition:all .25s ease;position:relative;white-space:nowrap}@media (max-width: 767px){.tabs__button{padding:.75rem 1rem;font-size:.875rem}}.tabs__button:hover{color:#2e7d32}.tabs__button.active{color:#2e7d32;border-bottom-color:#2e7d32}.tabs__content{animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.progress{width:100%;height:8px;background-color:#eee;border-radius:9999px;overflow:hidden}.progress__bar{height:100%;background:linear-gradient(90deg,#2e7d32,#00897b);border-radius:9999px;transition:width .25s ease}.divider{height:1px;background-color:#e0e0e0;margin:1rem 0}.divider.divider--horizontal{width:100%}.divider.divider--vertical{width:1px;height:100%;margin:0 1rem}.divider.divider--dashed{border-top:1px dashed #E0E0E0;background:none}.dashboard{display:flex;flex-direction:column;gap:2rem;padding:20px}@media (max-width: 767px){.dashboard{gap:1.5rem;padding:10px}}.dashboard__header{display:flex;align-items:center;justify-content:space-between;align-items:flex-start;gap:1rem}@media (max-width: 767px){.dashboard__header{flex-direction:column;align-items:stretch}}.dashboard__header .header-title{display:flex;flex-direction:column;gap:.5rem}.dashboard__header .header-title .title-main{font-size:1.875rem;font-weight:700;line-height:1.2;color:#212121;margin:0}.dashboard__header .header-title .title-sub{font-size:1rem;color:#757575}.dashboard__header .header-actions{display:flex;gap:.75rem}@media (max-width: 767px){.dashboard__header .header-actions{flex-wrap:wrap}.dashboard__header .header-actions button{flex:1;min-width:120px}}.dashboard__date-range{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:#fafafa;border-radius:8px;border:1px solid #E0E0E0}@media (max-width: 767px){.dashboard__date-range{width:100%}}.dashboard__date-range .date-label{font-size:.875rem;color:#757575;font-weight:500}.dashboard__date-range input{display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.dashboard__date-range input::placeholder{color:#9e9e9e}.dashboard__date-range input:hover:not(:disabled){border-color:#bdbdbd}.dashboard__date-range input:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.dashboard__date-range input:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.dashboard__date-range input{max-width:140px;height:36px;font-size:.875rem}@media (max-width: 767px){.dashboard__date-range input{flex:1}}.dashboard__date-range .date-separator{color:#757575}.dashboard__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}@media (max-width: 767px){.dashboard__stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}}@media (min-width: 1024px){.dashboard__stats{grid-template-columns:repeat(4,1fr)}}.stat-card{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05);border-left:4px solid #2E7D32;transition:all .25s ease;display:flex;flex-direction:column;gap:.75rem}.stat-card:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-4px);border-left-width:6px}.stat-card.stat-card--bookings{border-left-color:#2e7d32}.stat-card.stat-card--bookings .stat-icon{background:linear-gradient(135deg,#2e7d321a,#4caf501a);color:#2e7d32}.stat-card.stat-card--revenue{border-left-color:#ff8f00}.stat-card.stat-card--revenue .stat-icon{background:linear-gradient(135deg,#ff8f001a,#ffb3001a);color:#ff8f00}.stat-card.stat-card--occupancy{border-left-color:#00897b}.stat-card.stat-card--occupancy .stat-icon{background:linear-gradient(135deg,#00897b1a,#00bcd41a);color:#00897b}.stat-card.stat-card--guests{border-left-color:#2196f3}.stat-card.stat-card--guests .stat-icon{background:linear-gradient(135deg,#2196f31a,#00bcd41a);color:#2196f3}.stat-card .stat-header{display:flex;align-items:center;justify-content:space-between;align-items:flex-start}.stat-card .stat-label{font-size:.875rem;color:#757575;font-weight:500}.stat-card .stat-icon{width:44px;height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.stat-card .stat-value{font-size:1.5rem;font-weight:700;line-height:1.2;color:#212121;margin:0}.stat-card .stat-change{display:flex;align-items:center;gap:.25rem;font-size:.875rem;font-weight:500}.stat-card .stat-change.positive{color:#4caf50}.stat-card .stat-change.positive .change-arrow{transform:rotate(0)}.stat-card .stat-change.negative{color:#f44336}.stat-card .stat-change.negative .change-arrow{transform:rotate(180deg)}.stat-card .stat-change .change-arrow{display:inline-block;transition:transform .25s ease}.stat-card .stat-change .change-percent{font-weight:700}.stat-card .stat-change .change-period{color:#757575;font-weight:400}.dashboard__today{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}@media (max-width: 767px){.dashboard__today{grid-template-columns:1fr;gap:1rem}}.today-card{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05);transition:all .25s ease}.today-card:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d}.today-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #E0E0E0}.today-card .card-header .card-title{font-size:1.125rem;font-weight:600;line-height:1.2;color:#212121;margin:0}.today-card .card-header .card-action{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.today-card .card-header .card-action:disabled,.today-card .card-header .card-action.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.today-card .card-header .card-action:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.today-card .card-header .card-action{background-color:transparent;color:#2e7d32}.today-card .card-header .card-action:hover:not(:disabled){background-color:#2e7d3214}.today-card .card-header .card-action:active:not(:disabled){background-color:#2e7d321f}.today-card .card-header .card-action{padding:0;width:32px;height:32px;min-width:32px}.today-card .card-content{display:flex;flex-direction:column;gap:1rem}.checkin-checkout{display:flex;flex-direction:column;gap:.75rem}.checkin-checkout .checkin-item,.checkin-checkout .checkout-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:#fafafa;border-radius:8px;border-left:4px solid;transition:all .25s ease}.checkin-checkout .checkin-item:hover,.checkin-checkout .checkout-item:hover{background-color:#fff;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.checkin-checkout .checkin-item{border-left-color:#1565c0}.checkin-checkout .checkout-item{border-left-color:#e65100}.checkin-checkout .item-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.125rem;flex-shrink:0}.checkin-checkout .item-details{flex:1;min-width:0}.checkin-checkout .item-details .item-guest{font-weight:600;color:#212121;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkin-checkout .item-details .item-room{font-size:.875rem;color:#757575}.checkin-checkout .item-time{font-size:.875rem;color:#757575;font-weight:500;flex-shrink:0}.occupancy-overview{display:flex;flex-direction:column;gap:1rem}.occupancy-overview .occupancy-bar{display:flex;flex-direction:column;gap:.5rem}.occupancy-overview .occupancy-bar .bar-label{display:flex;align-items:center;justify-content:space-between;font-size:.875rem}.occupancy-overview .occupancy-bar .bar-label .label-name{font-weight:500;color:#212121}.occupancy-overview .occupancy-bar .bar-label .label-percent{color:#757575;font-weight:600}.occupancy-overview .occupancy-bar .bar-container{width:100%;height:24px;background-color:#eee;border-radius:9999px;overflow:hidden}.occupancy-overview .occupancy-bar .bar-fill{height:100%;background:linear-gradient(90deg,#2e7d32,#00897b);border-radius:9999px;transition:width .25s ease}.occupancy-overview .occupancy-legend{display:flex;justify-content:space-around;padding:1rem;background-color:#fafafa;border-radius:8px}@media (max-width: 767px){.occupancy-overview .occupancy-legend{flex-wrap:wrap;gap:.5rem}}.occupancy-overview .occupancy-legend .legend-item{text-align:center}.occupancy-overview .occupancy-legend .legend-item .legend-value{font-size:1.125rem;font-weight:700;color:#212121}.occupancy-overview .occupancy-legend .legend-item .legend-label{font-size:.75rem;color:#757575;text-transform:uppercase;letter-spacing:.02em;margin-top:4px}.revenue-overview{display:flex;flex-direction:column;gap:1rem}.revenue-overview .revenue-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background-color:#fafafa;border-radius:8px;border-left:4px solid #FF8F00}.revenue-overview .revenue-item .revenue-label{display:flex;flex-direction:column;gap:.25rem}.revenue-overview .revenue-item .revenue-label .label-name{font-weight:600;color:#212121}.revenue-overview .revenue-item .revenue-label .label-detail{font-size:.75rem;color:#757575}.revenue-overview .revenue-item .revenue-amount{font-size:1.125rem;font-weight:700;color:#ff8f00}.dashboard__charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:1.5rem}@media (min-width: 768px){.dashboard__charts{grid-template-columns:repeat(2,1fr)}}@media (max-width: 767px){.dashboard__charts{grid-template-columns:1fr;gap:1rem}}@media (min-width: 1280px){.dashboard__charts{grid-template-columns:repeat(2,1fr)}}.chart-card{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05);display:flex;flex-direction:column;gap:1rem}.chart-card .chart-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid #E0E0E0}.chart-card .chart-header .chart-title{font-size:1.125rem;font-weight:600;line-height:1.2;color:#212121;margin:0}.chart-card .chart-header .chart-actions{display:flex;gap:.5rem}.chart-card .chart-header .chart-actions .chart-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.chart-card .chart-header .chart-actions .chart-action-btn:disabled,.chart-card .chart-header .chart-actions .chart-action-btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.chart-card .chart-header .chart-actions .chart-action-btn:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.chart-card .chart-header .chart-actions .chart-action-btn{background-color:transparent;color:#2e7d32;border-color:#2e7d32}.chart-card .chart-header .chart-actions .chart-action-btn:hover:not(:disabled){background-color:#2e7d3214}.chart-card .chart-header .chart-actions .chart-action-btn:active:not(:disabled){background-color:#2e7d321f}.chart-card .chart-header .chart-actions .chart-action-btn{padding:6px .75rem;font-size:.875rem}.chart-card .chart-container{flex:1;min-height:300px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2e7d3205,#00897b05);border-radius:8px}.chart-card .chart-legend{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;padding-top:.75rem;border-top:1px solid #E0E0E0}@media (max-width: 767px){.chart-card .chart-legend{gap:.5rem}}.chart-card .chart-legend .legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.chart-card .chart-legend .legend-item .legend-color{width:12px;height:12px;border-radius:2px}.chart-card .chart-legend .legend-item .legend-label{color:#757575}.booking-trends .trends-list{display:flex;flex-direction:column;gap:.75rem}.booking-trends .trends-list .trend-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:#fafafa;border-radius:8px;transition:all .25s ease}.booking-trends .trends-list .trend-item:hover{background-color:#2e7d320d}.booking-trends .trends-list .trend-item .trend-name{font-weight:500;color:#212121}.booking-trends .trends-list .trend-item .trend-value{display:flex;align-items:center;gap:.5rem}.booking-trends .trends-list .trend-item .trend-value .value-number{font-size:1.125rem;font-weight:700;color:#2e7d32}.booking-trends .trends-list .trend-item .trend-value .value-change{font-size:.875rem;padding:2px 6px;border-radius:4px}.booking-trends .trends-list .trend-item .trend-value .value-change.positive{background-color:#4caf501a;color:#4caf50}.booking-trends .trends-list .trend-item .trend-value .value-change.negative{background-color:#f443361a;color:#f44336}.dashboard__activities{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;border:1px solid rgba(0,0,0,.05)}.dashboard__activities .activities-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;margin-bottom:1rem;border-bottom:2px solid #E0E0E0}.dashboard__activities .activities-header .activities-title{font-size:1.125rem;font-weight:600;line-height:1.2;color:#212121;margin:0}.dashboard__activities .activities-header .activities-view-all{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.dashboard__activities .activities-header .activities-view-all:disabled,.dashboard__activities .activities-header .activities-view-all.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.dashboard__activities .activities-header .activities-view-all:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.dashboard__activities .activities-header .activities-view-all{background-color:transparent;color:#2e7d32}.dashboard__activities .activities-header .activities-view-all:hover:not(:disabled){background-color:#2e7d3214}.dashboard__activities .activities-header .activities-view-all:active:not(:disabled){background-color:#2e7d321f}.dashboard__activities .activities-header .activities-view-all{font-size:.875rem;padding:0;height:auto;min-width:auto}.dashboard__activities .activities-list{display:flex;flex-direction:column;gap:.75rem}.dashboard__activities .activity-item{display:flex;gap:.75rem;padding:.75rem;background-color:#fafafa;border-radius:8px;border-left:4px solid #E0E0E0}.dashboard__activities .activity-item.activity-reservation{border-left-color:#2e7d32}.dashboard__activities .activity-item.activity-payment{border-left-color:#ff8f00}.dashboard__activities .activity-item.activity-checkin{border-left-color:#1565c0}.dashboard__activities .activity-item.activity-checkout{border-left-color:#e65100}.dashboard__activities .activity-item .activity-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.125rem;flex-shrink:0}.dashboard__activities .activity-item .activity-content{flex:1;min-width:0}.dashboard__activities .activity-item .activity-content .activity-description{font-weight:500;color:#212121;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard__activities .activity-item .activity-content .activity-time{font-size:.75rem;color:#757575;margin-top:4px}.dashboard__activities .activity-item .activity-action{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.dashboard__activities .activity-item .activity-action:disabled,.dashboard__activities .activity-item .activity-action.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.dashboard__activities .activity-item .activity-action:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.dashboard__activities .activity-item .activity-action{background-color:transparent;color:#2e7d32}.dashboard__activities .activity-item .activity-action:hover:not(:disabled){background-color:#2e7d3214}.dashboard__activities .activity-item .activity-action:active:not(:disabled){background-color:#2e7d321f}.dashboard__activities .activity-item .activity-action{font-size:.75rem;padding:0;width:24px;height:24px;min-width:24px}.dashboard__filters{display:flex;gap:.75rem;padding:1rem;background-color:#fafafa;border-radius:8px;flex-wrap:wrap}@media (max-width: 767px){.dashboard__filters{flex-direction:column}}.dashboard__filters .filter-group{display:flex;align-items:center;gap:.5rem}.dashboard__filters .filter-group label{font-size:.875rem;font-weight:500;color:#757575;margin:0}.dashboard__filters .filter-group select{display:flex;align-items:center;width:100%;height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;color:#212121;background-color:#fff;border:1px solid #E0E0E0;border-radius:8px;transition:all .25s ease}.dashboard__filters .filter-group select::placeholder{color:#9e9e9e}.dashboard__filters .filter-group select:hover:not(:disabled){border-color:#bdbdbd}.dashboard__filters .filter-group select:focus{outline:none;border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.dashboard__filters .filter-group select:disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.dashboard__filters .filter-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236B7280'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd' /%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.25rem;padding-right:3.25rem}.dashboard__filters .filter-group select::-ms-expand{display:none}.dashboard__filters .filter-group select{max-width:200px;height:36px;font-size:.875rem;padding:6px .75rem}.dashboard__filters .filter-reset{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:10px 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .25s ease;text-decoration:none;-webkit-user-select:none;user-select:none;white-space:nowrap;position:relative}.dashboard__filters .filter-reset:disabled,.dashboard__filters .filter-reset.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.dashboard__filters .filter-reset:focus-visible{outline:2px solid #2E7D32;outline-offset:2px}.dashboard__filters .filter-reset{background-color:transparent;color:#2e7d32}.dashboard__filters .filter-reset:hover:not(:disabled){background-color:#2e7d3214}.dashboard__filters .filter-reset:active:not(:disabled){background-color:#2e7d321f}.dashboard__filters .filter-reset{font-size:.875rem;padding:6px 12px;margin-left:auto}@media (max-width: 767px){.dashboard__filters .filter-reset{margin-left:0}}@media (max-width: 767px){.dashboard__stats{grid-template-columns:repeat(2,1fr)}.stat-card .stat-change{font-size:.75rem}.dashboard__charts{grid-template-columns:1fr}.dashboard__charts .chart-container{min-height:250px}}.reservation-form{display:flex;flex-direction:column;gap:2rem;width:100%}.form-section{display:flex;flex-direction:column;gap:1.5rem;padding:2rem;background-color:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb}.form-section__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.form-group--full{grid-column:1/-1}.form-section__title{margin:0;font-size:1.1rem;font-weight:600;color:#1f2937;border-bottom:2px solid #3b82f6;padding-bottom:.75rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{display:block;font-size:.95rem;font-weight:500;color:#374151;margin-bottom:.25rem}.required{color:#ef4444;margin-left:.25rem}.form-input,.form-select,.form-textarea{padding:.75rem;font-size:1rem;border:1px solid #d1d5db;border-radius:.375rem;font-family:inherit;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background-color:#f3f4f6;cursor:not-allowed;color:#9ca3af}.form-input--error{border-color:#ef4444;background-color:#fef2f2}.form-input--error:focus{box-shadow:0 0 0 3px #ef44441a}.form-input--readonly{background-color:#f3f4f6;cursor:not-allowed;color:#374151}.form-textarea{resize:vertical;min-height:120px}.form-error{font-size:.875rem;color:#ef4444;margin-top:.25rem}.form-actions{display:flex;gap:1rem;margin-top:1rem;justify-content:flex-end}.form-actions .btn{padding:.75rem 1.5rem;font-size:1rem;border:none;border-radius:.375rem;cursor:pointer;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.form-actions .btn:disabled{opacity:.6;cursor:not-allowed}.spinner--small{display:inline-block;width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 768px){.form-section{padding:1rem}.form-section__grid{grid-template-columns:1fr}.form-actions{flex-direction:column;gap:.75rem}.form-actions .btn{width:100%;justify-content:center}}.reservation-card{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.reservation-card:hover{border-color:#3b82f6;box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.reservation-card:focus{outline:2px solid #3b82f6;outline-offset:2px}.reservation-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.reservation-card__guest{display:flex;flex-direction:column;gap:.5rem;flex:1}.reservation-card__name{margin:0;font-size:1.05rem;font-weight:600;color:#1f2937;word-break:break-word}.reservation-card__body{display:flex;flex-direction:column;gap:.5rem}.reservation-card__row{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#4b5563;flex-wrap:wrap}.reservation-card__icon{color:#6b7280;flex-shrink:0}.reservation-card__label{font-weight:500;color:#6b7280;flex-shrink:0}.reservation-card__value{color:#1f2937;font-weight:500}@media (max-width: 640px){.reservation-card{padding:.875rem;gap:.5rem}.reservation-card__name{font-size:1rem}.reservation-card__row{font-size:.9rem}}.reservation-detail{display:flex;flex-direction:column;gap:1.5rem}.back-button{align-self:flex-start;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:transparent;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;font-size:1rem;color:#374151;transition:all .2s ease}.back-button:hover{background-color:#f3f4f6;border-color:#9ca3af}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:1.5rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem}.detail-header__info{display:flex;flex-direction:column;gap:1rem;flex:1}.detail-header__info h1{margin:0;font-size:2rem;font-weight:700;color:#1f2937}.detail-header__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}.detail-header__actions .btn{padding:.75rem 1rem;font-size:.95rem;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.detail-edit-container{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:2rem}.detail-edit-container h2{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;color:#1f2937}.detail-section{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem}.section-title{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:#1f2937;border-bottom:2px solid #e5e7eb;padding-bottom:.75rem}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.detail-item{display:flex;flex-direction:column;gap:.5rem}.detail-label{font-size:.85rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:1rem;color:#1f2937;font-weight:500;word-break:break-word}.detail-value--highlight{color:#10b981;font-size:1.1rem}.detail-notes{padding:1rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;color:#374151;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.detail-footer{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.9rem;color:#6b7280}.detail-footer__text{margin:0}.detail-footer__text strong{color:#1f2937}.btn{padding:.75rem 1.5rem;border:none;border-radius:.375rem;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary:hover:not(:disabled){background-color:#2563eb}.btn-secondary{background-color:#6b7280;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#4b5563}.btn-success{background-color:#10b981;color:#fff}.btn-success:hover:not(:disabled){background-color:#059669}.btn-info{background-color:#3b82f6;color:#fff}.btn-info:hover:not(:disabled){background-color:#2563eb}.btn-danger{background-color:#ef4444;color:#fff;padding:.75rem}@media (max-width: 768px){.detail-header{flex-direction:column}.detail-header__actions{justify-content:flex-start}.detail-header__info h1{font-size:1.5rem}.detail-grid{grid-template-columns:1fr}.detail-edit-container{padding:1.5rem 1rem}.detail-header__actions .btn{padding:.675rem .875rem;font-size:.9rem}}@media (max-width: 480px){.reservation-detail{gap:1rem}.detail-header{padding:1rem;border-radius:.375rem}.detail-header__info h1{font-size:1.25rem}.detail-section{padding:1rem}.detail-header__actions{flex-direction:column;width:100%}.detail-header__actions .btn{width:100%;justify-content:center}.section-title{font-size:1rem}}.dashboard{width:100%;display:flex;flex-direction:column;gap:2rem}.dashboard__header{border-radius:.75rem;color:#fff}.dashboard__title{margin:0;font-size:2rem;font-weight:700}.dashboard__subtitle{margin:0;font-size:1.125rem;opacity:.9;text-transform:capitalize}@media (max-width: 640px){.dashboard__header{padding:1.5rem}.dashboard__title{font-size:1.5rem}.dashboard__subtitle{font-size:1rem}}.dashboard__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.stat-card{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#fff;border-radius:.75rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;transition:all .3s ease}.stat-card:hover{box-shadow:0 10px 25px #00000014;transform:translateY(-2px)}.stat-card__icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:.5rem;flex-shrink:0}.stat-card--blue .stat-card__icon{background-color:#dbeafe;color:#1e40af}.stat-card--green .stat-card__icon{background-color:#dcfce7;color:#15803d}.stat-card--teal .stat-card__icon{background-color:#ccfbf1;color:#0d9488}.stat-card--orange .stat-card__icon{background-color:#fed7aa;color:#b45309}.stat-card__content{flex:1;display:flex;flex-direction:column;gap:.25rem}.stat-card__label{margin:0;font-size:.875rem;color:#6b7280;font-weight:500}.stat-card__value{margin:0;font-size:2rem;font-weight:700;color:#111827}@media (max-width: 1024px){.dashboard__stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.dashboard__stats{grid-template-columns:1fr}.stat-card{padding:1.25rem}.stat-card__value{font-size:1.5rem}}.dashboard__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width: 1024px){.dashboard__grid{grid-template-columns:1fr}}.dashboard__section{background:#fff;border-radius:.75rem;border:1px solid #e5e7eb;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.dashboard__section--full{grid-column:1/-1}.dashboard__section-title{margin:0 0 1rem;font-size:1.25rem;font-weight:700;color:#111827;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.dashboard__empty-message{margin:0;padding:2rem 0;text-align:center;color:#9ca3af;font-size:.875rem}.dashboard__list{display:flex;flex-direction:column;gap:1rem}.dashboard__item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb;transition:all .2s}.dashboard__item:hover{background-color:#f3f4f6;border-color:#d1d5db}.dashboard__item-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.dashboard__item-title{margin:0;font-size:.95rem;font-weight:600;color:#111827}.dashboard__item-detail{margin:0;font-size:.8125rem;color:#6b7280}@media (max-width: 640px){.dashboard__item{flex-direction:column;align-items:flex-start;gap:.75rem}.dashboard__list{gap:.75rem}.dashboard__item-detail{font-size:.75rem}}.dashboard__actions{display:flex;gap:1rem;justify-content:center;padding:2rem;background:linear-gradient(135deg,#3b82f60d,#8b5cf60d);border-radius:.75rem;border:1px dashed #bfdbfe}@media (max-width: 640px){.dashboard__actions{flex-direction:column;gap:.75rem;padding:1.5rem}.dashboard__actions .btn{width:100%}}.page-header{display:flex;justify-content:space-between;align-items:center;padding:2rem;margin-bottom:2rem;background:linear-gradient(135deg,#3b82f60d,#8b5cf60d);border-radius:.75rem;border:1px solid #e5e7eb}.page-header__content{flex:1}.page-header__title{margin:0;font-size:1.875rem;font-weight:700;color:#111827}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.page-header__content{width:100%}.page-header__title{font-size:1.5rem}}.users-admin,.rooms-admin{width:100%}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}@media (max-width: 1024px){.rooms-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.rooms-grid{grid-template-columns:1fr}}.room-card{background:#fff;border-radius:.75rem;border:1px solid #e5e7eb;overflow:hidden;box-shadow:0 1px 3px #0000001a;transition:all .3s ease;display:flex;flex-direction:column}.room-card:hover{box-shadow:0 10px 25px #0000001a;transform:translateY(-4px)}.room-card__image-container{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background-color:#f3f4f6}.room-card__image{width:100%;height:100%;object-fit:cover}.room-card__placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#9ca3af}.room-card__status{position:absolute;top:5px;left:5px}.room-card__content{padding:1rem;flex:1;display:flex;flex-direction:column;gap:.75rem}.room-card__title{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.room-card__info{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;color:#6b7280}.room-card__capacity{display:flex;align-items:center;gap:.5rem}.room-card__capacity svg{color:#3b82f6}.room-card__price{font-weight:600;color:#059669}.room-card__attributes{display:flex;flex-wrap:wrap;gap:.5rem}.room-card__attribute-badge{display:inline-block;padding:.25rem .75rem;background-color:#dbeafe;color:#1e40af;font-size:.75rem;border-radius:.375rem;font-weight:500}.room-card__actions{display:flex;gap:.5rem;margin-top:auto;padding-top:.75rem;border-top:1px solid #e5e7eb}.table-container{overflow-x:auto;border-radius:.75rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.table{width:100%;margin-bottom:0;border-collapse:collapse;background-color:#fff}.table thead{background:linear-gradient(135deg,#3b82f614,#8b5cf614)}.table th{padding:1rem;text-align:left;font-weight:600;color:#3b82f6;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb}.table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.table tbody tr:hover{background-color:#3b82f605}.table td{padding:1rem;color:#374151;font-size:.875rem}.table__cell--name{font-weight:500;color:#111827}.table__permission-count{display:inline-block;padding:.25rem .75rem;background-color:#f0f9ff;color:#0369a1;border-radius:.375rem;font-weight:600;font-size:.875rem}.table__actions{display:flex;gap:.5rem}.form{display:flex;flex-direction:column;gap:1.5rem}.form__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.form__group{display:flex;flex-direction:column;gap:.5rem}.form__label{font-size:.875rem;font-weight:600;color:#111827}.form__label--checkbox{display:flex;align-items:center;gap:.5rem;font-weight:500;cursor:pointer}.form__label--checkbox input{cursor:pointer}.form__input,.form__select{padding:.625rem 1rem;font-size:.875rem;border:1px solid #d1d5db;border-radius:.375rem;transition:all .2s;font-family:inherit}.form__input:focus,.form__select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form__input:disabled,.form__select:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed}.form__input--error{border-color:#ef4444}.form__input--error:focus{box-shadow:0 0 0 3px #ef44441a}.form__error{font-size:.75rem;color:#ef4444}.form__input-group{position:relative;display:flex;align-items:center}.form__password-toggle{position:absolute;right:.75rem;padding:.5rem;background:none;border:none;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center}.form__password-toggle:hover{color:#3b82f6}.form__input-group .form__input{padding-right:2.75rem}.form__section{padding:1.5rem;background-color:#f9fafb;border-radius:.375rem;border:1px solid #e5e7eb;display:flex;flex-direction:column;gap:1rem}.form__section-title{margin:0;font-size:1rem;font-weight:600;color:#111827;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.form__permission-groups{display:flex;flex-direction:column;gap:1rem}.form__attributes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.form__attribute-chip{padding:.75rem 1rem;border:2px solid #d1d5db;border-radius:.375rem;background-color:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;text-align:center}.form__attribute-chip:hover{border-color:#3b82f6;background-color:#f0f9ff;color:#1e40af}.form__attribute-chip--selected{background-color:#3b82f6;color:#fff;border-color:#3b82f6}.form__attribute-chip:disabled{opacity:.5;cursor:not-allowed}.form__actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e5e7eb}@media (max-width: 640px){.form__row{grid-template-columns:1fr}.form__actions{flex-direction:column-reverse}.form__actions .btn{width:100%}.form__attributes-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.permission-group{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:.375rem}.permission-group__header{display:flex;align-items:center}.permission-group__select-all{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:600;color:#111827;flex:1}.permission-group__select-all input{cursor:pointer}.permission-group__title{margin:0}.permission-group__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;margin-top:.5rem;padding:.75rem 0}.permission-group__item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:.375rem;cursor:pointer;font-size:.875rem;transition:background-color .2s}.permission-group__item:hover{background-color:#f0f9ff}.permission-group__item input{cursor:pointer}.photo-upload{display:flex;flex-direction:column;gap:1rem}.photo-upload__dropzone{position:relative;padding:3rem;border:2px dashed #d1d5db;border-radius:.75rem;background-color:#f9fafb;cursor:pointer;transition:all .2s;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px}.photo-upload__dropzone:hover{border-color:#3b82f6;background-color:#f0f9ff}.photo-upload__dropzone--active{border-color:#8b5cf6;background-color:#f5f3ff}.photo-upload__dropzone svg{width:48px;height:48px;color:#d1d5db;margin-bottom:1rem}.photo-upload__title{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.photo-upload__subtitle{margin:.25rem 0 0;font-size:.875rem;color:#6b7280}.photo-upload__hint{margin:.75rem 0 1rem;font-size:.75rem;color:#9ca3af}.photo-upload__preview{position:relative;border-radius:.75rem;overflow:hidden;background-color:#f3f4f6;display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1rem;min-height:200px}.photo-upload__image{width:100%;max-height:300px;object-fit:contain;border-radius:.375rem}.photo-upload__remove{position:absolute;top:.75rem;right:.75rem;padding:.5rem;background-color:#ef44441a;border:none;border-radius:.375rem;color:#ef4444;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.photo-upload__remove:hover{background-color:#ef444433}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;font-size:.875rem;font-weight:600;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s;font-family:inherit}.btn:disabled{opacity:.5;cursor:not-allowed}.btn__spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn-primary{background-color:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background-color:#2563eb;box-shadow:0 4px 12px #3b82f64d}.btn-secondary{background-color:#e5e7eb;color:#111827}.btn-secondary:hover:not(:disabled){background-color:#d1d5db}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-icon{padding:.5rem;font-size:1rem}.btn-sm{padding:.5rem .75rem;font-size:.75rem}.btn-lg{padding:.875rem 1.5rem;font-size:1rem}.badge{display:inline-block;padding:.375rem .75rem;font-size:.75rem;font-weight:600;border-radius:.375rem;border:1px solid transparent}.badge--success{background-color:#d1fae5;color:#065f46;border-color:#6ee7b7}.badge--warning{background-color:#fef3c7;color:#92400e;border-color:#fcd34d}.badge--danger{background-color:#fee2e2;color:#991b1b;border-color:#fca5a5}.badge--info{background-color:#dbeafe;color:#0c4a6e;border-color:#93c5fd}.badge--default{background-color:#f3f4f6;color:#6b7280;border-color:#d1d5db}.reservations-list{display:flex;flex-direction:column;gap:1.5rem}.reservations-list__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.reservations-list__title{flex:1}.reservations-list__title h1{margin:0 0 .5rem;font-size:2rem;font-weight:700;color:#1f2937}.reservations-list__subtitle{margin:0;font-size:.95rem;color:#6b7280}.filters{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;align-items:center}.filter-group{display:flex;align-items:center;gap:.5rem;flex:1;min-width:200px}.filter-group:first-child{flex:1 1 100%}.search-box{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;flex:1}.search-box__icon{color:#6b7280;flex-shrink:0}.search-box__input{flex:1;border:none;outline:none;font-size:1rem;font-family:inherit}.filter-label{font-size:.95rem;font-weight:500;color:#374151;white-space:nowrap}.filter-select,.filter-input{padding:.55rem;font-size:.95rem;border:1px solid #d1d5db;border-radius:.375rem;font-family:inherit;background-color:#fff}.filter-select:focus,.filter-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.btn-sm{padding:.75rem 1rem;font-size:.9rem}.reservations-table-container{overflow-x:auto;border:1px solid #e5e7eb;border-radius:.5rem}.reservations-table{width:100%;border-collapse:collapse;background-color:#fff}.reservations-table thead{background-color:#f3f4f6;border-bottom:2px solid #e5e7eb}.reservations-table th{padding:1rem;text-align:left;font-weight:600;color:#374151;font-size:.95rem}.reservations-table td{padding:1rem;border-bottom:1px solid #e5e7eb;color:#1f2937;font-size:.95rem}.reservations-table tbody tr{transition:background-color .2s ease}.reservations-table tbody tr:hover{background-color:#f9fafb}.cell-guest{font-weight:500;color:#1f2937}.cell-room{color:#6b7280}.cell-center{text-align:center}.cell-actions{display:flex;gap:.5rem;justify-content:flex-end}.reservations-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.card-wrapper{position:relative}.card-actions{display:flex;gap:.5rem;margin-top:.75rem;justify-content:flex-end}.action-btn{padding:.5rem;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;background-color:transparent}.action-btn--view{color:#3b82f6}.action-btn--view:hover{background-color:#dbeafe}.action-btn--edit{color:#10b981}.action-btn--edit:hover{background-color:#d1fae5}.action-btn--delete{color:#ef4444}.action-btn--delete:hover{background-color:#fee2e2}.pagination{display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:1.5rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem}.pagination__btn{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;background-color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;color:#374151}.pagination__btn:hover:not(:disabled){background-color:#3b82f6;color:#fff;border-color:#3b82f6}.pagination__btn:disabled{opacity:.5;cursor:not-allowed}.pagination__info{font-size:.95rem;color:#374151;font-weight:500}@media (max-width: 1024px){.reservations-cards{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.filter-group{flex:1 1 calc(50% - .5rem);min-width:auto}.filter-group:first-child{flex:1 1 100%}}@media (max-width: 768px){.reservations-list__header{flex-direction:column}.reservations-list__title h1{font-size:1.75rem}.filters{flex-direction:column;align-items:stretch}.filter-group{flex:1 1 100%;min-width:auto}.reservations-table-container{display:none}.reservations-cards{grid-template-columns:1fr}.pagination{flex-wrap:wrap;gap:1rem}.pagination__info{order:3;flex:1 1 100%;text-align:center}}@media (max-width: 480px){.reservations-list__header{padding:.5rem 0}.reservations-list__title h1{font-size:1.5rem}.filters{padding:.75rem;gap:.75rem}.filter-label{display:none}.search-box{padding:.5rem}}
