:root{--blue:#2388d9;--blue-dark:#1266ad;--sky:#eaf6ff;--ink:#142333;--muted:#6d7c8c;--line:#dde7ef;--bg:#f5f8fb;--green:#159a72;--red:#e0525b;--white:#fff;--shadow:0 12px 40px rgba(30,76,110,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--blue-dark);text-decoration:none}button,.button{border:0;background:var(--blue);color:#fff;border-radius:12px;padding:13px 20px;font-weight:700;cursor:pointer;font-size:14px;display:inline-block}button:hover,.button:hover{background:var(--blue-dark)}input,select{width:100%;border:1px solid var(--line);background:#fff;border-radius:11px;padding:12px 13px;font:inherit;color:var(--ink);outline:none;min-height:46px}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(35,136,217,.1)}label{font-size:13px;font-weight:650;color:#405064;display:block}label input,label select{margin-top:7px}label small{font-weight:400;color:var(--muted);display:block;margin-top:5px}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}.auth-brand{padding:9vw;background:linear-gradient(145deg,#e9f7ff,#cfeeff);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.auth-brand:after{content:"";position:absolute;width:380px;height:380px;border-radius:50%;background:rgba(255,255,255,.35);right:-120px;bottom:-120px}.auth-brand img{width:260px;max-width:70%;margin-bottom:55px}.auth-brand h1{font-size:clamp(32px,4vw,58px);max-width:680px;line-height:1.05;letter-spacing:-2px;margin:0 0 22px}.auth-brand p{font-size:18px;line-height:1.6;max-width:590px;color:#46657a}.trust{margin-top:70px;color:#58758a;font-size:13px}.auth-card{width:min(460px,calc(100% - 40px));margin:auto;padding:50px 0}.auth-card.wide{width:min(720px,calc(100% - 40px));padding:38px 0}.auth-card>small,.hero small{color:var(--blue);font-weight:800;letter-spacing:1.5px}.auth-card h2{font-size:34px;margin:10px 0}.auth-card>p{color:var(--muted);line-height:1.5}.auth-card form{margin-top:28px}.auth-card form>label{margin-bottom:17px}.auth-card button{width:100%;margin-top:8px}.auth-switch{text-align:center;margin-top:25px!important}.form-link{text-align:right;font-size:13px;margin:-7px 0 20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.check{display:flex;align-items:center;gap:9px;padding-top:23px}.check input{width:19px;min-height:19px;margin:0}.mobile-logo{display:none}.simple{display:flex;background:var(--bg)}.visible{display:block}.visible img{width:230px;margin-bottom:30px}.alert{padding:13px 15px;border-radius:11px;margin:18px 0;font-size:14px}.alert.error{background:#fff0f1;color:#a72b36}.alert.success{background:#eaf9f3;color:#137155}.alert.dev{background:#fff8df;color:#765d00}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{position:fixed;width:250px;height:100vh;background:#fff;border-right:1px solid var(--line);padding:28px 19px;display:flex;flex-direction:column}.brand img{width:180px;max-height:55px;object-fit:contain}.company-chip{display:flex;gap:10px;align-items:center;margin:30px 0 22px;padding:12px;background:var(--bg);border-radius:13px}.company-chip>span,.company-chip>img{width:38px;height:38px;border-radius:10px;object-fit:cover;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:800}.company-chip div{min-width:0}.company-chip strong,.company-chip small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-chip strong{font-size:13px}.company-chip small{font-size:10px;color:var(--muted);margin-top:3px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a,.signout{padding:12px 13px;border-radius:10px;color:#5a6b7c;font-size:14px;font-weight:650}.sidebar nav a.active{background:var(--sky);color:var(--blue-dark)}.signout{margin-top:auto}.app-shell>main{grid-column:2;min-width:0}.topbar{height:90px;background:#fff;border-bottom:1px solid var(--line);padding:0 4vw;display:flex;justify-content:space-between;align-items:center}.topbar small{color:var(--muted)}.topbar h1{font-size:20px;margin:5px 0}.avatar{width:42px;height:42px;border-radius:50%;background:var(--sky);color:var(--blue-dark);display:grid;place-items:center;font-weight:800}.content{padding:35px 4vw;max-width:1500px;margin:auto}.hero{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.hero h2{font-size:30px;margin:7px 0}.hero p,.panel p{color:var(--muted);margin:0}.button.secondary{background:#fff;color:var(--blue-dark);border:1px solid var(--line)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.metrics:has(.metric:nth-child(4)){grid-template-columns:repeat(4,1fr)}.metric,.panel{background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.metric{padding:23px}.metric span{color:var(--muted);font-size:13px}.metric strong{display:block;font-size:27px;margin-top:12px}.metric small{display:block;color:var(--muted);margin-top:8px}.metric.primary{background:linear-gradient(135deg,#2388d9,#1266ad);color:#fff;border:0}.metric.primary span,.metric.primary small{color:#dcefff}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.panel{padding:24px;margin-bottom:23px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.panel-head h3{margin:0 0 6px}.transaction{display:grid;grid-template-columns:44px 1fr auto;gap:13px;align-items:center;padding:14px 0;border-bottom:1px solid #edf1f4}.transaction:last-child{border:0}.tx-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.tx-icon.income{background:#eaf9f3;color:var(--green)}.tx-icon.expense{background:#fff0f1;color:var(--red)}.transaction strong,.transaction small{display:block}.transaction small,.block{color:var(--muted);font-size:12px;margin-top:4px}.empty{text-align:center;padding:40px;color:var(--muted)}.split{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:22px}.form-panel label{margin-bottom:16px}.filters{display:flex;align-items:end;gap:14px}.filters label{min-width:180px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.6px;padding:12px;border-bottom:1px solid var(--line)}td{padding:14px 12px;border-bottom:1px solid #edf1f4;vertical-align:middle}.status{display:inline-block;border-radius:99px;padding:5px 9px;font-size:10px;font-weight:800;text-transform:uppercase;background:#eef2f5}.status.approved,.status.paid,.status.income{background:#e8f8f1;color:#137155}.status.pending,.status.free{background:#fff6d9;color:#846700}.status.rejected,.status.suspended,.status.expense{background:#ffecef;color:#a72b36}.profile-form{max-width:950px}.logo-upload{display:flex;align-items:center;gap:18px;margin-bottom:24px}.logo-upload img{width:90px;height:70px;object-fit:contain;border:1px solid var(--line);border-radius:12px}.inline-admin{display:flex;gap:6px;min-width:340px}.inline-admin select{min-height:36px;padding:7px}.inline-admin button{padding:8px 11px}footer{padding:20px 4vw 35px;color:var(--muted);font-size:12px;text-align:center}
@media(max-width:850px){.auth-page{display:block;background:var(--bg);padding:22px 0}.auth-brand{display:none}.mobile-logo{display:block;text-align:center}.mobile-logo img{width:210px;margin-bottom:25px}.auth-card{background:#fff;padding:28px 24px;border-radius:20px;box-shadow:var(--shadow)}.app-shell{display:block;padding-bottom:76px}.sidebar{position:fixed;z-index:10;bottom:0;left:0;width:100%;height:70px;padding:7px 8px;border:0;border-top:1px solid var(--line);display:block}.sidebar>.brand,.company-chip,.signout{display:none}.sidebar nav{height:100%;display:flex;flex-direction:row;justify-content:space-around}.sidebar nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:7px;font-size:18px;min-width:55px}.sidebar nav a span{font-size:10px}.app-shell>main{display:block}.topbar{height:76px;padding:0 18px}.content{padding:24px 16px}.hero{align-items:flex-start}.hero h2{font-size:25px}.hero .button{display:none}.metrics,.metrics:has(.metric:nth-child(4)){grid-template-columns:1fr 1fr}.metric:first-child{grid-column:1/-1}.split{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.filters{display:grid;grid-template-columns:1fr 1fr}.filters button{grid-column:1/-1}.panel{padding:18px}.transaction b{font-size:13px}.auth-card.wide{width:calc(100% - 24px);padding:25px 20px}.register .form-grid{gap:0}.register .form-grid label{margin-bottom:15px}}
@media(max-width:420px){.metrics{grid-template-columns:1fr}.metric,.metric:first-child{grid-column:auto}.transaction{grid-template-columns:38px 1fr}.transaction b{grid-column:2}.tx-icon{width:36px;height:36px}.auth-card h2{font-size:28px}}
.language-switch{display:flex;justify-content:flex-end;gap:5px;margin-bottom:26px}.language-switch a{border:1px solid var(--line);border-radius:9px;padding:7px 11px;color:var(--muted);font-size:12px;font-weight:800}.language-switch a.active{background:var(--blue);border-color:var(--blue);color:#fff}
.profile-form>button{margin-top:20px}.logo-upload img{background:#fff;padding:6px;object-fit:contain}.form-divider{border:0;border-top:1px solid var(--line);margin:28px 0}.master-profile{max-width:850px}.rejection-note{color:var(--red);max-width:280px;white-space:normal}.topbar-company-logo{width:58px;height:58px;border:1px solid var(--line);border-radius:13px;background:#fff;padding:6px;display:grid;place-items:center}.topbar-company-logo img{width:100%;height:100%;object-fit:contain}.company-chip{display:block}.company-chip div{width:100%}
.summary-actions{display:flex;justify-content:flex-end;margin-bottom:14px}.referral-private{max-width:560px;margin:0 auto}.privacy-note{font-size:12px;color:var(--muted);text-align:center;margin:16px 0 0}.referral-metrics{grid-template-columns:repeat(4,1fr)!important}.mobile-referral-card{display:none}
@media(max-width:850px){html,body{max-width:100%;overflow-x:hidden}.app-shell{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.sidebar{z-index:1000;height:calc(72px + env(safe-area-inset-bottom));padding:0;overflow:hidden}.sidebar .company-chip,.sidebar>.brand,.sidebar>.signout{display:none!important}.sidebar nav{position:absolute;inset:0 0 env(safe-area-inset-bottom) 0;width:100%;height:72px;display:flex!important;flex-direction:row!important;align-items:stretch;justify-content:space-around;overflow:visible;gap:0;padding:5px 4px}.sidebar nav a{display:flex!important;flex:1;min-width:0;padding:5px 2px}.sidebar nav a span{font-size:9px;line-height:1.15;text-align:center;max-width:62px}.sidebar nav a[href="invite-friend.php"]{display:none!important}.content{width:100%;padding:22px 14px}.topbar{width:100%;padding:0 18px}.filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;gap:10px}.filters label{min-width:0;width:100%}.filters input{min-width:0;width:100%;padding-left:10px;padding-right:8px}.filters button{width:100%}.summary-actions .button{min-height:44px;display:flex;align-items:center;justify-content:center}.panel,.metric{max-width:100%}.table-wrap{max-width:100%;-webkit-overflow-scrolling:touch}.mobile-referral-card{display:block}.mobile-referral-card .button{margin-top:14px;width:100%;text-align:center}.referral-metrics{grid-template-columns:1fr 1fr!important}}
@media(max-width:430px){.filters{grid-template-columns:1fr}.filters button{grid-column:auto}.summary-actions{justify-content:stretch}.summary-actions .button{width:100%}.topbar h1{font-size:19px}.content{padding-left:12px;padding-right:12px}.panel{padding:17px}.metrics,.metrics:has(.metric:nth-child(4)){grid-template-columns:1fr}.metric:first-child{grid-column:auto}.referral-metrics{grid-template-columns:1fr 1fr!important}.form-grid{grid-template-columns:1fr}.profile-form>button{width:100%}}
.pagination{display:flex;justify-content:center;align-items:center;gap:14px;padding-top:22px}.pagination a{border:1px solid var(--line);padding:9px 13px;border-radius:9px;background:#fff}.pagination span{color:var(--muted);font-size:13px}.admin-row-actions{display:flex;align-items:center;gap:8px}.small-button{padding:9px 12px;white-space:nowrap}.company-link strong{color:var(--ink)}.detail-top{margin-bottom:16px}.company-detail-head{padding:28px}.company-identity{display:flex;align-items:center;gap:18px}.company-identity>img,.company-identity>span{width:76px;height:76px;border-radius:15px;background:#fff;border:1px solid var(--line);object-fit:contain;padding:7px;display:grid;place-items:center;font-size:28px;font-weight:800;color:var(--blue-dark)}.company-identity h2{margin:5px 0 8px}.company-identity small{color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.detail-list{margin:0}.detail-list>div{display:grid;grid-template-columns:130px 1fr;gap:10px;padding:11px 0;border-bottom:1px solid #edf1f4}.detail-list>div:last-child{border:0}.detail-list dt{font-size:12px;color:var(--muted)}.detail-list dd{margin:0;font-size:13px;font-weight:650}@media(max-width:1000px){.detail-grid{grid-template-columns:1fr}.admin-row-actions{align-items:flex-start;flex-direction:column}}
.danger-zone{border-color:#f2c4c8}.danger-zone h3{color:#a72b36}.delete-company-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;gap:14px;align-items:end;max-width:950px}.danger-button{background:#c93643}.danger-button:hover{background:#a72b36}@media(max-width:850px){.delete-company-form{grid-template-columns:1fr}.danger-button{width:100%}}
.company-row-buttons{display:flex;gap:6px}.delete-link{background:#fff;color:#a72b36;border:1px solid #f2c4c8}.delete-link:hover{background:#fff0f1;color:#8f202b}@media(max-width:1000px){.company-row-buttons{width:100%}.company-row-buttons .button{flex:1;text-align:center}}.history-timeline{position:relative;margin-top:4px}.history-event{position:relative;display:grid;grid-template-columns:20px 1fr;gap:13px;padding:0 0 22px}.history-event:not(:last-child):before{content:"";position:absolute;left:6px;top:14px;bottom:0;width:2px;background:var(--line)}.history-dot{position:relative;z-index:1;width:14px;height:14px;margin-top:3px;border-radius:50%;background:var(--blue);border:3px solid #dff1ff}.history-dot.created{background:var(--green);border-color:#dcf6ed}.history-event strong{font-size:14px}.history-event p{font-size:13px;margin:5px 0!important;color:#405064}.history-event small{font-size:11px;color:var(--muted)}
.rejection-dialog{width:min(560px,calc(100% - 28px));border:0;border-radius:20px;padding:0;box-shadow:0 24px 80px rgba(20,35,51,.28);color:var(--ink)}.rejection-dialog::backdrop{background:rgba(20,35,51,.55);backdrop-filter:blur(3px)}.rejection-dialog form{padding:28px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.dialog-head small{color:var(--red);font-weight:800;letter-spacing:1px}.dialog-head h3{font-size:23px;margin:7px 0 0}.dialog-close{background:var(--bg);color:var(--muted);padding:5px;width:36px;height:36px;border-radius:50%;font-size:23px;line-height:1}.rejection-dialog>form>p{color:var(--muted);margin:18px 0}.rejection-dialog textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:11px;padding:13px;font:inherit;color:var(--ink);margin-top:8px;outline:none}.rejection-dialog textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(35,136,217,.1)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.dialog-actions button{width:auto}@media(max-width:480px){.rejection-dialog form{padding:22px}.dialog-actions{flex-direction:column-reverse}.dialog-actions button{width:100%}}
.transaction-side{text-align:right}.transaction-side b{display:block}.transaction-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:7px}.transaction-actions a,.transaction-actions button{font-size:11px;font-weight:750;padding:0;background:none;border:0;border-radius:0;min-height:0}.transaction-actions .edit-action{color:var(--blue-dark)}.transaction-actions .delete-action{color:var(--red)}.transaction-actions button:hover{background:none;color:#a72b36}.transaction-dialog>form>strong{display:block;padding:13px 15px;background:var(--bg);border-radius:10px}@media(max-width:480px){.transaction-manage{grid-template-columns:38px minmax(0,1fr) auto;gap:9px}.transaction-side b{font-size:13px}.transaction-actions{gap:8px}}
input[type="date"]{display:block;min-width:0;max-width:100%;width:100%}.form-grid>*{min-width:0}@media(max-width:850px){input,select,textarea{min-width:0;max-width:100%;width:100%}.form-grid,.filters,.form-panel,.profile-form{min-width:0;max-width:100%}input[type="date"]{-webkit-appearance:none;appearance:none;box-sizing:border-box}}
.mobile-top-brand{display:none}@media(max-width:850px){.topbar{height:auto;min-height:132px;padding:13px 18px 15px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:60px auto;gap:8px 14px;align-items:center}.mobile-top-brand{display:flex;grid-column:1;grid-row:1;align-items:center;min-width:0}.mobile-top-brand img{display:block;width:158px;max-width:100%;height:48px;object-fit:contain;object-position:left center}.topbar-company-logo,.topbar>.avatar{grid-column:2;grid-row:1}.topbar-company-logo{width:56px;height:56px}.topbar-title{grid-column:1/-1;grid-row:2}.topbar-title small{font-size:12px}.topbar-title h1{font-size:20px;margin:3px 0 0}}
