:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#142033;background:#f3f6fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:#f3f6fb;color:#132238}button,input,select{font:inherit}button{cursor:pointer}.btn{border:0;background:#0c2f66;color:#fff;padding:.72rem 1rem;border-radius:10px;font-weight:700;box-shadow:0 4px 12px #0c2f661c}.btn:hover{filter:brightness(1.08)}.btn.ghost{background:#fff;color:#16396f;border:1px solid #c8d4e6}.btn.danger{background:#8f2232}.link{border:0;background:none;color:#0b55a8;text-decoration:underline;padding:0}.public-shell{min-height:100vh;background:linear-gradient(180deg,#061a36 0,#0a2a58 520px,#f3f6fb 520px)}.public-top{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(4vw,28px);color:#fff}.hero{max-width:1180px;margin:0 auto;color:#fff;display:grid;grid-template-columns:1.25fr .75fr;gap:50px;align-items:center;padding:60px 30px 110px}.hero h1{font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,5.3rem);line-height:.98;margin:.3rem 0 1.3rem}.hero p{font-size:1.12rem;line-height:1.65;color:#d6e0ee;max-width:700px}.hero img{width:100%;max-height:430px;object-fit:contain;filter:drop-shadow(0 20px 35px #0007);border-radius:24px}.eyebrow{color:#e0be6a;letter-spacing:.13em;text-transform:uppercase;font-size:.78rem;font-weight:800}.hero-actions{display:flex;gap:12px;margin-top:24px}.hero-actions .ghost{background:transparent;color:#fff;border-color:#8ba0bd}.public-grid{max-width:1180px;margin:-50px auto 70px;padding:0 30px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.public-grid .card{min-height:170px}.public-shell footer{text-align:center;padding:30px;color:#66758b}.card{background:#fff;border:1px solid #e0e6ef;border-radius:16px;padding:20px;box-shadow:0 10px 25px #24385b0c;margin-bottom:18px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px}.card-head h3{margin:0;font-family:Georgia,serif;font-size:1.25rem}.card p{line-height:1.6;color:#526178}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#071426aa;display:grid;place-items:center;padding:20px;z-index:99}.modal{width:min(900px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;padding:22px;box-shadow:0 25px 80px #0008}.x{border:0;background:none;font-size:1.8rem;color:#526178}.auth-shell{min-height:100vh;background:radial-gradient(circle at top,#154681,#061a36 60%);display:grid;place-items:center;padding:25px}.auth-card{width:min(440px,94vw);background:#fff;border-radius:22px;padding:28px;box-shadow:0 25px 70px #0008}.auth-card img{width:100px;height:100px;object-fit:contain;display:block;margin:0 auto 12px}.auth-card h2{text-align:center;font-family:Georgia,serif}.form-grid{display:grid;gap:13px}.form-grid.two{grid-template-columns:1fr 1fr}.span2{grid-column:1/-1}.field{display:grid;gap:6px}.field span{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#65748a;font-weight:800}.field input,.field select,.inline-form input,.inline-form select,.topbar select{width:100%;border:1px solid #ccd6e5;background:#fff;border-radius:10px;padding:.72rem .78rem;color:#1a2a41}.auth-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.auth-links button{border:0;background:none;color:#0b55a8;padding:0}.error,.success{margin-top:12px;padding:12px;border-radius:10px}.error{background:#fff0f2;color:#90273a;border:1px solid #f2c8ce}.success{background:#edf9f0;color:#24693a;border:1px solid #c6e7cf}.app-shell{min-height:100vh;display:grid;grid-template-columns:255px 1fr}.sidebar{background:#061a36;color:#fff;padding:18px 14px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:11px;align-items:center;padding:4px 5px 20px;border-bottom:1px solid #ffffff17}.brand img{width:55px;height:55px;object-fit:contain;border-radius:12px}.brand b{font-family:Georgia,serif;line-height:1.1}.brand small{display:block;color:#9db0ca;margin-top:5px}.sidebar nav{display:grid;gap:4px;padding:16px 0;overflow:auto}.sidebar nav button{border:0;background:transparent;color:#bdcadd;text-align:left;padding:10px 12px;border-radius:9px}.sidebar nav button.active,.sidebar nav button:hover{background:#113564;color:#fff}.side-bottom{margin-top:auto;border-top:1px solid #ffffff17;padding-top:14px;display:grid;gap:10px}.side-bottom small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar{height:92px;background:#fff;border-bottom:1px solid #e0e6ef;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.topbar h2{margin:0;font-family:Georgia,serif;font-size:1.35rem}.topbar span{font-size:.82rem;color:#6c7a8f}.topbar select{width:auto;min-width:280px}.content{padding:28px;max-width:1500px}.stats{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:14px;margin-bottom:18px}.stats>div{background:#fff;border:1px solid #e0e6ef;border-radius:14px;padding:18px}.stats b{display:block;font-size:1.6rem;color:#0c2f66}.stats span{font-size:.8rem;color:#68768b}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #edf0f5;vertical-align:top}th{font-size:.73rem;text-transform:uppercase;letter-spacing:.06em;color:#708097;background:#f8fafc}td small{display:block;color:#7b8899;margin-top:4px}.row-actions{display:flex;gap:7px}.inline-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;align-items:end}.empty{padding:30px;text-align:center;color:#718096;background:#f8fafc;border-radius:10px}.center{min-height:100vh;display:grid;place-content:center;gap:10px}.attendance-head{display:grid;grid-template-columns:1fr auto;gap:20px}.qr{width:240px;max-width:100%;border:1px solid #ddd;border-radius:12px;margin:10px 0}.stack{display:flex;flex-direction:column;gap:8px}.birthday-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.birthday-grid>div{padding:14px;border:1px solid #e3e8f0;border-radius:12px;background:#fbfcfe}.birthday-grid b,.birthday-grid span,.birthday-grid small{display:block}.birthday-grid span{font-size:1.15rem;color:#0c2f66;margin:5px 0}.birthday-grid small{color:#718096}.neg{color:#a3283c;font-weight:700}.pos{color:#277145;font-weight:700}.event-list{display:grid}.event-list>div{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:14px;border-bottom:1px solid #edf0f5}.event-list time{font-weight:800;color:#0c2f66}.event-list p{margin:.3rem 0}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.chips span{background:#eef3f9;border:1px solid #d8e1ed;border-radius:999px;padding:8px 11px;font-size:.84rem}@media(max-width:950px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar nav{grid-template-columns:repeat(3,1fr)}.side-bottom{display:none}.topbar{position:relative}.hero{grid-template-columns:1fr}.hero img{max-height:300px}.public-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.form-grid.two{grid-template-columns:1fr}.span2{grid-column:auto}.sidebar nav{grid-template-columns:repeat(2,1fr)}.topbar{height:auto;padding:15px;align-items:stretch;gap:10px;flex-direction:column}.topbar select{min-width:0}.content{padding:14px}.stats{grid-template-columns:1fr 1fr}.attendance-head{grid-template-columns:1fr}.event-list>div{grid-template-columns:1fr}.hero{padding-top:30px}.hero h1{font-size:2.8rem}}.toast{position:fixed;right:20px;bottom:20px;z-index:120;background:#0c2f66;color:#fff;padding:14px 18px;border-radius:12px;box-shadow:0 15px 40px #0005;max-width:360px}textarea{font:inherit;width:100%;border:1px solid #ccd6e5;background:#fff;border-radius:10px;padding:.72rem .78rem;color:#1a2a41;resize:vertical}.check{display:flex;gap:9px;align-items:flex-start;font-size:.9rem;color:#45546a}.check input{margin-top:.2rem}.notice,.warning-box{padding:14px 16px;border-radius:12px;margin-bottom:18px;line-height:1.5}.notice{background:#eef5ff;border:1px solid #cbdcf4;color:#24496f}.warning-box{background:#fff7e7;border:1px solid #efd59a;color:#6d5017}.warning-box span{display:block;margin-top:5px}.governance-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.governance-doc,.controller{display:grid;gap:7px}.governance-doc small,.controller small{color:#6c7a8f}.controller{padding:12px 0;border-bottom:1px solid #edf0f5}.controller:last-child{border-bottom:0}.warn{color:#8b5e0a}.header-actions{display:flex;gap:14px;align-items:center}.public-link{border:0;background:none;color:#fff;text-decoration:underline}.role-help{font-size:.82rem;color:#607087}.field textarea{width:100%}@media(max-width:760px){.governance-grid{grid-template-columns:1fr}}.role-info{display:grid;gap:5px;padding:12px 14px;background:#f7f9fc;border:1px solid #dfe6f0;border-radius:10px;color:#44536a}.role-info small{color:#7a5b16}.commission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.commission-box{border:1px solid var(--line,#d8d8d8);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px}.commission-box .mini-list{display:flex;flex-direction:column;gap:4px;padding:8px 0}.inline-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.check-list{display:flex;flex-direction:column;gap:9px;max-height:360px;overflow:auto;padding:4px}.section-title{font-weight:700;border-top:1px solid var(--line,#ddd);padding-top:12px;margin-top:4px}.case-meta{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:14px 0}.detail-grid>span{display:flex;flex-direction:column;gap:3px;border:1px solid var(--line,#ddd);border-radius:10px;padding:10px}.opinion-report{border-top:1px solid var(--line,#ddd);padding:14px 0}.opinion-report:first-child{border-top:0}.opinion-report>div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.opinion-report p{white-space:pre-wrap}.btn.danger{border-color:#8b1e1e}:root{--fcl-navy:#062747;--fcl-navy-deep:#031a31;--fcl-gold:#d49b2a;--fcl-gold-light:#efd18a;--fcl-ivory:#fbf8f2;--fcl-line:#b98931}body{background:var(--fcl-navy-deep);color:#f8f5ee;font-family:Georgia,Times New Roman,serif}.app-shell{background:linear-gradient(145deg,#031a31,#07375e 60%,#052a4b)}.sidebar{background:linear-gradient(180deg,#041d35,#062d50);border-right:1px solid #b9893155}.sidebar nav button{color:#ddd7cb;border-left:3px solid transparent}.sidebar nav button.active,.sidebar nav button:hover{background:#0b3a61;color:#f0bd55;border-left-color:var(--fcl-gold)}.brand{border-bottom-color:#d49b2a55}.brand img{border-radius:50%;background:#f4e6bd;border:2px solid var(--fcl-gold)}.topbar{background:linear-gradient(90deg,#fffdf8,#f4efe4);border-bottom:2px solid var(--fcl-gold);color:#071f3d}.topbar h2{font-size:1.65rem}.content{max-width:1500px;width:100%}.card{background:linear-gradient(180deg,#fffdf9,#f8f3e9);border:1px solid #d2b475;color:#071f3d;box-shadow:0 12px 30px #0003}.card-head h3,.a4-title h3{color:#071f3d}.stats>div{background:linear-gradient(180deg,#fffdf8,#f6efe2);border:1px solid #d2b475;box-shadow:0 8px 20px #0002}.stats b{color:#0a3158}.stats span{color:#6d5b3c}.btn{background:linear-gradient(180deg,#e2af45,#b87a0d);color:#fff;border:1px solid #f3d990;border-radius:8px;box-shadow:0 5px 15px #0002}.btn.ghost{background:#062d50;color:#f3c45f;border-color:#c4912c}.link{color:#a76b00}th{background:#072e4f;color:#f3bd50;border-bottom:1px solid #bd8b32}td{color:#10233b;border-bottom-color:#d8c9ab}.table-wrap{border-radius:10px;overflow:auto;border:1px solid #c7ad79}.notice{background:#082f50;color:#f8f0dc;border:1px solid #b98931}.warning-box{border-color:#c9993a}.field span{color:#76591f}.field input,.field select,.field textarea,.inline-form input,.inline-form select,.topbar select,textarea{border-color:#c8ad76;background:#fffefa;color:#0c2340}.modal-bg{background:#020d1ddd}.modal{background:#f6f0e5;border:1px solid #c49742;color:#0b2340}.public-shell{background:linear-gradient(180deg,#fffdf8 0,#fffdf8 240px,#062b4c 240px,#062b4c)}.public-top{color:#071f3d;background:#fffdf8;border-bottom:1px solid #d7b96f}.public-link{color:#071f3d}.hero,.hero h1{color:#fff}.hero p{color:#e7e0d3}.hero img{filter:drop-shadow(0 18px 28px #0008)}.a4-sheet{width:min(210mm,100%);min-height:297mm;margin:0 auto;background:#fffdf9;color:#12243b;padding:14mm 14mm 16mm;box-sizing:border-box;border:1px solid #d0b16c;box-shadow:0 14px 40px #0002;position:relative}.a4-letterhead{display:grid;grid-template-columns:26mm 1fr;gap:7mm;align-items:center}.a4-letterhead img{width:24mm;height:24mm;object-fit:contain}.a4-letterhead small{letter-spacing:.09em;color:#8d6319;font-family:Arial,sans-serif;font-size:8pt}.a4-letterhead h2{font-size:17pt;margin:2mm 0;color:#062747;line-height:1.05}.a4-letterhead span{font-size:8.5pt;color:#594a36;letter-spacing:.04em}.a4-rule{height:1px;background:linear-gradient(90deg,transparent,#b68125 12%,#b68125 88%,transparent);margin:5mm 0}.a4-title{text-align:center;margin:4mm 0 7mm}.a4-title h3{font-size:15pt;margin:0;text-transform:uppercase}.a4-title p{margin:2mm 0 0;color:#8d6319}.institutional-form{gap:4mm}.institutional-form .field span{font-size:8pt}.institutional-form input,.institutional-form select,.institutional-form textarea{border-radius:3px;border:1px solid #bba578;background:#fff;padding:2.5mm}.form-signature-line{margin-top:7mm;border-top:1px solid #a58a57;padding-top:3mm;display:flex;justify-content:space-between;font-size:9pt}.a4-footer{position:absolute;left:14mm;right:14mm;bottom:7mm;display:flex;justify-content:space-between;border-top:1px solid #d8c8a8;padding-top:2mm;font-size:7.5pt;color:#75684f}.a4-actions{margin-top:8mm;text-align:right}.solidarity-notice{font-size:9.5pt}.solidarity-detail .wide{grid-column:1/-1}@page{size:A4;margin:0}@media print{body{background:#fff}.modal-bg{position:static;background:#fff;padding:0}.modal{width:100%;max-height:none;overflow:visible;padding:0;border:0;box-shadow:none}.modal>.card-head,.no-print,.sidebar,.topbar{display:none!important}.app-shell{display:block}.content{padding:0}.a4-sheet{width:210mm;min-height:297mm;border:0;box-shadow:none;margin:0;page-break-after:always}.card{box-shadow:none}.a4-footer{bottom:7mm}}@media(max-width:950px){.content{padding-bottom:88px}.sidebar{position:fixed;left:0;right:0;bottom:0;top:auto;height:auto;z-index:70;padding:0;border-right:0;border-top:1px solid #b98931}.sidebar .brand,.side-bottom{display:none}.sidebar nav{display:flex;overflow-x:auto;padding:4px 8px;gap:3px}.sidebar nav button{min-width:96px;text-align:center;border-left:0;border-top:3px solid transparent;padding:10px 7px;font-size:.78rem}.sidebar nav button.active{border-top-color:var(--fcl-gold)}.app-shell{display:block}.a4-sheet{min-height:auto;padding:18px}.a4-footer{position:static;margin-top:24px}.a4-letterhead{grid-template-columns:64px 1fr}.a4-letterhead img{width:58px;height:58px}}.institution-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:28px;align-items:center;background:linear-gradient(180deg,#fffdf9,#f8f2e7);border:1px solid #d0b16c;border-radius:16px;padding:28px 32px;margin-bottom:20px;color:#082341;box-shadow:0 12px 30px #0003}.institution-hero img{width:100%;max-width:290px;max-height:270px;object-fit:contain;justify-self:end;filter:drop-shadow(0 10px 20px #0003)}.gold-kicker{font-family:Arial,sans-serif;font-size:.76rem;letter-spacing:.16em;color:#a9751b;font-weight:800}.institution-copy h1{font-size:clamp(2rem,4vw,3.3rem);font-weight:400;margin:10px 0 14px}.institution-copy h2{font-size:clamp(1.25rem,2.4vw,2rem);font-weight:400;margin:0;line-height:1.18}.institution-copy>p{color:#657084;border-bottom:1px solid #d7bc80;padding-bottom:16px;max-width:560px}.leader-line{display:flex;gap:9px;flex-wrap:wrap;color:#8c641c}.leader-line b{color:#18314e}.module-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:16px;margin-bottom:22px}.module-tile{position:relative;min-height:156px;background:linear-gradient(180deg,#fffdf9,#f7f0e5);border:1px solid #d1b373;border-radius:14px;color:#102844;padding:20px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 20px #0002}.module-tile:hover{transform:translateY(-2px);border-color:#e0a83d}.module-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#f3e9d3;color:#b77d16;font-size:1.7rem}.module-tile b{font-size:1.15rem;font-weight:500}.module-tile small{font-family:Arial,sans-serif;color:#7b7061;text-align:center;font-size:.72rem}.module-arrow{position:absolute;right:13px;bottom:12px;color:#b87e15;font-size:1.6rem}.dashboard-stats{margin:0}.institution-note{margin:14px 0 0!important;color:#56657a!important}@media(max-width:900px){.module-grid{grid-template-columns:repeat(2,1fr)}.institution-hero{grid-template-columns:1fr}.institution-hero img{justify-self:center;max-width:230px}.institution-copy{text-align:left}}@media(max-width:520px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.module-tile{min-height:135px;padding:14px 8px}.module-tile b{font-size:1rem}.institution-hero{padding:20px}.institution-copy h1{font-size:2.2rem}}.module-header{margin:-28px -28px 22px;padding:26px 32px 24px;background:linear-gradient(180deg,#052849,#062d50);border-bottom:1px solid #b98931;color:#fff;text-align:center;box-shadow:0 8px 22px #0003}.module-header-flags{display:flex;justify-content:center;gap:18px;align-items:center;font-family:Arial,sans-serif;font-size:.72rem;letter-spacing:.14em;color:#e2c37e}.module-header h1{font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.15rem);font-weight:400;margin:10px 0 8px;color:#fff}.module-header-rule{width:min(360px,70%);height:2px;margin:0 auto;background:linear-gradient(90deg,transparent,#d49b2a 20%,#d49b2a 80%,transparent)}.module-header p{margin:9px auto 0;max-width:760px;color:#dfd8cc;font-family:Georgia,Times New Roman,serif}.compact-stats{grid-template-columns:repeat(4,minmax(130px,1fr))}.upload-field{padding:13px;border:1px dashed #b98931;border-radius:10px;background:#fffaf0}.upload-field input{border:0!important;background:transparent!important;padding:.45rem 0!important}.upload-field small{color:#7b6a4b}.icon-actions,.inline-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.icon-action{min-width:36px;height:36px;border:1px solid #b98931;border-radius:8px;background:#062d50;color:#efc86f;font-weight:800;display:inline-grid;place-items:center;padding:0 9px}.icon-action:hover{background:#0b416f;color:#fff}.danger-icon{border-color:#a33;color:#e57b7b}.status-pill{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:#f1e8d5;color:#6b5424;font-size:.76rem;font-weight:700}.status-pill.present,.status-pill.approved,.status-pill.open{background:#e3f2df;color:#2e6933}.status-pill.pending,.status-pill.pendente{background:#fff0cf;color:#8b6115}.status-pill.rejected,.status-pill.rejeitado,.status-pill.closed{background:#f3dddd;color:#7d3030}.attendance-summary{display:grid;grid-template-columns:repeat(3,1fr) 160px;gap:12px;align-items:stretch;margin-bottom:18px}.attendance-summary>div{border:1px solid #d2b475;border-radius:10px;padding:12px;background:#fffaf1;display:flex;flex-direction:column;gap:6px}.attendance-summary strong{font-size:1.6rem;color:#0a3158}.attendance-qr{align-items:center!important;justify-content:center;text-align:center}.attendance-qr .qr{width:120px;margin:0 auto 4px}.workflow-summary{display:grid;gap:8px;padding:14px;border:1px solid #d2b475;border-radius:10px;background:#fffaf1}.workflow-summary span{display:block;color:#4e5c6f}.timeline{display:grid;gap:0;margin-top:16px;border-left:2px solid #c39134;padding-left:18px}.timeline>div{position:relative;display:grid;gap:3px;padding:0 0 16px}.timeline>div:before{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:#d49b2a;left:-24px;top:4px}.timeline span{font-size:.82rem;color:#6b7788}.success-inline{color:#2e6933;font-weight:700}.field small{font-size:.76rem;color:#6e7c8e}.a4-sheet .table-wrap{border-color:#c7ad79}.a4-sheet th{background:#062d50;color:#efc86f}.a4-sheet td{background:#fffdf9}.card>.notice:last-child{margin-bottom:0}@media(max-width:950px){.module-header{margin:-14px -14px 18px;padding:22px 16px}.attendance-summary{grid-template-columns:repeat(2,1fr)}.attendance-qr{grid-column:1/-1}.compact-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.attendance-summary{grid-template-columns:1fr 1fr}.module-header h1{font-size:2.15rem}.compact-stats{grid-template-columns:1fr 1fr}.icon-action{min-width:40px;height:40px}.card{padding:15px}}.attendance-session-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 5mm;font-size:9pt;color:#57472d}.attendance-summary{display:grid;grid-template-columns:repeat(3,1fr) minmax(34mm,.75fr);gap:4mm;margin-bottom:5mm}.attendance-summary>div{border:1px solid #c8ab6c;background:#fffaf0;padding:3mm;text-align:center}.attendance-summary b{display:block;font-size:8pt;text-transform:uppercase;color:#76591f}.attendance-summary strong{display:block;font-size:16pt;color:#062747;margin-top:1mm}.attendance-qr{grid-row:span 2}.attendance-qr .qr{width:30mm;height:30mm;margin:0 auto 1mm;display:block;border:0;border-radius:0}.attendance-qr small{display:block;font-size:7.5pt;color:#5d5140}.attendance-print-table table{min-width:0;font-size:8.5pt}.attendance-print-table th,.attendance-print-table td{padding:2.1mm 1.6mm}.attendance-actions{margin-top:5mm;justify-content:flex-end}@media(max-width:760px){.attendance-summary{grid-template-columns:1fr 1fr}.attendance-qr{grid-column:1/-1;grid-row:auto}.attendance-print-table{overflow-x:auto}.attendance-print-table table{min-width:760px}}@media print{body.printing-attendance{background:#fff!important;color:#000!important}body.printing-attendance .app-shell>main>.content>*:not(.modal-bg){display:none!important}body.printing-attendance .modal-bg{position:static!important;inset:auto!important;background:#fff!important;padding:0!important;display:block!important}body.printing-attendance .modal{width:210mm!important;max-width:210mm!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}body.printing-attendance .a4-sheet{width:210mm!important;min-height:297mm!important;padding:12mm 12mm 14mm!important;margin:0!important;border:0!important;box-shadow:none!important}body.printing-attendance .attendance-print-table{overflow:visible!important;border:0!important}body.printing-attendance .attendance-print-table table{width:100%!important;min-width:0!important;font-size:8pt!important}body.printing-attendance .attendance-print-table th,body.printing-attendance .attendance-print-table td{padding:1.8mm 1.2mm!important}body.printing-attendance .attendance-actions{display:none!important}}.readiness-banner{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.1rem;border:1px solid rgba(166,124,42,.45);border-radius:14px;background:#f8f4e9;margin-bottom:1rem}.readiness-banner.ready{background:#eef7f0}.readiness-banner.blocked{background:#fff4ef}.readiness-banner b{font-family:Georgia,Times New Roman,serif;letter-spacing:.04em}.readiness-list{display:grid;gap:.65rem;margin:1rem 0}.readiness-item{display:flex;gap:.75rem;align-items:flex-start;padding:.8rem;border:1px solid rgba(9,35,63,.12);border-radius:12px;background:#fff}.readiness-item small{display:block;margin-top:.2rem;color:#5b6470}.readiness-icon{display:grid;place-items:center;min-width:1.8rem;height:1.8rem;border-radius:999px;font-weight:700;background:#e9edf2}.readiness-item.ok .readiness-icon{background:#e5f3e8}.readiness-item.fail .readiness-icon{background:#fde7df}.readiness-item.fail{border-color:#973d2447}.profile-layout{display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:22px;align-items:start}.profile-photo-card{border:1px solid #d2b475;border-radius:14px;background:#fffaf1;padding:14px}.profile-photo-frame{aspect-ratio:3/4;border:1px solid #c6ac79;border-radius:12px;overflow:hidden;background:#f5efe3;display:grid;place-items:center}.profile-photo-frame img{width:100%;height:100%;object-fit:cover}.photo-placeholder{display:grid;place-items:center;gap:8px;color:#80652d;text-align:center}.photo-placeholder span{font-size:3rem}.photo-form{display:grid;gap:10px;margin-top:12px}.photo-form small{color:#6c6253}.profile-data-form{margin:0}.section-title{font-family:Georgia,Times New Roman,serif;color:#14345b;border-bottom:1px solid #d2b475;padding:8px 0 5px;margin-top:4px;font-weight:700}.report-head{display:grid;grid-template-columns:1fr 36mm;gap:7mm;align-items:start;margin-bottom:7mm;padding-bottom:5mm;border-bottom:1px solid #c7ad79}.report-head>div:first-child,.report-facts{display:grid;gap:2mm}.report-head span,.report-head small{display:block}.report-qr{text-align:center}.report-qr img{width:30mm;height:30mm;display:block;margin:0 auto 1mm}.report-qr small{font-size:7.5pt;color:#6d604b}.a4-report-section{break-inside:avoid;margin:0 0 7mm}.a4-report-section h4{font-family:Georgia,Times New Roman,serif;color:#0a3158;border-bottom:1px solid #c7ad79;padding-bottom:2mm;margin:0 0 3mm}.a4-report-section ol{margin:0;padding-left:6mm}.a4-report-section li{margin-bottom:2mm;line-height:1.45}.a4-report-section p{line-height:1.55}.document-confidentiality{margin-top:7mm;padding:3mm;border:1px solid #c7ad79;background:#fffaf1;font-size:8.5pt}@media(max-width:760px){.profile-layout{grid-template-columns:1fr}.profile-photo-card{max-width:320px;margin:0 auto}.report-head{grid-template-columns:1fr}.report-qr{justify-self:center}}@media print{body.printing-document{background:#fff!important;color:#000!important}body.printing-document .app-shell>main>.content>*:not(.modal-bg){display:none!important}body.printing-document .modal-bg{position:static!important;inset:auto!important;background:#fff!important;padding:0!important;display:block!important}body.printing-document .modal{width:210mm!important;max-width:210mm!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}body.printing-document .a4-sheet{width:210mm!important;min-height:297mm!important;padding:12mm 12mm 14mm!important;margin:0!important;border:0!important;box-shadow:none!important}body.printing-document .a4-actions{display:none!important}}
