@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Inter:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--pp-graphite:#42484B;--pp-accent:#D64B40;--pp-porcelain:#F8F8F6;--pp-white:#FFF;--pp-border:#E3E5E4;--pp-slate:#697174;--pp-ink:#252A2C;--radius:14px;--shadow:0 9px 36px rgba(37,42,44,.035)}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;background:var(--pp-porcelain);color:var(--pp-ink);font:14px/1.55 'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:'Manrope','Inter',system-ui,sans-serif;letter-spacing:-.035em}h1{font-size:clamp(27px,3.2vw,36px);line-height:1.22}h2{font-size:21px;line-height:1.32}h3{font-size:15px;line-height:1.36}p{line-height:1.65}img{max-width:100%}
.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:700;color:#889092;text-transform:uppercase}.eyebrow.accent{color:var(--pp-accent)}.muted{color:var(--pp-slate)}.small{font-size:12px}.panel{background:white;border:1px solid var(--pp-border);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);min-width:0}.panel h2{margin:0 0 8px}.panel h3{margin:0 0 5px}.panel p{margin-bottom:15px}
.btn{appearance:none;border:1px solid transparent;display:inline-flex;gap:12px;align-items:center;justify-content:center;min-height:44px;border-radius:10px;padding:11px 17px;font-size:13px;font-weight:700;white-space:nowrap;transition:filter .15s,transform .15s}.btn:hover{filter:brightness(.96);transform:translateY(-1px)}.btn:focus-visible,.side-link:focus-visible,.field input:focus-visible,.field select:focus-visible{outline:3px solid #F0A29B;outline-offset:2px}.btn-primary{background:var(--pp-accent);color:white}.btn-outline{background:white;border-color:#D9DEDD;color:var(--pp-graphite)}.btn-white{background:white;color:var(--pp-graphite)}.full{width:100%}.flash{border:1px solid #C5E6D2;background:#ECF8F1;color:#29553B;padding:12px 16px;border-radius:11px;margin-bottom:18px;font-size:13px}.flash-error{background:#FFF0EF;border-color:#FFCBCA;color:#963A32}
.app-shell{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;width:238px;flex:0 0 238px;background:#FFF;border-right:1px solid var(--pp-border);padding:27px 16px;display:flex;flex-direction:column}.sidebar-brand{display:flex;align-items:center;gap:10px;margin:0 5px 45px}.sidebar-brand img{height:43px;width:43px;object-fit:contain;border:1px solid var(--pp-border);border-radius:12px;background:var(--pp-porcelain)}.sidebar-brand span{font-family:Manrope,system-ui;font-size:17px;letter-spacing:-.045em;font-weight:500;line-height:1.15}.sidebar-brand span b{font-weight:800}.sidebar-brand span small{display:block;font-family:Inter,sans-serif;letter-spacing:.105em;font-size:8px;margin-top:5px;color:var(--pp-slate);font-weight:700}.nav-label{margin:0 13px 12px;color:#A0A6A6;font-size:9px;letter-spacing:.19em;font-weight:700}.side-links{display:flex;flex-direction:column;gap:6px}.side-link{color:#657074;border-radius:10px;min-height:43px;display:flex;align-items:center;gap:12px;padding:0 12px;font-weight:600;font-size:12px}.side-symbol{font-size:20px;line-height:1;color:#8B9596;min-width:24px;text-align:center}.side-link:hover{background:#F8F8F6}.side-link.active{background:#FDEBE9;color:#AA4038}.side-link.active .side-symbol{color:var(--pp-accent)}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--pp-border);padding:17px 11px 4px}.version-pill{color:#7D8586;font-size:11px;margin-bottom:15px}.status-dot{display:inline-block;width:7px;height:7px;background:#7FB69A;border-radius:50%;margin-right:7px}.exit-link{border:0;background:none;color:var(--pp-slate);padding:0;font-size:12px}.exit-link:hover{color:var(--pp-accent)}.app-main{flex:1;min-width:0}.topbar{height:75px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,3vw,48px);background:rgba(255,255,255,.86);border-bottom:1px solid var(--pp-border)}.crumb{color:var(--pp-graphite);font-size:12px;font-weight:600}.crumb span{color:#BBC0C0;padding:0 9px}.top-user{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--pp-slate)}.avatar{display:grid;place-items:center;background:#F6E1DF;color:#B75149;width:30px;height:30px;border-radius:50%;font-weight:800}.content{max-width:1430px;margin:0 auto;padding:38px clamp(18px,3vw,48px) 65px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:25px}.page-heading h1{margin:8px 0 7px}.page-heading p{font-size:13px;color:var(--pp-slate);margin:0;line-height:1.5}.page-heading .btn{margin-bottom:2px}.welcome-banner{border-radius:17px;background:linear-gradient(120deg,#3C4245,#515A5D);color:white;padding:32px 36px;display:flex;justify-content:space-between;gap:30px;min-height:200px;position:relative;overflow:hidden}.welcome-banner .eyebrow{color:#E8C7C4}.welcome-banner h2{font-size:25px;max-width:460px;margin:14px 0 10px;color:white}.welcome-banner p{font-size:12px;color:#E0E5E3}.welcome-mark{width:135px;height:135px;background:rgba(255,255,255,.1);border-radius:30px;transform:rotate(9deg);display:grid;place-items:center}.welcome-mark img{width:105px;border-radius:24px}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 30px}.metric{border:1px solid var(--pp-border);border-radius:14px;padding:22px;background:#FFF;display:flex;flex-direction:column;gap:8px;min-width:0}.metric-icon{height:29px;width:29px;color:var(--pp-accent);background:#FDEBE9;border-radius:8px;display:grid;place-items:center;font-size:18px}.metric strong{font-family:Manrope;font-size:26px;letter-spacing:-.05em;line-height:1.2}.metric>span{color:var(--pp-slate);font-size:12px}.section-title{margin:28px 0 15px;display:flex;justify-content:space-between;align-items:baseline;gap:12px}.section-title h2{font-size:18px;margin:0}.section-title p{color:var(--pp-slate);font-size:12px;margin:0}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.feature-card{background:white;border:1px solid var(--pp-border);border-radius:14px;padding:23px;transition:border-color .15s,transform .15s}.feature-card:hover{border-color:#ED9992;transform:translateY(-2px)}.feature-icon{width:35px;height:35px;border-radius:10px;background:#FDEBE9;color:var(--pp-accent);font-size:21px;display:grid;place-items:center;margin-bottom:19px}.feature-card h3{margin-bottom:9px}.feature-card p{color:var(--pp-slate);font-size:12px;min-height:50px}.feature-card>span{color:var(--pp-accent);font-weight:700;font-size:11px}.recent-panel{margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.section-heading h2{margin:0}.activity{display:flex;gap:12px;border-top:1px solid #F1F1F0;padding:13px 0;align-items:center}.activity-dot{width:8px;height:8px;border-radius:50%;background:#DA6C62;flex-shrink:0}.activity div{min-width:0;flex:1}.activity strong,.activity small{display:block}.activity strong{font-size:12px}.activity small{color:var(--pp-slate);font-size:11px}.activity time{color:#A1A8A8;font-size:10px;white-space:nowrap}
.two-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(320px,1.15fr);gap:20px;margin-bottom:20px}.form-stack{display:flex;flex-direction:column;gap:16px;margin-top:18px}.field{display:flex;flex-direction:column;gap:7px}.field>span{font-weight:650;font-size:12px;color:var(--pp-graphite)}.field input,.field select,.field textarea{width:100%;min-height:44px;background:white;border:1px solid #DDE0DE;border-radius:9px;padding:10px 12px;outline:none;color:var(--pp-ink)}.field textarea{min-height:96px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#A7AEAF}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-divider{color:var(--pp-accent);letter-spacing:.13em;font-size:10px;font-weight:800;border-top:1px solid #EAEDEC;padding-top:14px;margin-top:4px}.dropzone{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;border:1px dashed #BBC3C1;background:#FBFCFB;border-radius:13px;min-height:146px;padding:24px;text-align:center;cursor:pointer}.dropzone:hover{border-color:var(--pp-accent);background:#FFF9F8}.dropzone.tall{min-height:210px}.dropzone-icon{width:46px;height:46px;border-radius:14px;background:#F8E8E6;color:var(--pp-accent);display:grid;place-items:center;font-size:26px}.dropzone b{font-size:13px}.dropzone small{font-size:11px;color:var(--pp-slate)}.callout{border:1px solid #F0D5D1;background:#FFF7F5;color:#935A54;padding:14px 15px;border-radius:12px;display:flex;gap:10px;font-size:12px;line-height:1.6}.large-version{font-size:40px;margin-top:5px!important;font-family:'IBM Plex Mono',monospace;letter-spacing:-.07em}.tag{display:inline-block;background:#F5F6F4;border:1px solid #ECEFEC;border-radius:999px;padding:5px 9px;color:#66706E;font-size:11px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:10px;color:#8A9192;text-transform:uppercase;letter-spacing:.08em;padding:12px 8px}td{padding:14px 8px;border-top:1px solid #F1F2F1;font-size:12px;color:#5A6264}td b,td small{display:block}td small{font-size:11px;color:#959C9C;margin-top:4px}.empty-inline{background:#FAFBFA;border:1px dashed #D4DAD8;padding:19px;border-radius:10px;font-size:12px;color:var(--pp-slate)}
.brand-hero{display:flex;justify-content:space-between;align-items:center;background:#FFF;padding:26px 32px;margin-bottom:24px}.brand-hero h2{font-size:29px;margin:6px 0 4px}.brand-hero p{font-size:12px;color:var(--pp-slate);margin:0}.brand-hero img{width:115px;border-radius:20px}.form-panel{margin-bottom:15px}.asset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.asset-card{padding:17px}.asset-card h3{font-size:13px}.asset-card p{color:var(--pp-slate);font-size:10px;min-height:15px}.asset-preview{height:140px;background:#F9FAF8;border:1px solid #EDF0EE;border-radius:12px;display:grid;place-items:center;margin-bottom:14px;overflow:hidden}.asset-preview img{max-width:90%;max-height:106px;object-fit:contain}.asset-card input[type=file]{width:100%;font-size:10px;color:var(--pp-slate)}.reset-choice{display:flex;align-items:center;gap:6px;color:var(--pp-slate);font-size:11px;margin-top:13px}.palette-panel{margin:20px 0}.palette-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}.palette-row .swatch{height:55px;border:1px solid #ECEEEE;border-radius:9px;margin-bottom:7px}.palette-row strong,.palette-row span{display:block;word-break:break-word;font-size:10px}.palette-row strong{font-weight:600}.palette-row span{color:var(--pp-slate);font-family:'IBM Plex Mono',monospace;font-size:9px}.actions-bar{display:flex;justify-content:flex-end;margin-bottom:30px}
.portal-hero{background:linear-gradient(115deg,#42484B,#586063);color:white;padding:36px 36px 36px 40px;display:flex;justify-content:space-between;align-items:center;min-height:234px;border-radius:17px;overflow:hidden}.portal-hero .eyebrow{color:#EFBAB5}.portal-hero h2{font-size:30px;letter-spacing:-.06em;line-height:1.22;margin:12px 0 10px}.portal-hero em{font-style:normal;color:#F2B5AE}.portal-hero p{font-size:12px;color:#D9DDDC;margin:0 0 18px}.hero-orbit{height:160px;width:160px;border:2px solid rgba(255,255,255,.15);border-radius:50%;display:grid;place-items:center;font-family:Manrope;font-size:47px;font-weight:800;color:#EAB8B3;position:relative;transform:rotate(-15deg)}.hero-orbit span{position:absolute;font-size:15px;color:white;right:20px;top:18px}.specialty-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.specialty{border:1px solid var(--pp-border);background:white;border-radius:13px;padding:19px 16px}.specialty>span{font-size:24px;color:var(--pp-accent);display:block;height:42px}.specialty h3{margin:0 0 6px;font-size:13px}.specialty p{font-size:11px;color:var(--pp-slate);margin:0}.empty-project{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:42px 20px;border-radius:15px;border:1px dashed #D0D7D4;background:#FFF}.empty-project>span{color:var(--pp-accent);font-size:38px}.empty-project b{font-family:Manrope;font-size:15px}.empty-project small{color:var(--pp-slate);font-size:12px;text-align:center}.empty-project strong{color:var(--pp-accent);font-size:12px;margin-top:7px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.project-card{background:white;border:1px solid var(--pp-border);border-radius:13px;overflow:hidden}.project-cover{height:180px;background:#EFF0EF;color:#B8C0BD;display:grid;place-items:center;font-size:34px}.project-cover img{width:100%;height:100%;object-fit:cover}.project-desc{padding:14px 16px;display:flex;flex-direction:column;gap:5px}.project-desc strong{font-size:13px}.project-desc span{color:var(--pp-slate);font-size:11px}.lock-panel{background:#FCFDFC}.lock-icon{background:#FCE9E7;color:var(--pp-accent);width:42px;height:42px;font-size:27px;border-radius:12px;display:grid;place-items:center;margin-bottom:18px}.separator{height:1px;background:var(--pp-border);margin:15px 0}.checked{color:#597365;font-size:12px;font-weight:600;padding:5px 0}.soft-note{border:1px solid #E9E8DB;border-radius:12px;background:#FCF9F0;padding:17px;font-size:12px;color:#827659;margin-top:15px}.project-detail{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:20px}.project-photo{display:grid;place-items:center;min-height:330px;background:#ECECEA}.project-photo img{width:100%;max-height:650px;object-fit:contain}.info-list{margin:22px 0;border-top:1px solid #EEF0EE}.info-list>div{padding:12px 0;border-bottom:1px solid #EEF0EE;display:flex;justify-content:space-between;gap:10px;font-size:12px}.info-list span{color:var(--pp-slate)}
.public-page{min-height:100vh}.setup-header{display:flex;align-items:center;gap:12px;max-width:1160px;margin:auto;padding:27px 20px 0}.setup-header img{width:47px;height:47px;object-fit:contain}.setup-header strong,.setup-header span{display:block}.setup-header strong{font-family:Manrope;font-size:19px}.setup-header span{color:var(--pp-slate);font-size:9px;letter-spacing:.15em;font-weight:700}.install-shell{max-width:1160px;margin:52px auto 70px;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.install-intro{padding:55px 0}.install-intro h1{font-size:clamp(35px,4vw,53px);max-width:480px;margin:19px 0;line-height:1.16}.install-intro>p{font-size:15px;color:var(--pp-slate);max-width:440px}.install-points{margin:40px 0;display:grid;gap:17px}.install-points div{font-size:14px;color:var(--pp-accent);font-weight:700}.install-points span{color:var(--pp-graphite);font-size:13px;font-weight:500;margin-left:9px}.setup-note{font-size:12px;color:#7E746B;background:#F4F1E9;padding:18px;border-radius:12px;max-width:450px;line-height:1.75}.setup-note code{font-family:'IBM Plex Mono';color:#7B5744}.install-panel{padding:32px}.install-panel h2{margin-bottom:5px}.login-grid{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-visual{background:linear-gradient(130deg,#F0F1EE,#F8F8F6 42%,#F7E9E6);padding:48px clamp(30px,5vw,90px);display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--pp-border)}.login-brand img{width:min(350px,100%);height:88px;object-fit:contain;object-position:left center;mix-blend-mode:multiply}.login-story{padding-bottom:50px}.login-story h1{font-size:clamp(38px,4.2vw,65px);letter-spacing:-.06em;margin:17px 0}.login-story p{color:var(--pp-slate);font-size:15px;max-width:400px}.login-story>span:last-child{color:#8B9293;font-size:12px}.subtle-line{height:3px;width:54px;background:var(--pp-accent);border-radius:4px;margin:30px 0}.login-form-panel{display:grid;place-items:center;padding:35px 26px;background:#FFF}.login-box{width:min(410px,100%)}.mini-brand{display:flex;gap:9px;align-items:center;font-family:Manrope;font-weight:800;font-size:17px;margin-bottom:55px}.mini-brand img{width:35px;height:35px;border-radius:10px}.login-box h2{font-size:34px;margin:9px 0}.login-box .form-stack{margin-top:35px}.login-foot{border-top:1px solid var(--pp-border);padding-top:24px;color:#999;font-size:11px;margin-top:43px}.notfound{text-align:center;margin:15vh auto}.notfound h1{font-size:70px;color:var(--pp-accent)}
@media(max-width:1120px){.sidebar{width:210px;flex-basis:210px}.asset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.palette-row{grid-template-columns:repeat(4,minmax(0,1fr))}.specialty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:850px){.sidebar{width:77px;flex-basis:77px;padding:19px 9px}.sidebar-brand{justify-content:center;margin:0 0 35px}.sidebar-brand span,.nav-label,.side-link:not(.active){font-size:0}.side-link{font-size:0;justify-content:center;padding:0}.side-symbol{font-size:23px}.sidebar-brand img{width:45px;height:45px}.sidebar-brand span,.sidebar-bottom{display:none}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-layout,.project-detail{grid-template-columns:1fr}.install-shell{gap:30px}.login-visual{padding:35px}}@media(max-width:620px){.app-shell{display:block}.sidebar{height:auto;width:100%;position:sticky;top:0;z-index:10;flex-direction:row;padding:7px 12px;border-right:0;border-bottom:1px solid var(--pp-border);align-items:center}.sidebar-brand{margin:0 12px 0 0}.sidebar-brand img{width:38px;height:38px}.side-links{display:flex;flex-direction:row;gap:3px}.side-link{width:42px;height:40px;min-height:40px}.topbar{height:52px;padding:0 16px}.top-user{font-size:11px}.content{padding:25px 16px 45px}.page-heading{align-items:start;flex-direction:column}.page-heading .btn{width:100%}.metric-grid{gap:8px}.metric{padding:15px}.metric strong{font-size:17px}.metric>span{font-size:10px}.welcome-banner,.portal-hero{padding:25px}.welcome-mark,.hero-orbit{display:none}.welcome-banner h2{font-size:21px}.feature-grid,.asset-grid,.project-grid{grid-template-columns:1fr}.feature-card p{min-height:0}.specialty-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.specialty{padding:12px}.palette-row{grid-template-columns:repeat(3,minmax(0,1fr))}.brand-hero{padding:19px}.brand-hero img{width:90px}.two-col{grid-template-columns:1fr;gap:14px}.install-shell{grid-template-columns:1fr;gap:10px;margin:25px auto}.install-intro{padding:14px 0}.install-intro h1{font-size:34px}.install-points{margin:22px 0}.login-grid{display:flex;flex-direction:column}.login-visual{min-height:290px;padding:27px}.login-story{padding:0}.login-story h1{font-size:32px}.login-story p{display:none}.login-brand img{height:56px;width:250px}.subtle-line{margin:13px 0}.login-form-panel{padding:45px 20px}.mini-brand{margin-bottom:26px}.login-box h2{font-size:29px}}

/* Use each customizable logo in its intended place. */
.sidebar-brand{margin-bottom:35px;gap:0}.sidebar-icon-logo{display:none!important}.sidebar-brand span{display:block;width:100%;font-size:0}.sidebar-wordmark{width:100%;height:48px;object-fit:contain;object-position:left center;border:0!important;background:transparent!important;border-radius:0!important;max-width:195px}.sidebar-brand span small{font-size:9px;letter-spacing:.13em;margin-top:0}@media(max-width:850px){.sidebar-icon-logo{display:block!important}.sidebar-brand span{display:none}.sidebar-brand{margin:0 0 35px}}@media(max-width:620px){.sidebar-brand{margin:0 12px 0 0}}


/* Photo Prompt v0.1.1 — DUAS EXPERIÊNCIAS PWA, UMA MARCA CANÔNICA */
/* Admin: claro fixo. Portal: grafite padrão, por usuário com opção claro. */
.area-admin{background:#FFFFFF;color:#252A2C}
.area-admin .app-main{background:#FFFFFF}
.area-admin .sidebar,.area-admin .topbar{background:#FFFFFF}
.area-admin .panel,.area-admin .metric,.area-admin .feature-card{box-shadow:0 5px 24px rgba(37,42,44,.025)}
/* O wordmark não possui mais a antiga estrutura em span */
.sidebar-brand{flex-direction:column;align-items:flex-start;gap:7px;margin:0 5px 35px}
.sidebar-brand .sidebar-wordmark{width:100%;height:44px;max-height:44px;object-fit:contain;object-position:left center;border:0!important;background:transparent!important;border-radius:0!important}
.sidebar-brand>small{font-size:9px;letter-spacing:.16em;font-weight:750;color:#697174;white-space:nowrap}
.top-actions{display:flex;align-items:center;gap:16px;justify-content:flex-end}
.interface-link{color:var(--pp-accent);font-weight:700;font-size:11px;white-space:nowrap}
.theme-toggle{display:flex;gap:3px;border-radius:12px;border:1px solid #9AA1A2;padding:3px;background:rgba(255,255,255,.055)}
.theme-toggle button{border:0;border-radius:9px;padding:7px 12px;background:transparent;color:inherit;font-size:11px;cursor:pointer;white-space:nowrap}
.theme-toggle button.selected{background:#FFFFFF;color:#252A2C;font-weight:700;box-shadow:0 2px 6px rgba(0,0,0,.08)}
/* Portal grafite: elementos e superfícies têm contraste explícito */
.area-portal.theme-dark{--pp-porcelain:#42484B;--pp-white:#4E575B;--pp-ink:#F8F8F6;--pp-slate:#D1D5D4;--pp-border:#697174;background:#42484B;color:#F8F8F6}
.area-portal.theme-dark .app-main,.area-portal.theme-dark .content{background:#42484B;color:#F8F8F6}
.area-portal.theme-dark .sidebar{background:#303639;border-right-color:#505B5E}
.area-portal.theme-dark .sidebar-brand>small,.area-portal.theme-dark .nav-label{color:#BAC2C0}
.area-portal.theme-dark .side-link{color:#D7DEDD}
.area-portal.theme-dark .side-link:hover{background:#485257}
.area-portal.theme-dark .side-link.active{background:#663B3D;color:#FFF}
.area-portal.theme-dark .sidebar-bottom{border-top-color:#586164}
.area-portal.theme-dark .exit-link,.area-portal.theme-dark .version-pill{color:#C8D0CE}
.area-portal.theme-dark .topbar{background:#3B4245;border-bottom-color:#697174}
.area-portal.theme-dark .crumb,.area-portal.theme-dark .top-user{color:#F1F3F2}
.area-portal.theme-dark .crumb span{color:#A9B1B0}
.area-portal.theme-dark .page-heading h1,.area-portal.theme-dark .section-title h2,.area-portal.theme-dark .panel h2,.area-portal.theme-dark .panel h3{color:#FFFFFF}
.area-portal.theme-dark .eyebrow{color:#C0C9C8}
.area-portal.theme-dark .muted,.area-portal.theme-dark .page-heading p,.area-portal.theme-dark .section-title p{color:#D2D8D6}
.area-portal.theme-dark .panel,.area-portal.theme-dark .specialty,.area-portal.theme-dark .project-card,.area-portal.theme-dark .empty-project,.area-portal.theme-dark .feature-card,.area-portal.theme-dark .metric{background:#4D5559;color:#F8F8F6;border-color:#6E777A;box-shadow:0 12px 28px rgba(15,20,21,.11)}
.area-portal.theme-dark .project-cover{background:#343A3D;color:#F8F8F6}
.area-portal.theme-dark .project-desc span,.area-portal.theme-dark .specialty p,.area-portal.theme-dark .empty-project small,.area-portal.theme-dark .info-list span{color:#D8DEDD}
.area-portal.theme-dark .portal-hero{background:linear-gradient(115deg,#30383B,#3D4649);border:1px solid #657073}
.area-portal.theme-dark .field>span{color:#F8F8F6}
.area-portal.theme-dark .field input,.area-portal.theme-dark .field select,.area-portal.theme-dark .field textarea{background:#3B4347;color:#F8F8F6;border-color:#7C878A}
.area-portal.theme-dark .field input::placeholder,.area-portal.theme-dark .field textarea::placeholder{color:#C1CBCA}
.area-portal.theme-dark .dropzone{background:#3B4347;border-color:#889193;color:#E5E9E7}
.area-portal.theme-dark .callout,.area-portal.theme-dark .soft-note{background:#3C4548;color:#E9ECEB;border-color:#697174}
.area-portal.theme-dark .separator{background:#6B7477}
.area-portal.theme-dark .btn-outline{color:#F7FAF9;border-color:#8B9699;background:#434C50}
.area-portal.theme-dark .info-list>div{border-color:#687174}
.area-portal.theme-dark .checked{color:#B6E6C7}
.area-portal.theme-dark .lock-panel{background:#455053}
.area-portal.theme-dark .theme-toggle{border-color:#869092}
.area-portal.theme-light{--pp-porcelain:#F8F8F6;--pp-ink:#252A2C;--pp-slate:#697174;--pp-border:#E3E5E4;color:#252A2C;background:#F8F8F6}
.area-portal.theme-light .sidebar,.area-portal.theme-light .topbar{background:#FFFFFF}
.area-portal.theme-light .theme-toggle{border-color:#D9DEDD;background:#F1F2F1}
.area-portal.theme-light .theme-toggle button.selected{background:#42484B;color:#FFFFFF}
/* Login independente: Portal escuro, Admin claro */
.area-admin-login .login-visual{background:linear-gradient(125deg,#FFFFFF,#F8F8F6);color:#252A2C}
.area-portal-login .login-visual{background:linear-gradient(125deg,#303639,#42484B);color:#FFFFFF;border-right-color:#697174}
.area-portal-login .login-story p,.area-portal-login .login-story>span:last-child{color:#D1D9D6}
.area-portal-login .login-brand img{mix-blend-mode:normal}
.login-switch{display:inline-flex;margin-top:18px;color:#D64B40;font-weight:700;font-size:12px}
/* Separação da identidade visual */
.identity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:24px}
.identity-card{display:flex;flex-direction:column;min-height:225px;gap:9px;transition:transform .18s}
.identity-card:hover{transform:translateY(-3px)}
.identity-card h2{font-size:22px;margin:0}
.identity-card p{font-size:13px;color:#697174;max-width:380px;margin:0;line-height:1.6}
.identity-card strong{font-size:12px;color:#D64B40;margin-top:auto}
.identity-symbol{display:grid;place-items:center;width:45px;height:45px;background:#F8E7E4;border-radius:13px;color:#D64B40;font-size:25px}
.identity-card-dark{background:#42484B;color:#F8F8F6;border-color:#42484B}
.identity-card-dark h2,.identity-card-dark p{color:#FFFFFF}
.identity-card-dark .eyebrow{color:#D1D8D6}
.identity-card-dark .identity-symbol{background:#5B6467}
.identity-card-dark strong{color:#F2B7B2}
.identity-tabs{display:flex;gap:7px;margin-bottom:18px}
.identity-tabs a{display:inline-block;padding:11px 16px;border:1px solid #E3E5E4;border-radius:10px;font-size:12px;font-weight:700;background:white}
.identity-tabs a.active{border-color:#D64B40;color:#C9443A;background:#FFF1F0}
.dark-preview{background:#42484B!important}
.theme-options{display:flex;gap:16px;margin-top:15px;flex-wrap:wrap}
.theme-options label{background:#F6F7F5;border:1px solid #E3E5E4;padding:12px 18px;border-radius:10px;font-weight:700;cursor:pointer}
.theme-options input{accent-color:#D64B40}
/* Gestão granular de usuários */
.permission-summary{display:flex;gap:22px;justify-content:space-between;align-items:center;margin-bottom:22px}
.permission-summary p{margin:5px 0 0;max-width:620px;font-size:12px}
.access-tags{display:flex;flex-direction:column;gap:8px;white-space:nowrap}
.access-tags span{padding:7px 12px;border-radius:9px;background:#F5F5F4;font-size:11px;font-weight:700}
.users-layout{grid-template-columns:minmax(280px,.85fr) minmax(360px,1.35fr)}
.user-manager{min-width:0}
.permissions-box{border:1px solid #E3E5E4;padding:15px;border-radius:12px;display:grid;gap:14px}
.permissions-box>b{font-size:13px}
.access-check{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.access-check span{display:grid;gap:2px}
.access-check strong{font-size:13px}
.access-check small{color:#697174;font-size:11px}
.access-check input,.user-access-flags input{accent-color:#D64B40}
.user-access-card{border:1px solid #E3E5E4;border-radius:13px;padding:15px;margin-top:14px;background:#FCFCFB}
.user-access-top{display:flex;gap:11px;align-items:center}
.user-access-top>div{display:flex;flex-direction:column;min-width:0;flex:1}
.user-access-top b{font-size:13px}
.user-access-top small{color:#697174;font-size:11px;overflow-wrap:anywhere}
.user-access-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.user-access-fields .field input{width:100%;min-width:0}
.user-access-flags{display:flex;flex-wrap:wrap;gap:13px}
.user-access-flags label{font-size:12px;display:flex;gap:5px;align-items:center;cursor:pointer}
.user-access-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:16px}
.user-access-foot .btn{min-height:36px;padding:7px 12px;font-size:11px}
@media(max-width:970px){.identity-grid,.users-layout{grid-template-columns:1fr}.top-actions{gap:9px}.top-user{font-size:0}.top-user .avatar{font-size:12px}}
@media(max-width:600px){.theme-toggle button{font-size:10px;padding:6px 8px}.interface-link{font-size:10px}.topbar{padding:0 10px}.user-access-fields{grid-template-columns:1fr}.permission-summary{flex-direction:column;align-items:flex-start}.access-tags{flex-direction:row;flex-wrap:wrap}}
