[data-role]{--role-accent:#176d65;--role-light:#e7f3ee;--role-dark:#143f39}[data-role=operator]{--role-accent:#285c96;--role-light:#eaf1fa;--role-dark:#183b66}[data-role=restaurant]{--role-accent:#a34a26;--role-light:#fff0e5;--role-dark:#64321f}[data-role=stay]{--role-accent:#75509b;--role-light:#f1ecf8;--role-dark:#4b3565}[data-role=guide]{--role-accent:#44713b;--role-light:#edf4e6;--role-dark:#2f4d29}[data-role=transport]{--role-accent:#126b87;--role-light:#e6f3f7;--role-dark:#164858}[data-role=localvendor]{--role-accent:#926126;--role-light:#fbf1dd;--role-dark:#65451f}.company-private-notice{display:flex;align-items:flex-start;gap:10px;padding:16px;background:#edf3fa;border-radius:12px;color:#234c70;font-size:.95rem;line-height:1.8}.company-private-notice svg{flex:0 0 18px;margin-top:4px}.company-document-list{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:20px 0}.company-document-link{display:flex;align-items:center;gap:12px;min-height:66px;padding:14px;border-bottom:1px solid var(--line);font-size:.9rem}.company-document-link:last-child{border-bottom:0}.company-document-link>svg{flex-shrink:0;color:#285c96}.company-document-link>span:nth-child(2){overflow-wrap:anywhere;min-width:0;flex:1}.company-document-link small{display:block;font-size:.8rem;color:var(--muted);margin-top:4px}.company-document-link>span:last-child{font-size:.8rem;color:#285c96}.company-private-documents>p{font-size:.95rem;line-height:1.8}.role-picker{border:0;padding:0;margin:0 0 28px;min-width:0}.role-picker legend{font-size:1.05rem;font-weight:700;margin-bottom:8px}.role-picker>p{font-size:.9rem;line-height:1.7;color:var(--muted);margin:0 0 16px}.role-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.role-choice{position:relative;display:flex;align-items:center;gap:12px;min-height:78px;padding:15px 34px 15px 14px;border:1px solid #d9e2df;border-radius:14px;background:white;cursor:pointer;line-height:1.5;font-size:.9rem}.role-choice>svg{color:var(--role-accent);flex-shrink:0}.role-choice input{position:absolute;right:12px;top:12px;width:15px;height:15px;accent-color:var(--role-accent);margin:0}.role-choice.is-selected{background:var(--role-light);border-color:var(--role-accent);box-shadow:inset 0 0 0 1px var(--role-accent);color:var(--role-dark)}.role-choice:focus-within{outline:3px solid #94bfb9;outline-offset:3px}.role-choice span{font-weight:600;overflow-wrap:anywhere}.role-welcome{align-self:start;position:sticky;top:100px;background:var(--role-light);border-radius:24px;padding:38px;color:var(--role-dark)}.role-emblem{display:grid;place-items:center;width:74px;height:74px;border-radius:20px;background:#fff9;color:var(--role-accent);margin-bottom:30px}.role-welcome h2{font-size:clamp(1.7rem,3vw,2.65rem);line-height:1.35;letter-spacing:-.035em;margin:14px 0 20px}.role-welcome>p:not(.eyebrow){line-height:1.85}.role-welcome ul{list-style:none;margin:28px 0;padding:0}.role-welcome li{padding:14px 0;border-bottom:1px solid #00000012;line-height:1.7}.role-welcome-note{display:block;font-size:.85rem;line-height:1.7;margin-top:26px;opacity:.8}.account-identity,.public-role-profile{position:relative;padding:34px;border:1px solid #dce5e1;border-top:5px solid var(--role-accent);border-radius:22px;background:linear-gradient(115deg,var(--role-light),#fff 85%);margin:0 0 32px;overflow:hidden}.identity-main{display:flex;align-items:center;gap:22px}.identity-avatar{display:flex;align-items:center;justify-content:center;width:96px;height:96px;flex:0 0 96px;border:3px solid white;border-radius:24px;background:white;color:var(--role-accent);font-size:2.4rem;font-weight:700;overflow:hidden;box-shadow:0 5px 20px #183e3810}.identity-avatar img{width:100%;height:100%;object-fit:cover}.company-avatar img{object-fit:contain;padding:8px}.identity-role{display:flex;align-items:center;gap:7px;font-size:.85rem;font-weight:700;color:var(--role-accent);margin:0 0 7px}.account-identity h1,.public-role-profile h1{font-size:clamp(1.65rem,3vw,2.6rem);line-height:1.35;overflow-wrap:anywhere;margin:0 0 6px}.identity-owner{font-size:.9rem;color:var(--muted);margin:0}.identity-description{max-width:780px;line-height:1.8;margin:22px 0;color:#425c57}.identity-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:5px}.identity-actions .button{background:var(--role-accent);border-color:var(--role-accent);color:white;font-size:.9rem;padding:12px 18px;min-height:44px}.identity-actions .button.outline{background:white;color:var(--role-accent)}.identity-logout,.identity-settings{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:.85rem;min-height:44px;padding:10px;color:var(--role-dark);border:0;background:transparent}.identity-logout{margin-left:auto;cursor:pointer}.identity-status{display:inline-block;border-radius:20px;font-size:.8rem;background:#ffffffbc;padding:5px 10px;margin:10px 0 0;color:var(--role-dark)}.identity-section-label{display:block;border-top:1px solid #00000012;padding-top:16px;font-weight:600;font-size:.9rem;color:var(--role-accent)}.role-workspace[data-role]>.workspace-intro{padding:22px;border-radius:18px;background:var(--role-light);color:var(--role-dark)}.role-workspace[data-role]>.workspace-intro>svg{color:var(--role-accent)}.role-setup-note{padding:16px 20px;background:#f7faf9;border-left:3px solid var(--role-accent);line-height:1.8;margin:20px 0}.role-account-settings{scroll-margin-top:100px}.role-account-settings details>summary{font-size:1.05rem}.company-public-profile{border-top:5px solid var(--role-accent);background:var(--role-light)}@media(max-width:900px){.role-welcome{position:static;padding:28px}.role-welcome h2{font-size:2rem}.identity-logout{margin-left:0}}@media(max-width:540px){.role-choice-grid{grid-template-columns:1fr}.role-choice{min-height:62px}.role-welcome{padding:24px}.account-identity,.public-role-profile{padding:24px 20px;border-radius:18px}.identity-main{align-items:flex-start;gap:14px}.identity-avatar{width:66px;height:66px;flex-basis:66px;border-radius:18px;font-size:1.7rem}.identity-avatar>svg{width:30px}.identity-role{font-size:.75rem}.identity-actions>.button{width:100%;justify-content:center}.identity-logout,.identity-settings{padding:10px 6px}.identity-description{font-size:.95rem}.role-workspace[data-role]>.workspace-intro{padding:18px;gap:12px}}