:root{--app-radius:14px;--app-shadow:0 2px 12px rgba(0,0,0,.07)}
body{background:#f4f6f9;color:#1f2937}.app-main{max-width:1600px}.card{border:0;box-shadow:var(--app-shadow);border-radius:var(--app-radius)}.card-header{background:#fff;border-bottom:1px solid #edf0f3;border-radius:var(--app-radius) var(--app-radius) 0 0!important}.kpi small{color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.navbar-brand{letter-spacing:.04em}.table>:not(caption)>*>*{vertical-align:middle}.form-label{font-weight:600}.page-narrow{max-width:760px;margin:0 auto}.cost-card{overflow:hidden}.attachment-pill{display:inline-flex;align-items:center;gap:.3rem;border:1px solid #dee2e6;border-radius:999px;padding:.25rem .55rem;background:#fff;font-size:.85rem}.action-bar{display:flex;gap:.5rem;flex-wrap:wrap;position:sticky;bottom:8px;z-index:20;padding:.65rem;background:rgba(244,246,249,.94);backdrop-filter:blur(8px);border-radius:12px}.copy-switch{padding:10px 10px 10px 3rem;border:1px solid #dee2e6;border-radius:10px;background:#fff}.meter-input{min-width:110px}.login-body{min-height:100vh;background:linear-gradient(145deg,#eef2f6,#f8fafc);display:flex;align-items:center;justify-content:center}.login-shell{width:100%;max-width:480px;padding:18px}.login-card{box-shadow:0 18px 60px rgba(31,41,55,.14)}.app-mark{width:64px;height:64px;border-radius:18px;background:#212529;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.35rem;font-weight:800;letter-spacing:.08em}
@media(max-width:991px){.navbar-collapse{padding-bottom:.75rem}.action-bar{position:static}.cost-card .btn{min-height:40px}}
@media(max-width:767px){main.container-fluid{padding-left:10px;padding-right:10px}.btn-lg{font-size:1rem}.table{font-size:.88rem}.card-body{padding:14px}.card-header{padding:12px 14px}.meter-table th:nth-child(2),.meter-table td:nth-child(2){display:none}.meter-input{min-width:92px}.action-bar>*{flex:1 1 100%}.action-bar .btn{width:100%}.attachment-pill{max-width:100%;overflow:hidden}.attachment-pill a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}}

html,body{min-height:100%}body{min-height:100vh;display:flex;flex-direction:column}.app-main{width:100%;flex:1 0 auto}.app-navbar{background:linear-gradient(115deg,var(--header-from,#25282c),var(--header-to,#4b5056));box-shadow:0 2px 12px rgba(0,0,0,.16)}.app-footer{color:#f8f9fa;background:linear-gradient(115deg,var(--footer-from,#34383d),var(--footer-to,#555b62));box-shadow:0 -2px 12px rgba(0,0,0,.08)}.footer-mark{width:30px;height:30px;border:1px solid rgba(255,255,255,.38);border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;background:rgba(255,255,255,.08)}
.cost-section{border:1px solid #dde2e7;border-radius:14px;padding:14px;margin-bottom:16px}.cost-section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:800;letter-spacing:.025em;margin-bottom:10px}.cost-electricity{background:#fff3f3;border-left:5px solid #c94a4a}.cost-communal{background:#eef7ff;border-left:5px solid #4d8fbd}.cost-slips{background:#f2f8ef;border-left:5px solid #6f9d62}.cost-other{background:#f7f7f8;border-left:5px solid #8a8f96}.manual-input{background:#eaf4ff!important;border-color:#87b9dc!important}.calculated-input{background:#f0f1f2!important;color:#555!important;font-weight:700}.cost-item-card{background:rgba(255,255,255,.76);border:1px solid rgba(0,0,0,.08);border-radius:11px;padding:12px;margin-bottom:10px}


.participant-box{border:1px dashed rgba(0,0,0,.18);border-radius:12px;padding:12px;background:rgba(255,255,255,.55)}
.participant-box.compact{padding:10px}
.participant-option{display:flex;align-items:center;width:100%;padding:9px 10px;border:1px solid #d9dee5;border-radius:10px;background:#fff;cursor:pointer;transition:.15s ease}
.participant-option:hover{border-color:#aeb7c2;box-shadow:0 1px 5px rgba(0,0,0,.05)}
.participant-option.is-excluded{background:#f4eeee;border-color:#d7b8b8;color:#7a3c3c}
.participant-option small{color:#6c757d}.participant-option.is-excluded small{color:#a45b5b;font-weight:700}
.offline-banner{padding:8px 16px;background:#fff3cd;color:#664d03;border-bottom:1px solid #ffecb5;font-size:.9rem}
.database-card{border-left:5px solid #59636e}.database-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.database-status>div{background:#f7f8fa;border:1px solid #e3e6ea;border-radius:10px;padding:10px}
.user-menu{min-width:130px}
.navbar .nav-link i{opacity:.9}
@media(max-width:767px){.database-status{grid-template-columns:1fr}.participant-option{padding:10px}.user-menu{width:100%;text-align:left}}
/* v1.8.3: jasnejša vizualna ločitev stroškovnih sklopov */
.cost-item-card.cost-electricity{border:2px solid #d7a72f;border-left-width:6px;box-shadow:0 2px 10px rgba(138,102,12,.08)}
.cost-item-card.cost-communal{border:2px solid #4d8fbd;border-left-width:6px;box-shadow:0 2px 10px rgba(30,99,145,.08)}
.cost-item-card.cost-slips{border:2px solid #6f9d62;border-left-width:6px;box-shadow:0 2px 10px rgba(62,111,50,.08)}
.cost-item-card.cost-other{border:2px solid #8a8f96;border-left-width:6px;box-shadow:0 2px 10px rgba(70,75,82,.06)}
.cost-item-card.cost-electricity .cost-section-title{color:#7a5b08}
.cost-item-card.cost-communal .cost-section-title{color:#2f6f99}
.cost-item-card.cost-slips .cost-section-title{color:#4f7845}
.cost-item-card.cost-other .cost-section-title{color:#5f646a}



/* Professional login screen - v1.0; visual override only. */
.login-body{min-height:100vh;margin:0;background:linear-gradient(145deg,#f4f8fd 0%,#eef5fc 52%,#f9fbfd 100%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;color:#16263a}
.login-bg-shape{position:fixed;border-radius:50%;pointer-events:none;filter:blur(2px);opacity:.55}
.login-bg-shape-one{width:520px;height:520px;right:-210px;top:-220px;background:radial-gradient(circle,rgba(20,105,190,.16),rgba(20,105,190,0) 70%)}
.login-bg-shape-two{width:430px;height:430px;left:-190px;bottom:-210px;background:radial-gradient(circle,rgba(39,132,220,.12),rgba(39,132,220,0) 70%)}
.login-shell{width:100%;max-width:480px;padding:30px 20px;position:relative;z-index:1}
.login-brand{margin-bottom:24px}
.login-brand h1{font-size:1.65rem;font-weight:800;letter-spacing:.035em;color:#172b43;margin:13px 0 4px}
.login-brand h1 span{color:#176fbd}
.login-brand p{margin:0;color:#718096;font-size:.93rem}
.app-mark{width:82px;height:82px;border-radius:24px;background:linear-gradient(145deg,#1675c7,#0d5fa9);box-shadow:0 12px 30px rgba(19,104,180,.24);display:flex;align-items:center;justify-content:center;gap:8px;border:4px solid #fff;position:relative}
.app-mark:after{content:"";position:absolute;inset:-8px;border:1px solid rgba(21,111,190,.13);border-radius:29px}
.app-mark-lb{color:#fff;font-size:1.22rem;font-weight:800;letter-spacing:.04em;line-height:1}
.app-mark-building{width:25px;height:34px;border:2px solid #fff;border-radius:3px;display:grid;grid-template-columns:repeat(2,5px);grid-auto-rows:5px;gap:4px;align-content:center;justify-content:center;position:relative}
.app-mark-building:after{content:"";position:absolute;width:7px;height:6px;background:#fff;bottom:-2px;left:7px;border-radius:1px 1px 0 0}
.app-mark-building i{display:block;background:#fff;border-radius:1px;opacity:.96}
.login-card{border:1px solid rgba(27,72,113,.08)!important;border-radius:22px!important;box-shadow:0 22px 60px rgba(30,64,96,.13)!important;background:rgba(255,255,255,.97);overflow:hidden}
.login-card:before{content:"";display:block;height:4px;background:linear-gradient(90deg,#0f64ad,#2c91df)}
.login-card-body{padding:34px 38px 36px}
.login-heading h2{font-size:1.35rem;font-weight:750;color:#18324e;margin-bottom:6px}
.login-heading p{color:#7a8999;margin:0;font-size:.92rem;line-height:1.45}
.login-card .form-label{font-size:.88rem;font-weight:700;color:#34495e;margin-bottom:7px}
.login-input{min-height:50px;border:1px solid #dbe4ec;border-radius:11px!important;background:#fbfcfe;font-size:.96rem;box-shadow:none!important;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.login-input::placeholder{color:#a1adba}
.login-input:focus{border-color:#2684d2;background:#fff;box-shadow:0 0 0 4px rgba(38,132,210,.10)!important}
.login-password-group .login-input{border-radius:11px 0 0 11px!important}
.login-password-toggle{border:1px solid #dbe4ec;border-left:0;background:#f7fafd;color:#176fbd;font-size:.86rem;font-weight:700;padding-left:16px;padding-right:16px;border-radius:0 11px 11px 0!important}
.login-password-toggle:hover,.login-password-toggle:focus{background:#edf6fd;color:#0e5e9f;border-color:#cbdce9}
.login-remember{font-size:.9rem;color:#607184}
.login-remember .form-check-input{border-color:#b8c7d5;box-shadow:none}
.login-remember .form-check-input:checked{background-color:#176fbd;border-color:#176fbd}
.login-submit{min-height:52px;border:0;border-radius:11px;background:linear-gradient(135deg,#176fbd,#0f63ad);font-weight:700;font-size:1rem;letter-spacing:.01em;box-shadow:0 10px 24px rgba(23,111,189,.20);transition:transform .15s ease,box-shadow .15s ease}
.login-submit:hover,.login-submit:focus{background:linear-gradient(135deg,#1268b5,#0b589a);transform:translateY(-1px);box-shadow:0 13px 28px rgba(23,111,189,.25)}
.login-alert{border:0;border-radius:11px;font-size:.9rem}
.login-footer{text-align:center;margin-top:20px;color:#8997a6;font-size:.79rem;letter-spacing:.01em}
@media(max-width:575.98px){.login-body{align-items:flex-start}.login-shell{max-width:100%;padding:28px 16px 24px}.login-brand{margin-bottom:20px}.app-mark{width:72px;height:72px;border-radius:21px}.login-brand h1{font-size:1.45rem}.login-brand p{font-size:.86rem}.login-card{border-radius:18px!important}.login-card-body{padding:27px 22px 29px}.login-heading h2{font-size:1.22rem}.login-input{min-height:48px}.login-submit{min-height:50px}.login-bg-shape-one{width:350px;height:350px}.login-bg-shape-two{width:300px;height:300px}}
