.dev-board { color:#1d2736; }
.dev-hero,.dev-profile-hero,.dev-form-card,.dev-panel { background:#fff; border:1px solid #dbe4ef; border-radius:16px; box-shadow:0 10px 26px rgba(31,45,70,.05); }
.dev-hero { padding:34px 36px; margin-bottom:18px; background:linear-gradient(135deg,#f8fbff 0%,#eef6ff 100%); }
.dev-hero--compact { margin-bottom:22px; }
.dev-eyebrow { display:block; margin-bottom:8px; color:#2563eb; font-size:12px; font-weight:900; letter-spacing:.14em; }
.dev-hero h2,.dev-profile-hero h2 { margin:0 0 10px; font-size:30px; line-height:1.25; }
.dev-hero p,.dev-profile-hero p { margin:0; color:#536277; line-height:1.7; }
.dev-hero__actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:22px; }
.dev-btn { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:0 16px; border-radius:10px; font-weight:800; text-decoration:none; border:1px solid transparent; cursor:pointer; }
.dev-btn--primary { background:#2563eb; color:#fff !important; }
.dev-btn--ghost { background:#fff; color:#315075 !important; border-color:#d4dfeb; }
.dev-toolbar { display:flex; justify-content:flex-end; gap:8px; margin:0 0 14px; }
.dev-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.dev-card { position:relative; background:#fff; border:1px solid #dbe4ef; border-radius:16px; overflow:hidden; transition:.18s ease; }
.dev-card:hover { transform:translateY(-2px); box-shadow:0 16px 34px rgba(31,45,70,.08); }
.dev-card__link { display:block; padding:18px; color:inherit; text-decoration:none; }
.dev-card__check { position:absolute; top:12px; right:12px; z-index:1; }
.dev-card__top { display:grid; grid-template-columns:50px minmax(0,1fr); gap:12px; align-items:center; margin-bottom:12px; }
.dev-card__title { min-width:0; flex:1; }
.dev-card__heading { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:4px; }
.dev-avatar img { width:50px; height:50px; border-radius:50%; object-fit:cover; background:#eef2f7; }
.dev-avatar--large img { width:86px; height:86px; }
.dev-card h3 { margin:0; color:#162132; font-size:18px; line-height:1.3; font-weight:800; }
.dev-card p { margin:0; color:#64748b; }
.dev-card__grade { display:inline-flex; align-items:center; min-height:24px; padding:0 9px; border-radius:999px; background:#eff6ff; color:#2257af; font-size:11px; font-weight:900; }
.dev-card__subline { margin:0; color:#7a879b !important; font-size:12px; line-height:1.45; }
.dev-card__subline .naru-badge, .dev-card__subline .dev-badge, .dev-card__subline .badge { font-size:11px; }
.dev-card__subline span { font-weight:700; }
.dev-card__intro { margin:0 0 12px !important; color:#445063 !important; font-size:13px; line-height:1.55; }
.dev-tags { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }
.dev-tags span { display:inline-flex; align-items:center; min-height:21px; padding:0 8px; border-radius:999px; background:#eef5ff; color:#275dba; font-size:10px; font-weight:700; line-height:1.2; }
.dev-tags--fixed { min-height:47px; align-content:flex-start; overflow:hidden; }
.dev-tags__more { background:#f1f5f9 !important; color:#607086 !important; letter-spacing:.08em; }
.dev-tags--large span { min-height:34px; padding:0 13px; font-size:13px; }
.dev-card__meta { display:flex; flex-direction:column; align-items:flex-start; gap:8px; margin-top:14px; }
.dev-card__meta > span { padding:6px 9px; border-radius:8px; background:#f4f7fb; color:#52627a; font-size:11px; font-weight:700; }
.dev-card__stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; border:1px solid #e3ebf5; border-radius:10px; overflow:hidden; background:#f8fbff; }
.dev-card__stat { display:flex; flex-direction:column; gap:2px; padding:8px 10px; background:transparent; }
.dev-card__stat + .dev-card__stat { border-left:1px solid #e3ebf5; }
.dev-card__stat b { color:#7a879b; font-size:10px; font-weight:700; line-height:1.2; }
.dev-card__stat strong { color:#24364d; font-size:13px; font-weight:800; line-height:1.3; }
.dev-empty { grid-column:1/-1; padding:54px 20px; text-align:center; background:#fff; border:1px dashed #cbd5e1; border-radius:16px; color:#64748b; }
.dev-form-card { padding:24px; margin-bottom:16px; }
.dev-form-card h3,.dev-panel h3 { margin:0 0 18px; font-size:20px; }
.dev-field { margin-bottom:16px; }
.dev-field:last-child { margin-bottom:0; }
.dev-field label { display:block; margin-bottom:8px; font-weight:800; }
.dev-field strong { color:#2563eb; }
.dev-field input[type=text],.dev-field textarea,.dev-field input[type=url] { width:100%; border:1px solid #cfd8e3; border-radius:10px; background:#fff; box-sizing:border-box; }
.dev-field input[type=text],.dev-field input[type=url] { min-height:44px; padding:0 13px; }
.dev-field textarea { min-height:170px; padding:13px; line-height:1.65; resize:vertical; }
.dev-help { margin:8px 0 0; color:#65758b; font-size:13px; line-height:1.6; }
.dev-check-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.dev-check-grid label { display:flex; align-items:center; gap:8px; min-height:44px; padding:0 13px; border:1px solid #dbe4ef; border-radius:10px; font-weight:700; }
.dev-two-col { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.dev-submit-row { display:flex; justify-content:flex-end; gap:8px; margin:20px 0 0; }
.dev-profile-hero { display:flex; align-items:center; gap:22px; padding:28px; margin-bottom:18px; }
.dev-profile-hero--table { display:block; }
.dev-profile-hero__top { display:grid; grid-template-columns:86px minmax(0,1fr) auto; gap:22px; align-items:center; margin-bottom:22px; }
.dev-profile-hero__main { flex:1; min-width:0; }
.dev-profile-hero__headline { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:10px; }
.dev-card__grade--view { min-height:28px; padding:0 12px; font-size:12px; }
.dev-profile-hero__intro { color:#4f6078 !important; font-size:16px; line-height:1.7; }
.dev-profile-hero__actions { display:flex; gap:8px; align-self:start; }
.dev-info-table { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border:1px solid #dbe4ef; border-radius:14px; overflow:hidden; background:#fff; }
.dev-info-table__row { display:grid; grid-template-columns:140px minmax(0,1fr); align-items:stretch; border-top:1px solid #edf2f7; }
.dev-info-table__row:nth-child(2) { border-top:0; }
.dev-info-table__row:nth-child(1) { border-top:0; }
.dev-info-table__row strong { display:flex; align-items:center; padding:14px 16px; background:#f8fbff; color:#49627f; font-size:13px; font-weight:800; border-right:1px solid #edf2f7; }
.dev-info-table__row div { display:flex; align-items:center; padding:14px 16px; min-width:0; }
.dev-info-table__row span, .dev-info-table__row a { color:#24364d; font-size:14px; line-height:1.6; word-break:break-word; text-decoration:none; }
.dev-info-table__row a:hover { color:#2563eb; }
.dev-panel { padding:26px; margin-bottom:16px; }
.dev-content { color:#273241; line-height:1.8; }
.dev-work-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:16px; }
.dev-work-head h3 { margin-bottom:0; }
.dev-work-head p { margin:0; color:#66768c; font-size:13px; line-height:1.6; }
.dev-activity-tabs { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
.dev-activity-tab { min-height:36px; padding:0 14px; border:1px solid #d7e1ec; border-radius:999px; background:#fff; color:#48627f; font-weight:800; cursor:pointer; }
.dev-activity-tab.is-active { background:#2563eb; border-color:#2563eb; color:#fff; }
.dev-activity-pane { display:none; }
.dev-activity-pane.is-active { display:block; }
.dev-activity-list-table { border:1px solid #dbe4ef; border-radius:14px; overflow:hidden; background:#fff; }
.dev-activity-list-table.is-sample { background:linear-gradient(180deg,#fafcff 0%,#f4f8ff 100%); }
.dev-activity-row { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,2.4fr) 140px; gap:16px; align-items:center; padding:14px 16px; border-top:1px solid #edf2f7; color:inherit; text-decoration:none; }
.dev-activity-row:first-child { border-top:0; }
.dev-activity-row:hover { background:#f8fbff; }
.dev-activity-row strong { color:#24364d; font-size:14px; line-height:1.5; font-weight:800; }
.dev-activity-row span { color:#607086; font-size:13px; line-height:1.6; }
.dev-activity-row em { color:#7a889b; font-size:12px; font-style:normal; text-align:right; white-space:nowrap; }
.dev-activity-row.is-sample em { color:#2563eb; font-weight:800; }
.dev-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.dev-link-card { display:flex; flex-direction:column; gap:6px; padding:16px 18px; border:1px solid #dbe4ef; border-radius:14px; background:linear-gradient(180deg,#f9fbff 0%,#f2f7ff 100%); color:#1f3f75; text-decoration:none; transition:.18s ease; }
.dev-link-card:hover { transform:translateY(-1px); box-shadow:0 12px 24px rgba(31,45,70,.08); border-color:#bfd3f2; }
.dev-link-card strong { color:#2563eb; font-size:14px; font-weight:900; }
.dev-link-card span { color:#5d6d84; font-size:13px; line-height:1.5; word-break:break-all; }
.dev-view-actions { display:flex; justify-content:flex-end; gap:8px; margin:18px 0; }
.bo_sch_wrap { display:none; }
@media (max-width: 980px) { .dev-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .dev-check-grid,.dev-two-col,.dev-info-table { grid-template-columns:1fr 1fr; } .dev-profile-hero__top { grid-template-columns:86px minmax(0,1fr); } .dev-profile-hero__actions { grid-column:1 / -1; justify-content:flex-end; } }
@media (max-width: 640px) { .dev-hero,.dev-form-card,.dev-panel,.dev-profile-hero { padding:20px; } .dev-card-grid,.dev-check-grid,.dev-two-col,.dev-links,.dev-info-table { grid-template-columns:1fr; } .dev-profile-hero__top { grid-template-columns:1fr; gap:16px; } .dev-profile-hero__actions { justify-content:flex-start; } .dev-info-table__row { grid-template-columns:1fr; } .dev-info-table__row strong { border-right:0; border-bottom:1px solid #edf2f7; padding-bottom:10px; } .dev-info-table__row div { padding-top:10px; } .dev-hero__actions { align-items:flex-start; flex-direction:column; } .dev-work-head { align-items:flex-start; flex-direction:column; } .dev-activity-row { grid-template-columns:1fr; gap:6px; } .dev-activity-row em { text-align:left; } }
