:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#1a2940;background:#f5f8fc;font-size:15px;line-height:1.45}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}.muted{color:#71819a}.error{color:#bb2546;font-size:.89rem;min-height:18px}.login-layout{min-height:100vh;display:grid;grid-template-columns:minmax(350px,44%) 1fr}.brand-panel{background:linear-gradient(148deg,#07152a,#102c56 59%,#1760ab);color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.brand-panel:after{content:"";position:absolute;width:620px;height:620px;border:1px solid #ffffff18;border-radius:50%;right:-270px;bottom:-280px;box-shadow:0 0 0 78px #ffffff07,0 0 0 180px #ffffff07}.brand-lockup,.sidebar-brand{display:flex;align-items:center;gap:11px;font-weight:500;letter-spacing:1.2px}.logo{background:#1986df;border-radius:12px;display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;color:#fff;font-size:23px}.brand-message{position:relative;z-index:1;margin:auto 0}.brand-message h1{font-size:clamp(40px,4.3vw,67px);line-height:1.1;letter-spacing:-2px;margin:25px 0}.brand-message p{max-width:405px;color:#c7d9f0;font-size:17px}.pill-dark{font-size:11px;letter-spacing:2px;border:1px solid #6a9cd1;border-radius:30px;padding:8px 12px}.brand-footer{color:#aac4e0;font-size:12px}.login-panel{display:flex;align-items:center;justify-content:center;padding:38px}.login-card{width:min(440px,100%)}.small-logo{font-size:34px;color:#1684d8;margin-bottom:10px}.login-card h2{font-size:30px;margin:0 0 8px}.login-card p{margin:0 0 28px}.login-card form{display:flex;flex-direction:column}.login-card label,form label,.panel>label{font-size:13px;font-weight:650;margin:12px 0 6px;display:block}input,select{display:block;width:100%;border:1px solid #d6dfeb;background:#fff;border-radius:10px;padding:12px 13px;outline:none;color:#1e2b3f;margin-top:6px}input:focus,select:focus{border-color:#2389dd;box-shadow:0 0 0 3px #2488db24}.btn{background:#fff;color:#1c3b59;border:1px solid #dae3ef;border-radius:10px;padding:10px 14px;font-weight:650;font-size:13px}.btn:hover{filter:brightness(.97)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:#187fce;color:white;border-color:#187fce}.btn.outline{background:white}.btn.wide{width:100%;margin:22px 0 13px;padding:14px}.app-layout{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{background:#081a32;color:#d7e3f2;display:flex;flex-direction:column;padding:24px 13px;min-height:100vh}.sidebar-brand{font-size:16px;white-space:nowrap;margin:0 11px 34px}.sidebar-brand .logo{width:34px;height:34px;font-size:18px}.nav-label{color:#7c94b5;letter-spacing:1.3px;font-size:10px;font-weight:800;margin:24px 15px 9px}.nav{border:0;background:transparent;color:#b8c8dd;text-align:left;padding:12px 14px;border-radius:10px;font-weight:600;display:flex;gap:14px;width:100%;margin:2px 0;align-items:center}.nav:hover,.nav.active{background:#183e69;color:#fff}.sidebar-bottom{margin-top:auto}.security-tip{padding:15px;margin:0 3px 16px;background:#17304c;border:1px solid #31516d;border-radius:12px;font-size:11px;color:#b9cce4}.security-tip b{color:#e8f1ff;font-size:12px}.security-tip p{margin:6px 0 0}.main{min-width:0}.topbar{height:79px;background:#fff;border-bottom:1px solid #e7edf5;display:flex;align-items:center;justify-content:space-between;padding:0 36px}.topbar-title{font-size:11px;letter-spacing:1.2px;font-weight:800;color:#6d819b}.dot{display:inline-block;background:#31b580;width:7px;height:7px;border-radius:50%;margin-left:18px}.online-caption{color:#2c9e7a;font-size:10px}.topbar-user{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:650}.avatar{height:35px;width:35px;border-radius:50%;background:#e7f2fe;color:#267ac0;display:inline-flex;align-items:center;justify-content:center}.content{padding:40px clamp(20px,3.5vw,56px);max-width:1480px}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.eyebrow{color:#2381c8;font-size:11px;font-weight:800;letter-spacing:1.4px}.heading h1{font-size:31px;letter-spacing:-1px;margin:7px 0 0}.heading p{margin:6px 0}.breadcrumb{font-size:13px;color:#667c97;margin-bottom:23px;display:flex;align-items:center;gap:9px}.breadcrumb button{border:0;background:transparent;color:#1e7fc1;font:inherit;cursor:pointer}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.folder-card{background:white;border:1px solid #e4ebf3;border-radius:14px;padding:21px;text-align:left;min-height:156px;box-shadow:0 5px 18px #16335208;display:flex;flex-direction:column;align-items:flex-start;gap:13px;width:100%}.folder-card:hover{border-color:#91b9e4;box-shadow:0 8px 23px #274d7515}.folder-icon{font-size:35px}.folder-card strong{font-size:16px}.folder-card small{color:#75859c}.file-list,.panel{background:white;border:1px solid #e3ebf3;border-radius:14px;box-shadow:0 5px 18px #16335207}.file-list{overflow:hidden}.item-row,.user-row,.agent-row,.folder-row,.audit-row{display:flex;gap:15px;align-items:center;padding:14px 19px;border-bottom:1px solid #e9eef5}.item-row:last-child,.user-row:last-child,.agent-row:last-child,.folder-row:last-child,.audit-row:last-child{border-bottom:0}.item-row .file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{font-size:12px;color:#8290a5}.file-icon{font-size:25px}.item-row button{flex-shrink:0}.panel{padding:24px}.panel h3{margin:0 0 20px;font-size:18px}.split{display:grid;grid-template-columns:minmax(270px,370px) minmax(300px,1fr);gap:20px}.panel form{display:flex;flex-direction:column;align-items:stretch;gap:5px}.panel form button{margin-top:16px;align-self:flex-start}.stack:empty:after,.cards:empty:after{content:"Ainda não há itens nesta área.";display:block;color:#8492a5;padding:18px 4px}.stack{display:flex;flex-direction:column}.panel .stack .user-row,.panel .stack .agent-row,.panel .stack .folder-row,.panel .stack .audit-row{padding:14px 0}.item-details{flex:1;min-width:0}.item-details strong{display:block;overflow-wrap:anywhere}.item-details small{color:#77859a}.badge{display:inline-block;border-radius:99px;padding:4px 9px;font-size:11px;font-weight:750;background:#eff2f6;color:#60718a}.badge.ok{background:#def6ec;color:#188564}.badge.warn{background:#fff0dc;color:#a3671d}.user-actions{display:flex;gap:8px;flex-wrap:wrap}.user-actions button{font-size:11px;padding:7px 9px}.permissions-list{margin-top:22px}.permission-row{display:flex;gap:16px;align-items:center;justify-content:space-between;border-top:1px solid #e9eef5;padding:17px 0}.permission-row select{width:190px}.toast{margin:16px clamp(20px,3.5vw,56px) 0;border:1px solid #a7d2f6;background:#e8f5ff;color:#195989;padding:13px 18px;border-radius:11px}.toast.danger{background:#fff1f3;border-color:#fecdd3;color:#ac2442}.after{margin-top:20px}.mobile-menu,.mobile-brand{display:none}.empty-state{padding:38px;border:1px dashed #c7d7e7;border-radius:14px;color:#7588a1;text-align:center}.loading{opacity:.6;pointer-events:none}
@media(max-width:950px){.login-layout{grid-template-columns:1fr}.brand-panel{min-height:230px;padding:28px}.brand-message h1{font-size:35px;margin:10px 0}.brand-message p,.brand-footer{display:none}.login-panel{padding:32px}.app-layout{grid-template-columns:1fr}.sidebar{display:none}.topbar{padding:0 18px;height:64px}.topbar-title{display:none}.mobile-brand{display:block;font-weight:800;color:#185f9d}.mobile-menu{display:flex;gap:8px;padding:10px 16px;background:white;overflow-x:auto}.mobile-menu button{white-space:nowrap;border:0;background:#e8f2fc;padding:10px;border-radius:9px;color:#285c8a}.content{padding:23px 16px}.split{grid-template-columns:1fr}.heading h1{font-size:26px}.permission-row{align-items:flex-start}.permission-row select{width:150px}.item-row{padding:12px 9px}.item-row button{padding:8px}.online-caption{display:none}}
/* v0.2: official corporate identity and responsive permission matrix */
.brand-logo{position:relative;z-index:1;width:min(350px,80%);height:auto;object-fit:contain;object-position:left}
.login-logo{width:min(250px,82%);height:auto;display:block;margin-bottom:24px}
.sidebar-brand{display:block;white-space:normal;text-align:center;margin:2px 4px 24px}
.sidebar-brand img{width:185px;max-width:100%;object-fit:contain;display:block;margin:auto}
.sidebar-brand small{display:block;color:#a9cbdf;font-size:10px;letter-spacing:2px;margin-top:10px}
.topbar-user{border:0;background:transparent;cursor:pointer;color:#233a55}
.password-layout{min-height:100vh;display:grid;place-items:center;background:#eef5fa;padding:25px}
.password-card{background:white;border:1px solid #dce8f2;border-radius:18px;padding:36px;width:min(470px,100%);box-shadow:0 10px 45px #102c5610}
.password-card h1{font-size:28px}.password-card form{display:flex;flex-direction:column}
.small{font-size:12px}.notice-warning{border-radius:10px;background:#fff8e8;color:#845d17;padding:12px;font-size:12px;margin:12px 0}
.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:5px 0 23px}
.profile-field{background:#f5f9fc;border:1px solid #e7eef5;border-radius:10px;padding:13px}
.profile-field small{display:block;color:#6c7f95;font-size:12px;margin-bottom:4px}.profile-field b{overflow-wrap:anywhere}
.file-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:15px;flex-wrap:wrap}
.permission-row{display:flex;flex-direction:column;align-items:stretch;gap:13px}
.permission-controls{display:grid;grid-template-columns:repeat(5,minmax(115px,1fr));gap:10px}
.permission-controls label{display:flex;align-items:center;gap:7px;background:#f6f9fc;border-radius:9px;padding:11px;font-size:12px;cursor:pointer}
.permission-controls label.disabled-option{opacity:.57;cursor:not-allowed}
.permission-controls input{width:18px;height:18px;margin:0;flex-shrink:0}
.permission-row .item-details small{margin-top:4px;display:block}
.permission-row .save-note{font-size:12px;color:#20805f;min-height:16px}
.user-row{flex-wrap:wrap}.user-row .user-actions{width:100%}.user-row .badge{align-self:flex-start}
.edit-dialog{border:1px solid #dbe5f1;box-shadow:0 22px 75px #1020384d;border-radius:16px;width:min(480px,calc(100% - 26px));padding:27px}
.edit-dialog::backdrop{background:#06183299}.edit-dialog form{display:flex;flex-direction:column}.edit-dialog h2{margin:0}
.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
.self-password-form{max-width:400px;margin-top:20px;display:flex;flex-direction:column;gap:10px}
@media(max-width:780px){.permission-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-grid{grid-template-columns:1fr}.brand-logo{max-width:250px}.sidebar-brand{display:none}}
