:root{--warm-white: #FAF7F2;--warm-off: #F2EDE4;--sand: #E6DCCB;--sand-deep: #D4C5AB;--terracotta: #B86F4A;--terracotta-deep:#8C4F2E;--terracotta-soft:#D9A48A;--ink: #2A2520;--ink-soft: #4A423B;--muted: #8B7F71;--line: #D9CFC0}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}img{display:block;max-width:100%}a{color:inherit;text-decoration:none;cursor:pointer}button{font-family:inherit;cursor:pointer;border:none;background:none}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:pageEnter .28s cubic-bezier(.22,1,.36,1) both}.nav-item{transition:color .18s ease,border-color .18s ease,opacity .18s ease}.nav-item:hover{opacity:.7}.side-item{transition:background .15s ease,color .15s ease,opacity .15s ease;display:block}.side-item:hover{background:#ffffff0f;color:var(--warm-white)!important}.btn-primary{transition:background .18s ease,transform .1s ease}.btn-primary:hover{background:var(--terracotta-deep)!important}.btn-primary:active{transform:scale(.98)}.btn-ghost{transition:border-color .18s ease,color .18s ease,transform .1s ease}.btn-ghost:hover{border-color:var(--ink)!important;color:var(--ink)!important}.btn-ghost:active{transform:scale(.98)}.btn-approve{transition:background .18s ease,transform .1s ease}.btn-approve:hover{background:var(--terracotta-deep)!important}.btn-approve:active{transform:scale(.98)}.btn-decline{transition:border-color .18s ease,color .18s ease,transform .1s ease}.btn-decline:hover{border-color:var(--ink)!important;color:var(--ink)!important}.btn-decline:active{transform:scale(.98)}.ph{background:repeating-linear-gradient(135deg,var(--sand) 0px,var(--sand) 12px,var(--warm-off) 12px,var(--warm-off) 24px);position:relative;overflow:hidden}.ph:after{content:attr(data-label);position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;letter-spacing:.08em;color:var(--ink-soft);text-transform:uppercase;background:#faf7f28c;padding:6px 10px;text-align:center}.admin-frame{width:100%;min-height:100vh;background:var(--warm-white);color:var(--ink);font-family:Inter,sans-serif;display:grid;grid-template-columns:220px 1fr}.admin-mobile-bar{display:none;justify-content:space-between;align-items:center;padding:14px 20px;background:var(--ink);color:var(--warm-white);position:sticky;top:0;z-index:100;grid-column:1 / -1}.admin-mobile-brand{font-family:Cormorant Garamond,serif;font-style:italic;font-size:20px}.admin-hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;padding:4px;background:none;border:none}.admin-hamburger span{display:block;width:22px;height:1.5px;background:var(--warm-white);transition:all .2s ease}.admin-hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.admin-hamburger.open span:nth-child(2){opacity:0}.admin-hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.admin-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#2a25208c;z-index:150}.admin-overlay.visible{display:block}.admin-sidebar-wrap>div{position:sticky;top:0;height:100vh}.admin-main{padding:36px 48px 48px}.admin-topbar{display:flex;justify-content:space-between;align-items:center;padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:36px;gap:16px;flex-wrap:wrap}.admin-page-title{font-family:Cormorant Garamond,serif;font-weight:400;font-size:44px;line-height:1;letter-spacing:-.02em}.admin-kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:36px}.admin-cols{display:grid;grid-template-columns:1.4fr 1fr;gap:32px}.admin-table-header{display:grid;grid-template-columns:50px 2fr 1fr 1fr 1fr 1fr;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.admin-patient-row{display:grid;grid-template-columns:50px 2fr 1fr 1fr 1fr 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);align-items:center}.admin-request-row{display:grid;grid-template-columns:60px 1.5fr 1fr 1fr auto;gap:24px;padding:24px 0;border-bottom:1px solid var(--line);align-items:center}@media(max-width:900px){.admin-main{padding:28px 28px 40px}.admin-page-title{font-size:36px}}@media(max-width:768px){.admin-frame{display:flex;flex-direction:column}.admin-mobile-bar{display:flex}.admin-sidebar-wrap{position:fixed;top:0;left:0;bottom:0;width:280px;transform:translate(-100%);transition:transform .25s ease;z-index:200;overflow-y:auto;height:100%}.admin-sidebar-wrap.open{transform:translate(0)}.admin-sidebar-wrap>div{position:relative!important;top:auto!important;height:100%!important;min-height:100%}.admin-main{padding:20px 16px 48px}.admin-topbar{flex-direction:column;align-items:flex-start}.admin-topbar .admin-search-wrap{width:100%}.admin-page-title{font-size:30px}.admin-kpi-row{grid-template-columns:repeat(2,1fr)}.admin-cols{grid-template-columns:1fr}.admin-table-header{display:none}.admin-patient-row{display:flex;flex-wrap:wrap;gap:0;padding:16px 0;position:relative}.admin-patient-row .admin-col-avatar{flex-shrink:0;margin-right:12px;margin-bottom:12px}.admin-patient-row .admin-col-name{flex:1;min-width:0;margin-bottom:12px}.admin-patient-row .admin-col-date,.admin-patient-row .admin-col-freq,.admin-patient-row .admin-col-upd{display:none}.admin-patient-row .admin-col-status{order:3;padding-left:62px;margin-top:4px;flex-shrink:0}.admin-patient-row .admin-col-edit{order:4;margin-top:4px;margin-left:auto;flex-shrink:0}.admin-request-row{display:flex;flex-direction:column;gap:12px}.admin-request-row .admin-req-date-col,.admin-request-row .admin-req-status-col{display:none}.admin-search-wrap{min-width:unset!important;width:100%}}@media(max-width:480px){.admin-patient-row{flex-wrap:nowrap;align-items:center;padding:14px 0}.admin-patient-row .admin-col-avatar{margin-bottom:0}.admin-patient-row .admin-col-name{margin-bottom:0;overflow:hidden}.admin-patient-row .admin-col-name>div:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-patient-row .admin-col-name>div:last-child{display:none}.admin-patient-row .admin-col-status{order:unset;padding-left:0;margin-top:0;margin-left:auto}.admin-patient-row .admin-col-edit{order:unset;margin-top:0;margin-left:8px}}
