/* ONE TSUDOM palette, matched to the existing onetsudom login page. */
:root{--purple:#7e22ce;--ink:#272139;--muted:#736b80;--line:#ece5f0;--light:#f8f6fb;--one-red:#be123c;--one-gradient:linear-gradient(115deg,#6b21a8,#9333b5 55%,#be123c)}
body{background:#faf9fc;color:var(--ink)}
.header{position:relative;background:#fffffff5;border-bottom:1px solid #ece5f0;box-shadow:0 2px 18px #581c8705}
.header:before{content:'';display:block;height:4px;background:var(--one-gradient)}
.header-inner{height:88px}.brand-icon{background:var(--one-gradient);box-shadow:0 5px 14px #7e22ce24;border-radius:14px}.brand-icon span{color:#ffcdd9}
.brand strong{background:var(--one-gradient);background-clip:text;-webkit-background-clip:text;color:transparent;font-size:27px}.brand small{color:#756b80}.brand-dot{color:var(--one-red)}
.header nav .active{border-color:#a52a87;color:#7e22ce}.header nav a:hover{color:#be123c}
.hero{position:relative;background:radial-gradient(ellipse at 10% 0%,#e9d5ffb3,transparent 58%),radial-gradient(ellipse at 95% 85%,#ffe4e6,transparent 60%),#faf7fd;border-bottom:1px solid #eee4f2}
.hero-inner{min-height:410px}.hero-copy{padding:54px 0}.hero .eyebrow{color:#7e22ce;letter-spacing:2.3px}.tiny-line{background:var(--one-gradient);width:30px;height:3px}
.hero h1{font-size:48px;line-height:1.45;font-weight:700;color:#352043;letter-spacing:-1px}.hero h1 span{background:var(--one-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero p{color:#766b80;line-height:2}.hero-link{padding:10px 12px 10px 20px;border-radius:28px;background:white;border:1px solid #e8d8ee;color:#7521a8;box-shadow:0 4px 12px #6b21a808;gap:24px}.hero-link span{background:var(--one-gradient);color:white;border:0}
.orbit{border-color:#cda3e54d;background:#ffffff10}.orbit-two{border-color:#d98fac40}.art-letter{background:var(--one-gradient);background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(0 10px 10px #81249216)}.art-letter span{color:#be123c}.art-label{color:#9a79a9}.art-caption{background:#fff9;border-color:#be123c;border-radius:0 12px 12px 0;color:#956786}.art-caption strong{color:#743573}.spark{color:#c33368}
.stats{background:white;border:1px solid var(--line);border-radius:16px;padding:24px 28px;margin-top:24px;box-shadow:0 5px 20px #581c8705}.stats strong{color:#552279}.stats .stat-icon{background:#f5eafa;color:#9333b5;border-radius:12px}.stats>div:nth-child(2) .stat-icon{background:#fff0f3;color:#be123c}.stats>div:nth-child(3) .stat-icon{background:#f8edf5;color:#a12b85}
.section-heading h2{font-weight:700;color:#352443}.section-heading .eyebrow{font-size:10px}.filters{background:white;border-color:#eee5f1;border-radius:16px;padding:24px;box-shadow:0 6px 22px #581c8704}label{color:#574660}input,select{background:#faf9fc;border-color:#e8e0ec;border-radius:9px;height:48px}input:focus,select:focus{background:white;border-color:#b774dc}.button{background:var(--one-gradient);height:48px;border-radius:9px;box-shadow:0 4px 12px #7e22ce20}.button:hover{background:linear-gradient(115deg,#581c87,#a91036);box-shadow:0 6px 18px #7e22ce25}
.person-card{border-radius:16px;border-color:#ece5f0;box-shadow:0 4px 12px #49256004}.person-card:hover{border-color:#d6b4e9;box-shadow:0 16px 34px #581c8712}.portrait{background:#f3eef6}.portrait-arrow{color:#7e22ce;background:#fffc}.person-info{padding:20px 20px 0}.person-info h3{color:#392743}.person-role{background:#f5eafa;color:#7e22ce;border-radius:6px}.person-group>span:first-child{color:#b54b84}.view-profile{color:#8c279f;border-color:#f0e9f3;padding:14px 0}.person-card:hover .view-profile{color:#be123c}.pagination a{background:#fff;border-radius:9px}.pagination .current{background:var(--one-gradient);border-color:transparent}
.back{color:#87319e;background:#fff;border:1px solid #eadff0;border-radius:24px;padding:7px 16px;font-size:12px;margin-bottom:22px}.back:hover{border-color:#c898dd}
.profile-layout{border-color:#ead8ed;background:radial-gradient(ellipse at 0 0,#efddfb,transparent 65%),radial-gradient(ellipse at 100% 100%,#fbe0e8,transparent 60%),#faf6fc;box-shadow:0 16px 44px #581c8709;border-radius:24px;padding-top:30px;overflow:hidden}.profile-layout:before{content:'';position:absolute;left:0;top:0;width:100%;height:5px;background:var(--one-gradient)}
.profile-card{box-shadow:0 12px 28px #581c8712}.profile-summary h1{color:#542170}.profile-summary .eyebrow{color:#ad2c76;letter-spacing:2px}.profile-summary .badge{background:var(--one-gradient);box-shadow:0 3px 10px #7e22ce15}.profile-summary p{color:#89718e}
.profile-overview .detail-panel{border-color:#ffffff;background:#ffffffed;box-shadow:0 6px 20px #581c8704}.profile-overview .detail-panel h2{color:#582275}.profile-overview .detail-panel h2:after{width:50px;background:var(--one-gradient)}.profile-overview dt{color:#9b749e}.profile-overview dd{color:#48364f}.profile-overview .education small{background:#f8eaf6;color:#a02579}.profile-overview .education-dot{background:#a92a87;box-shadow:0 0 0 4px #fbedf6}.profile-overview .education h3{color:#562c65}.profile-overview .education p{color:#88728f}
.portfolio-heading h2{color:#522267;font-weight:700;position:relative;padding-left:15px}.portfolio-heading h2:before{content:'';position:absolute;left:0;top:5px;bottom:5px;width:4px;border-radius:4px;background:var(--one-gradient)}.portfolio-heading .badge{color:#a32271;background:#f9eaf2;border-radius:20px;padding:5px 13px}
.work-item{border-color:#ece1ef;border-radius:13px;box-shadow:0 5px 15px #581c8704}.work-item:hover{border-color:#dab5e4;box-shadow:0 12px 28px #581c8710}.work-cover{background:linear-gradient(145deg,#f1e7f8,#faf6fc 55%,#f9e8ee)}.cover-category{border-color:#ecdeef;color:#93439c}.cover-open{background:var(--one-gradient)}.cover-placeholder{color:#b195ba}.work-meta{color:#a03490}.work-body h3{color:#482856}.work-body p{color:#83708c}.work-body .document-link{color:#91289f;background:#faf4fc;border-color:#ecdbf2}.work-body .document-link:hover{color:white;background:var(--one-gradient)}.portfolio-section>.muted{background:#ffffffa6;border-color:#e7d7eb;color:#9a839f}
.pdf-modal{border-radius:18px;box-shadow:0 24px 100px #38134866}.pdf-modal::backdrop{background:#321244b3}.pdf-toolbar{border-top:4px solid #9d2b98}.pdf-toolbar h2{color:#54256a}.pdf-close{background:#f8eaf5;color:#a12479;border-color:#ecd4e7}.pdf-help{background:#fdf8fc}
footer{background:linear-gradient(120deg,#f1eaf7,#faf4f7);border-color:#e9deee}.footer-brand{background:var(--one-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}.footer-brand span{color:#be123c}footer strong{color:#663b76}.footer-bottom{border-color:#e7daed;color:#8e7699}.footer-top{color:#9c297f}
@media(max-width:1050px){.hero h1{font-size:42px}.stats{gap:22px;padding:22px}.hero-inner{min-height:380px}}
@media(max-width:720px){.header-inner{height:76px}.brand strong{font-size:23px}.hero-inner{min-height:0}.hero-copy{padding:36px 0}.hero h1{font-size:36px}.hero p{font-size:12px}.stats{padding:17px 13px;margin-top:16px;border-radius:13px;gap:7px}.stats strong{font-size:22px}.stats .stat-icon{width:28px;height:28px;border-radius:8px}.stats>div{gap:4px 7px}.filters{padding:17px}.person-info{padding:14px 12px 0}.person-info h3{font-size:14px}.profile-layout{padding-top:24px}.portfolio-heading h2{padding-left:12px;font-size:18px}.portfolio-heading .badge{font-size:10px;padding:4px 9px}}
@media(prefers-reduced-motion:reduce){.button:hover,.person-card:hover{transform:none}}
